DIVA 앱을 설치 후 실행하면 13개의 문제가 나오게 되는데 이 중 12번 문제인 하드코딩 이슈 파트 2(HARDCODING ISSUES - PART 2) 문제를 클릭한다
문제를 들어가게 되면 이전 2번 문제처럼 vendor key 값을 찾아 입력해야 하는 문제이다
vendor key 값 내 아무 값(1234567890)이나 입력할 경우 에러 메시지(Access denied)가 발생되는 것을 확인할 수 있다
jadx를 이용해서 12번 문제에 해당되는 activity인 "Hardcode2Activity"의 코드를 확인해 본 결과 사용자가 입력한 값을 djni.access 함수 파라미터로 사용하여 비교하는 것이 보인다
또한 djni는 DivaJni 쪽과 관련이 있음을 알 수 있다
"DivaJni"의 코드를 확인해 본 결과 "System.loadLibrary"를 이용하여 "divajni.so" 라이브러리 파일을 불러오는 것을 확인할 수 있다
라이브러리 파일이 존재하는 lib 폴더에 접근한 결과 "libdivajni.so" 라이브러리 파일이 존재한다
12번 문제의 경우에는 하드코딩 관련 문제이므로 이전 확인하였던 "divajni" 라이브러리 파일 내 vendor key값이 하드코딩 되어있을 거라 추측할 수 있으므로, IDA를 이용하여 Strings Window(Shift+F12)를 이용하여 하드코딩된 String값들을 확인한 결과 이상한 문구의 하드코딩된 값들이 존재함을 확인할 수 있다 (olsdfgad;lh)
해당 값(olsdfgad;lh) 을 입력한 결과 액세스 허용(Access granted)이 된 것을 확인 가능하다