Self-Improvement

[DIVA] 12. Hardcoding Issues - Part 2 (JNI, loadLibrary) 본문

AOS/DIVA

[DIVA] 12. Hardcoding Issues - Part 2 (JNI, loadLibrary)

JoGeun 2021. 12. 21. 22:00

소스코드 내에 vendor key 값을 알아내는게 목적이다.

 

Hardcode2Activity 클래스를 보자면 DivaJni 클래스의 djni 객체를 생성한 후 access() 메소드를 호출하여 입력한 값과 비교한 후 같으면 Access granted!가 출력된다.

 

DivaJni 클래스를 보면 divajni 라이브러리가 로드되고 access() 메소드가 네이티브 함수로 작성되어 있다.

 

divanjni 라이브러리의 access() 함수를 확인해보면 strncmp() API로 "olsdfgad;lh" 값과 비교하게 된다.

 

해당 값을 입력하면 맞다고 출력하게 된다.