Kye0m's Security

[Diva] Access control issues(Part3) 본문

앱 모의해킹/Diva

[Diva] Access control issues(Part3)

Kye0m 2022. 10. 2. 15:04

Diva - Access Control Issues(part3)

목적 : 이것은 개인용 노트 앱이다. PIN을 한 번 만들고 올바른 PIN을 입력한 후 노트에 액세스할 수 있습니다. 이제 PIN을 모르는 상태에서 앱 외부에서 개인 노트에 액세스해 보십시오.

힌트 : 앱의 구성요소는 제대로 보호되지 않은 경우 다른 앱이나 사용자로부터 액세스할 수 있으며 일부는 외부 입력을 허용할 수도 있습니다. 활동, 서비스, 콘텐츠 공급자와 같은 구성 요소는 이러한 경향이 있습니다.

 

PIN번호를 모르는 상태에서 NOTE에 엑세스하면 풀 수 있는 문제이다.

 

해당 위치에 옳바른 핀번호를 입력하면 노트에 들어있는 정보가 나타나게 되지만,

그렇지 않을 경우 아래와 같이 오류 메세지가 나오게 된다.

잚못된 핀번호를 입력했을 경우

 

 

문제풀이

AndroidManifest.xml 파일을 열어보면 다음과 같은 구문을 확인할 수 있다.

<provider android:authorities="jakhar.aseem.diva.provider.notesprovider" android:enabled="true" android:exported="true" android:name="jakhar.aseem.diva.NotesProvider"/>

 

jakhar.aseem.diva.provider.notesprovider 의  exported값이 true로 설정되어있는 것을 확인할 수 있다.

android가 true로 설정되어 있을 경우, 다른 애플리케이션에서 활동에 엑세스 할 수 있다.

이 취약점을 이용해서, PIN번호를 모르지만 notes에 들어있는 정보에 접근할 것이다.

 

 

jakhar.aseem.diva.NotesProvider에 들어가보면 notes정보가 담겨있는 위치가 하드코딩되어있다.

exported값이 true로 되어있는 점을 이용해서 adb에서 해당 파일을 실행할것이다.

adb 명령어를 사용하여 해당 경로를 실행시켜 보겠다.

 

명령어를 통해서 노트 안에 들어있는 정보를 핀번호 없이 실행시킨 것을 확인할 수 있다.

'앱 모의해킹 > Diva' 카테고리의 다른 글

[Diva] Hardcoding issues(Part2)  (0) 2022.10.01
[Diva] - Hardcoding issues(Part1)  (1) 2022.09.29
[Diva] -Insecure Logging  (1) 2022.09.29