Diva 2번 - Hardcoding Issues

반응형

2번 문제를 확인해보면

vendor key를 입력해야하는 문제이다.

일단 아무 값이나 입력해서 Access 버튼을 누르게 되면

다음과 같이 접근 거부 Toast 메시지가 뜬다.

해당 Toast 메시지가 뜨는 부분을 찾기 위해서 우선 앱을 추출해서 확인해보기로 했다.

일단 녹스에서 추출을 희망하는 앱을 꾹 누르면 하기 그림과 같이 앱을 추출할 수 있다.

추출한 앱을 jadx-gui 앱을 통해 열어보면

다음과 같이 나온다.

아무 값을 입력했을 때 "Access denined! See you in hell :D"라는 Toast 메시지가 나오기 때문에

해당 문구가 나오는 부분을 CTRL + SHIFT + F를 통해 전체 검색 해보기로 했다.

검색 시 정의 검색을 모두 체크하여 모든 부분에서 검색을 할 수 있게 설정 한 다음 Toast 메시지에 있었던 hell 이라는 Text를 검색하면 다음과 같이 2개의 검색결과가 나오는데 그중에서 HardcodeActivity Class를 선택하면

다음과 같이 Java Class가 나오게 되고 코드를 쭉 따라가다 보면 입력값을 비교하는 IF 문을 볼 수 있다.

코드를 대충 해석하면 입력 값이 "vendorsecretkey"이면 "Access granted" Toast 메시지를 출력하고 그렇지 않으면 우리가 보았던 "Access denined" Toast 메시지가 출력된다고 한다.

그럼 다시 Nox를 켜서 "vendorsecretkey"를 입력한다.

ACCESS 버튼을 누르면

접근 권한 부여받았다는 메시지를 받을 수 있다.

ID, PW같은 주요정보를 하드코딩하면 이런 방식으로 확인이 가능하기 때문에 주요정보에 대해서는 하드코딩 하면 안될 것 같다.

반응형

'APP' 카테고리의 다른 글

frida 서버 실행 오류  (0) 2022.12.29
Diva 3번 - INSECURE DATA STORAGE - PART1  (0) 2022.12.05
Diva- 1번 Insecure Logging  (0) 2022.12.04
fridump 사용 중 device not found 에러 나올 시  (0) 2022.06.14
IOS 탈옥하기  (2) 2022.03.01