이번에 풀어볼 문제는 HackTheBox에 모바일 챌린지의 문제인 APKey를 풀어볼려고 합니다.
어플리케이션 실행(동적 분석)
단순하게 로그인하는 문제이기에 ID : admin, PW : admin을 입력해 보았습니다. 오류 메시지로 "Wrong Caredentials!"라는 toast 알림이 뜨는 것을 확인할 수 있었습니다! 아이디 비밀번호를 확인할 수 없기에 추가로 얻을 수 있는 정보는 없기에 정적분석으로 이어서 진행하겠습니다.
분석(정적 분석)
jadx를 통해서 어플리케이션을 디컴파일을 진행합니다. 디컴파일된 Java 코드에서 오류 메시지를 검석하였을때,
onClick 함수에서 하드코딩된 MD5로 암호화된 비밀번호값을 확인할 수 있었습니다.
해결과정
아무리 생각해도 MD5를 복호화를 진행하는 것은 어렵기 때문에 APK를 디컴파일하고 SMALI 코드를 수정하여 리패키징을 진행하는 것이 좋다고 생각하였습니다.