이번 글에서는 diva.apk(Damn Insecure and vulnerable App for Android)라는 취약한 앱을 분석하겠습니다. Diva는 github에서 다운로드할 수 있으며 취약하게 만들어진 앱입니다. 녹스에서 앱을 실행하면 아래와 같이 13가지의 취약점을 실험할 수 있습니다.
![](http://t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png)
![](http://t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png)
13가지 메뉴 중에서 1번 Insecure Logging에 접근하면 위와 같이 카드 번호를 입력하는 입력 창이 있습니다. 해당 칸에 1234를 입력하고 logcat을 확인하면 카드 번호가 평문으로 노출되는 취약점을 확인할 수 있습니다.
![](http://t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png)
다음으로 jadx-gui를 통해 apk 파일을 분석하겠습니다. logcat에서 Error while processing transaction with credit card: 1234라는 구문은 LogActicity라는 클래스에 접근하면 해당 코드를 볼 수 있습니다. 이러한 코드가 남아있는 이유는 개발자가 앱을 공개하기 전에 에러를 잡기 위해서 넣은 코드를 삭제하지 않고 공개하였기 때문입니다. 따라서 대응방안으로는 이와 같은 중요한 정보를 로그에 기록하지 않도록 해당 구문을 삭제해야합니다.
![](http://t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png)
두번째 취약점 Hardcoding Issues - Part 1 분석입니다. 메뉴로 들어가면 아래와 같이 vendor key를 입력하라고 합니다.
![](http://t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png)
아무 문자열을 입력하면 접근이 거부됩니다.
![](http://t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png)
jadx-gui에서 HardcodeActivity에 들어가면 key값이 vendorsecretkey라는 문자열이 하드코딩되어있습니다.
![](http://t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png)
해당 값을 입력하면 접근에 성공할 수 있습니다.
![](http://t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png)
'안드로이드 해킹' 카테고리의 다른 글
diva.apk 취약점 분석 (3) (0) | 2021.07.24 |
---|---|
APK 파일 디컴파일하기 (0) | 2021.07.24 |
안드로이드 내부/외부 저장소 (0) | 2021.07.24 |
미래 IoT시대 보안 (0) | 2021.07.24 |
댓글