모바일 환경의 성장
- 아이폰으로 시작된 스마트폰 열풍, 앱 다운 환경은 애플과 구글로 양분
모바일 보안 위협
- 안드로이드, 개방적, 리패키징, 모바일 악성 앱 증가
- 애플, 탈옥, 임의의 sw 설치 가능하게
- 안드로이드, 루팅, 시스템 잠금을 해제해서 os 관리자 권한 얻기
- 탈옥과 루팅 관련 정보가 공유되며 감염 급증
모바일 환경의 위협 요소
- OWASP 모바일 top 10 위험 기준 분석 결과
- M1 적절하지 않은 플랫폼 사용
- M2 안전하지 않은 데이터 저장 , 암호화된 보호가 무력화되는 루팅 탈옥 분실 도난 - 공유환경설정x
- M3 안전하지 않은 통신 , 데이터 유출이 쉬움
- M4 안전하지 않은 인증 , 자동화된 툴로 공격, 입력폼
- M5 불충분한 암호화 , 암호화 부족, 물리적 접근 후 복호화
- M6 안전하지 않은 권한 , 자동화된 툴로 공격 , 권한 체계가 약할 때 권한 통제 우회 , 명령어
- M7 클라이언트 코드 품질 , 의도치 않은 입력 값 전달로 공격
- M8 코드 변조 , 조작된 앱이나 피싱 공격으로 악의적인 앱 설치 유도
- M9 역공학 , 공격 대상을 받아서 로컬 환경에서 분석
- M10 관련 없는 기능 , 숨겨진 특정 기능을 찾기 위해 기능 분석
안드로이드 앱 분석
- apk 안드로이드 애플리케이션 패키지
- smali 기계어를 사람이 읽기 쉽게
- dex 가상 머신에 실행되는 기계언어로 변환
안드로이드 악성 코드 제작 원리
- 컴파일해서 소스코드를 바이너리로 변경
- 컴파일 후 패키징과 서명 작업이 추가적으로 필요
- 리패키징 제작을 반대로. 최초 상태가 되면 다른 코드 삽입해서 재제작
- apktool 언패키징해서 내부 볼 수 있음
- 메인 액티비티, 메인과 런처가 액티비티 실행해서 화면 보이게 함
- 단말기 바탕화면에 아이콘 표시 intentcategory launcher
- intent 컴포넌트의 데이터 교환 방식
- intent filter 받아서 처리할 수 있는 인텐트가 어떤 건가!
소스코드 추출하기
- apk apktool androidmanifest.xml
- apk dex2jar dex
- java byte code jd-gui java
- apk - zip - dex - jar (dex2jar) - source code (jd-gui)
apk jar d2j-dex2jar
모바일 통제와 설계 원칙
- 모바일 장치에 있는 민감한 데이터를 식별하고 보호
- 장치에 있는 패스워드 식별 정보를 안전하게 처리
- 전송 시 민감한 데이터가 보호되는지 확인
- 사용자 인증 권한 세션 관리를 올바르게 구현
- 사용자 데이터 수집과 사용 동의는 신중하게 대처
- 금융 지불 자원에 불법으로 접근하지 못하게 통제
- 모바일 애플리케이션을 안전하게 배포
- 안전한 시스템 개발 및 코딩 방법
'[ Computer Security ] > Web Security' 카테고리의 다른 글
[웹보안] 웹 보안 정책, 조직, 솔루션 (0) | 2024.08.26 |
---|---|
[웹보안] 웹 서버 보안 (0) | 2024.08.26 |
[웹보안] 웹 보안의 기본 요소 (2) | 2024.08.26 |
[워게임/웹해킹] Dreamhack 409 . session-basic (0) | 2024.05.11 |
[워게임/웹해킹] Dreamhack 267 . devtools-sources (0) | 2024.05.11 |
[웹보안] 인터넷 해킹과 보안 연습문제 8장 (0) | 2024.04.29 |
[웹보안] 인터넷 해킹과 보안 연습문제 7장 (0) | 2024.04.29 |