오늘은 서비스 배포 시 신경써야 할 안드로이드 보안 체크리스트의 마지막 편으로, 앱의 설정과 서명 관리에서 주의해야 할 핵심 포인트 및 보안 체크리스트를 다루겠습니다. 💡
안드로이드 앱 서명 키는 사용자와 앱 간의 신뢰를 보증하는 중요한 역할을 합니다. 하지만 서명 키가 유출되면 악성코드가 포함된 앱이 배포될 수 있는 치명적인 보안 문제가 발생합니다.
# 예시: .gitignore 파일에 서명 키 포함 방지
*.keystore
*.jks
보안 취약점의 심각성을 더 잘 이해하기 위해 실제 사례를 살펴봅시다.
한 교통 정보 앱의 서명 키가 유출되어, 동일한 이름을 가진 악성 앱이 Google Play 외부 경로를 통해 배포되었습니다. 피해자가 기존 앱을 믿고 업데이트하자, 악성 코드가 포함된 앱으로 대체되었고, 사용자 데이터가 탈취되었습니다.
🔑 교훈: 서명 키의 철저한 관리와 백업 설정 검토는 필수입니다. 특히 공용 저장소에 서명 키를 절대 업로드하지 마세요.
안드로이드 앱이 네트워크 통신을 수행할 때, 암호화되지 않은 데이터는 중간자 공격(Man-in-the-Middle)에 취약할 수 있습니다. 데이터를 안전하게 보호하려면 HTTPS와 네트워크 보안 구성(Network Security Configuration)을 활용하세요.
네트워크 보안 구성 추가:
네트워크 트래픽의 암호화를 보장하려면 AndroidManifest.xml에 아래 설정을 추가하세요:
<application
android:networkSecurityConfig="@xml/network_security_config">
</application>
network_security_config.xml 파일 작성:
<network-security-config>
<domain-config cleartextTrafficPermitted="false">
<domain includeSubdomains="true">example.com</domain>
</domain-config>
</network-security-config>
앱 내부에 민감한 데이터를 저장할 때, 단순히 파일에 저장하거나 SharedPreferences
를 사용하면 쉽게 유출될 가능성이 있습니다. 모든 데이터를 암호화하여 저장하고, 안전하게 키를 관리하세요.
=
EncryptedSharedPreferences 사용:
민감 데이터를 저장할 때는 기본 SharedPreferences 대신 암호화된 버전을 사용하세요.
SharedPreferences prefs = EncryptedSharedPreferences.create(
"secure_prefs",
MasterKeys.getOrCreate(MasterKeys.AES256_GCM_SPEC),
context,
EncryptedSharedPreferences.PrefKeyEncryptionScheme.AES256_SIV,
EncryptedSharedPreferences.PrefValueEncryptionScheme.AES256_GCM
);
SQLCipher를 사용한 데이터베이스 암호화:
SQLite 데이터베이스에 저장하는 데이터도 반드시 암호화하세요. 라이브러리를 활용할 수 있습니다.
안드로이드 앱 보안은 파일 저장소나 퍼미션 설정 외에도 다양한 영역에서 추가적인 대비가 필요합니다.
구글에서 제공하는 을 정기적으로 확인하고, 앱에 반영하세요.
안드로이드 앱 개발에서 보안은 선택이 아닌 필수입니다. 앱 배포 전, 철저한 보안 점검과 예방 조치를 통해 사용자 신뢰를 얻는 안전한 앱을 출시하세요. 위의 체크리스트를 활용하면 보안 위협을 효과적으로 줄이고, 안정적인 서비스를 제공할 수 있습니다. 😊
내부 저장소는 앱 전용 공간으로, 다른 앱이 접근할 수 없습니다. 반면, 외부 저장소는 사용자가 직접 접근하거나, 다른 앱에서도 접근할 수 있어 보안에 취약합니다.
퍼미션을 과도하게 요청하면 앱 리뷰 과정에서 거절당할 수 있으며, 사용자가 앱에 불신을 느낄 수 있습니다. 또한, 불필요한 권한이 보안 위협으로 작용할 수 있습니다.
네, HTTPS는 데이터를 암호화하여 중간자 공격을 방지합니다. 특히 민감한 정보를 처리하는 앱에서는 필수입니다.
상담만 받아보셔도 좋습니다 긱다이브의 상담으로 업체 비교를 시작해보세요