OWASP(Open Web Application Security Project)는 전 세계적으로 가장 신뢰받는 애플리케이션 보안 가이드라인을 제공하는 프로젝트입니다. OWASP에서 공개한 Top 10 2025는 현재 정식 발표 전 단계인 ‘릴리스 후보 버전(Release Candidate, RC)’으로 차기 웹 애플리케이션 보안 위협의 방향성을 미리 보여주는 지표라 할 수 있습니다. 반면 OWASP Mobile Top 10 2024는 정식 확정(Final Release)된 모바일 보안 위협 목록으로 모바일 환경에 특화된 실제 공격 시나리오와 리스크 관련 정보를 제공합니다.
웹과 모바일의 경계가 점점 흐려지는 현재, 모바일 앱 역시 더 이상 단순한 클라이언트가 아닙니다. 복잡한 API 구조, 다수의 서드파티 SDK, 클라우드 및 백엔드 시스템과 긴밀하게 연결된 하나의 서비스 생태계로 진화하고 있습니다. 이로 인해 웹과 모바일 보안 위협은 서로 영향을 주고받는 구조로 변화하고 있습니다.
이번 포스팅에서는 OWASP Top 10 2025 릴리스 후보(RC)와 OWASP Mobile Top 10 2024(정식 버전)를 비교 분석하고 모바일 앱 개발자가 실무에서 반드시 고려해야 할 보안 전략을 정리합니다. 특히 공급망 보안, 설정 관리, 클라이언트 사이드 보호 등 실제 서비스 운영 환경에 바로 적용할 수 있는 인사이트를 중심으로 살펴봅니다.
OWASP Top 10 2025 RC: 무엇이 달라졌나?
OWASP Top 10 2025는 현재 릴리스 후보(RC) 단계의 목록으로 최신 공격 트렌드와 커뮤니티 피드백을 반영해 최종 확정을 앞두고 있습니다. 2021년 정식 버전과 비교했을 때 보안 위협의 무게중심이 개별 취약점에서 운영, 구성, 공급망 전반의 구조적 문제로 이동한 점이 가장 큰 변화입니다.
주요 순위 변동 새롭게 부각된 위협
A02:2025 – Security Misconfiguration (2021년 #5 → 2025년 #2)
클라우드, 컨테이너, IaC 환경 확산으로 설정 오류가 보안 사고로 직결되는 사례 증가
A03:2025 – Software Supply Chain Failures
서드파티 라이브러리, 빌드 파이프라인, 의존성 관리 취약점이 주요 공격 지점으로 부상
지속적으로 상위에 있는 위협
A01:2025 – Broken Access Control (1위 유지)
접근 제어 실패는 여전히 가장 빈번하게 발견되는 핵심 취약점으로 분류됨
A07:2025 – Authentication Failures (7위 유지, 명칭 변경)
인증 및 세션 관리 문제는 개선 시도가 있었으나 여전히 중요한 리스크로 유지
OWASP Top 10 2025 RC 리스트
| 순위 | 위협 | 주요 특징 |
| A01 | Broken Access Control | 권한 검증 실패, 가장 빈번한 취약점 |
| A02 | Security Misconfiguration | 클라우드/컨테이너 설정 오류 급증 |
| A03 | Software Supply Chain Failures | 서드파티 라이브러리, 빌드 시스템 침해 |
| A04 | Cryptographic Failures | 민감 데이터 노출, 암호화 오류 |
| A05 | Injection | SQL, NoSQL, OS 명령어 인젝션 |
| A06 | Insecure Design | 설계 단계의 보안 결함 |
| A07 | Authentication Failures | 인증 및 세션 관리 취약점 |
| A08 | Software or Data Integrity Failures | 무결성 검증 실패 |
| A09 | Security Logging & Alerting Failures | 로깅 및 모니터링 부재 |
| A10 | Mishandling of Exceptional Condition | 오류 처리 미흡 |
OWASP Mobile Top 10 2024: 모바일 환경에서의 위협
모바일 환경은 웹과는 다른 고유한 위협 벡터를 가지고 있습니다. OWASP Mobile Top 10 2024는 이러한 모바일 특화 위협을 다룹니다.
Mobile Top 10 2024 리스트
| 순위 | 위협 | 주요 특징 |
| M01 | Improper Credential Usage | 하드코딩된 API 키, 불안전한 키 저장 |
| M02 | Inadequate Supply Chain Security | 악성 SDK, 라이브러리 의존성 위험 |
| M03 | Insecure Authentication/Authorization | 생체인증 우회, 취약한 세션 관리, 권한 검증 로류 |
| M04 | Insufficient Input/Output Validation | 입력값 및 출력값 검증 미흡으로 인한 공격 |
| M05 | Insecure Communication | 중간자 공격, 인증서 검증 실패 |
| M06 | Inadequate Privacy Controls | 과도한 권한 요청, 개인정보 유출 |
| M07 | Insufficient Binary Protections | 리버스 엔지니어링, 앱 변조 |
| M08 | Security Misconfiguration | 디버그 모드 노출, 불안전한 설정 |
| M09 | Insecure Data Storage | 민감 데이터 평문 저장 |
| M10 | Insufficient Cryptography | 취약한 암호화 알고리즘 사용 |
모바일 환경의 특수성
모바일 앱은 다음과 같은 이유로 웹과 다른 보안 접근이 필요합니다.
- 클라이언트 주도권 상실: 앱 파일이 다운로드되어 실행 환경의 통제권이 공격자에게 넘어가면 앱은 완전히 조작이 가능한 상태
- 리버스 엔지니어링 용이: APK/IPA 파일 디컴파일로 소스 코드 및 로직 노출
- 로컬 데이터 저장: 디바이스에 저장된 민감 정보가 직접적인 공격 대상
- 다양한 OS 버전: 파편화된 환경으로 일관된 보안 적용 어려움
- 앱 스토어 우회: 리패키징된 악성 앱 유통 가능
웹과 모바일 공통 위협 분석
OWASP Top 10 2025 RC와 Mobile Top 10 2024를 비교하면 흥미로운 패턴이 드러납니다. 많은 위협이 웹과 모바일 양쪽에 존재하지만, 공격 벡터와 대응 방법은 다릅니다.
공통 위협 사항
1. 공급망 보안 (Supply Chain Security)
- Web A03: 서드파티 라이브러리, npm 패키지, 빌드 파이프라인 침해
- Mobile M2: 악성 SDK, 광고 라이브러리, 분석 도구의 백도어
- 공통점: 의존성 관리의 복잡성, 신뢰할 수 있는 소스 확인의 중요성
- 차이점: 모바일은 앱 바이너리에 포함된 SDK의 신뢰성과 업데이트 관리가 핵심이며, 웹은 CDN·외부 스크립트 등 런타임 의존성 관리가 중요
- 대응 전략
- SBOM(Software Bill of Materials) 관리
- 의존성 스캐닝 자동화
- 프라이빗 레지스트리 활용
- 서드파티 SDK 정기 감사
2. 인증 실패 (Authentication Failures)
- Web A07: 세션 관리, 비밀번호 정책, 다중 인증
- Mobile M3: 생생체 인증 우회, 취약한 세션 관리, 권한 검증 로직 오류, 토큰 탈취
- 공통점: 안전한 세션 관리, 강력한 인증 메커니즘 필요
- 차이점: 모바일은 디바이스 무결성 검증, 로컬 인증 저장소 보호 추가
- 대응 전략
- OAuth 2.0, OpenID Connect 표준 적용
- 생체 인증 + PIN 조합
- 디바이스 바인딩 (Device Fingerprinting)
- 루팅/탈옥 탐지
3. 암호화 실패 (Cryptographic Failures)
- Web A04: TLS 설정 오류, 취약한 해시 알고리즘
- Mobile M10: 로컬 데이터 암호화, 키 저장소 관리
- 공통점: 최신 암호화 표준 적용
- 차이점: 모바일은 Android Keystore, iOS Keychain 활용 필수
- 대응 전략
- AES-256 이상 사용
- TLS 1.3 적용
- 안전한 키 관리 시스템 (KMS)
- 모바일 환경에서는 OS에서 제공하는 보안 저장소를 활용
4. 설정 오류 (Security Misconfiguration)
- Web A02: 클라우드 설정, 컨테이너 보안, 기본 설정 노출
- Mobile M8: 디버그 모드, 로깅, 백업 허용 설정
- 공통점: 프로덕션 환경의 불필요한 기능 노출
- 차이점: 모바일은 AndroidManifest.xml, Info.plist 설정 관리
- 대응 전략
- IaC 템플릿 보안 검증
- 프로덕션 빌드 자동화
- 설정 하드닝 가이드라인
- 정기 설정 감사
모바일에서 위협이 되는 항목
M7: Insufficient Binary Protections
- 리버스 엔지니어링 방지
- 앱 변조 및 리패키징 탐지
- 디버깅 방지
- 대응
- 코드 난독화, 앱 쉴딩, 무결성 검증, 안티 디버깅
모바일 개발자가 주목해야 할 5가지 보안 전략
OWASP 보고서를 바탕으로 모바일 앱 개발자가 우선적으로 적용해야 할 보안 전략은 아래와 같습니다.
1. SDK 보안 강화: Supply Chain 위협 대응
평균적인 모바일 앱은 20개 이상의 서드파티 SDK를 포함합니다. 이 중 하나라도 침해되면 전체 앱이 위험에 노출됩니다.
대응 방안
- SDK 도입 전 보안 감사 프로세스 수립
- 주요 SDK의 권한 및 네트워크 활동 모니터링
- SBOM 자동 생성 및 관리
- 정기적인 의존성 업데이트 및 취약점 스캔
💡 Tip: 도브러너를 포함한 앱 쉴딩 솔루션을 통해 SDK 레벨에서의 비정상 동작을 런타임에 탐지하고 차단할 수 있습니다.
2. 설정 관리 자동화: Misconfiguration 방지
수동 설정은 휴먼 에러를 유발합니다. 디버그 플래그, 로깅 설정, 백업 허용 등이 프로덕션에 그대로 배포되는 경우가 많습니다.
대응 방안
- 빌드 타입별 설정 분리 (Debug/Release/Production)
- CI/CD 파이프라인에 설정 검증 단계 추가
- ProGuard/R8 설정 최적화
- AndroidManifest.xml 자동 검증
3. 클라이언트 사이드 강화: Binary Protection
모바일 앱은 공격자가 완전히 제어 가능한 환경에서 실행됩니다. 리버스 엔지니어링, 메모리 덤프, 런타임 조작이 가능합니다.
대응 방안
- 난독화 (Obfuscation): ProGuard, R8, DexGuard 적용
- 앱 쉴딩 (App Shielding): 런타임 보호 계층 추가
- 무결성 검증: 앱 서명 및 파일 해시 검증
- 안티 디버깅: 디버거 연결 탐지 및 차단
- 루팅/탈옥 탐지: 변조된 환경 감지
심화 대응 전략
- API 통신에 앱 인증서(App Attestation) 적용
- 보안적으로 민감하다고 판단되는 로직은 가능한 범위 내에서 서버 사이드로 분리
- 코드 가상화 및 화이트박스 암호화
4. 암호화 전략 재점검: 키 관리 중심
많은 앱이 하드코딩된 키, SharedPreferences 평문 저장, 취약한 암호화 알고리즘을 사용합니다.
대응 방안
- Android:
- Android Keystore 시스템 활용
- EncryptedSharedPreferences 사용
- 바이오메트릭 인증과 키 연동
- iOS
- Keychain Services 활용
- Data Protection API 적용
- Secure Enclave 활용
공통
- 절대 API 키를 하드코딩하지 말 것
- 서버 기반 키 관리 또는 안전한 토큰 발급 구조 활용
- 키 로테이션 정책 수립
5. 로깅과 모니터링 체계: Security Observability
공격이 발생해도 탐지하지 못하거나, 사후 분석이 불가능한 경우가 많습니다.
대응 방안
- 로깅 전략
- 인증 실패, 권한 위반, 비정상 API 호출 로깅
- 민감 정보(비밀번호, 토큰) 절대 로깅 금지
- 프로덕션에서 디버그 로그 비활성화
- 모니터링 구축
- Crash Report (Firebase Crashlytics, Sentry)
- 보안 이벤트 모니터링
- 비정상 행위 탐지 (루팅, 앱 변조, 과다 API 호출)
- 알림 체계
- 임계값 기반 알림 (실패 시도 5회 이상 등)
- 서버 연계 기반의 보안 이벤트 대시보드 구축
- 인시던트 대응 프로세스 수립
실무 적용 가이드: 단계별 보안 체크리스트
개발 단계별 보안 적용
설계 단계: Secure by Design
- 위협 모델링 수행
- 민감 데이터 흐름 매핑
- 최소 권한 원칙 적용
- 클라이언트/서버 역할 분리
개발 단계: Secure Coding
- OWASP MASVS 요구사항을 기준으로 보안 점검 항목 설계
- 정적 코드 분석 도구(SAST) 실행
- 보안 코딩 가이드라인 준수
- 피어 리뷰에 보안 항목 포함
빌드 단계: 자동화된 보안
- 의존성 취약점 스캔
- 난독화 및 앱 쉴딩 적용
- 설정 파일 검증
- 서명 및 무결성 보장
- 동적 분석(런타임 테스트) 수행
- 모의 해킹 테스트
- 네트워크 트래픽 분석
- 리버스 엔지니어링 시도
배포 단계: 안전한 릴리스
- 앱 스토어 보안 정책 준수
- 프로덕션 환경 설정 재확인
- 롤백 계획 수립
- 모니터링 활성화
운영 단계: 지속적 개선
- 보안 로그 정기 검토
- 취약점 패치 신속 적용
- 사용자 신고 대응 체계
- 분기별 보안 감사
도구 및 솔루션
오픈소스 도구
- MobSF: 모바일 앱 정적/동적 분석
- Frida: 런타임 계측 및 테스트
- OWASP Dependency-Check: 의존성 취약점 스캔
상용 솔루션
- 앱 쉴딩: 도브러너(DoveRunner) Mobile App Security
- RASP: 런타임 애플리케이션 자체 보호
- 난독화: DexGuard, iXGuard
💡 TIP, 도브러너(DoveRunner)의 통합 보안 접근: 도브러너는 앱 쉴딩, 암호화, 무결성 검증, 런타임 보호를 하나의 플랫폼에서 제공합니다. 특히 Supply Chain 공격에 대응하기 위한 SDK 보안 모니터링과 설정 오류를 자동으로 탐지하는 기능을 통해 OWASP에서 강조하는 주요 위협 범주(무결성 훼손, 런타임 조작, 비정상 행위 등)에 대응하는 보호 계층을 제공합니다.
모바일 앱 서비스를 위해 보안은 선택이 아닌 필수
OWASP Top 10 2025 RC와 Mobile Top 10 2024는 단순한 체크리스트가 아닙니다. 이는 실제 공격 데이터와 보안 전문가들의 경험이 축적된 지혜입니다. 모바일 앱 보안은 더 이상 출시 전 한 번 점검하면 끝나는 작업이 아닙니다. 지속적인 모니터링, 빠른 패치, 그리고 진화하는 위협에 대한 학습이 필요합니다.
기억해야 할 핵심 포인트
- 공급망 보안은 최우선 과제입니다.
- 설정 오류는 가장 자주 발견되는 주요 취약점 중 하나입니다.
- 모바일은 클라이언트 사이드 보호가 필수입니다.
- 암호화와 키 관리를 절대 소홀히 하지 마세요.
- 보안 로깅 없이는 사고 원인 분석과 대응이 매우 어렵습니다.
지금 실행해야 하는 업무
- 보안 감사: 현재 앱의 OWASP 준수 수준 확인
- 팀 교육: 개발자 보안 인식 강화
- 도구 도입: 자동화된 보안 솔루션 적용
- 정책 수립: 보안 개발 생명주기(SDL) 구축
도브러너는 모바일 앱 보안의 주요 영역을 커버하는 솔루션을 제공합니다. OWASP Top 10에 대응하는 실질적인 보안 전략이 필요하다면, 지금 바로 전문가와 상담하세요.