앵하니의 더 나은 보안

base.apk에 lib폴더가(so파일이) 없을 때 본문

보안 기술/Android

base.apk에 lib폴더가(so파일이) 없을 때

앵한 2022. 7. 25. 14:00

모 금융 어플리케이션의 취약점 진단을 위해 루팅탐지를 우회 해야했는데, 그럴려면 native 소스를 확인해야했다.

그래서 base.apk에서 so파일들을 추출하려 했더니 그 안에는 lib 폴더가 없었다.

lib 폴더가 존재하지않는 base.apk

 

lib 폴더가 존재하는 통상적인 base.apk

근데 또 마침 이상황에서 apktool을 사용한 디패키징도 assets의 이상한 dex파일 때문에 에러났다.

뭐 smali 버전 때문이라나 뭐라나

 

그래서 그냥 단말기의 /data/app 경로에서 lib폴더를 꺼내야겠다 싶어

단말기에서 lib 폴더에도 접근해봤더니, 거기에도 마찬가지로 so 파일들이 없었다.

 

그러곤 여차저차 삽질하다 어쨋든 단말기에 so파일이 있겠거니싶어 /data/app/어플리케이션/ 경로로 접근해

하위에 존재하는 모든 파일들을 adb pull로 추출하기로 했다.

 

그랬더니 그냥 4개 apk파일 중 split_config.arm64_v8a.apk 파일에 lib파일이 들어가있었다.

혹시 lib파일이 binary 파일 안에 패킹돼 있나 싶어서 귀찮아질까 걱정했는데 생각보다 쉽게 해결했다.

split apk의 일종이란다.

lib만 떨어져있는 경우는 처음이라 글로 있으면 좋겠다 싶어 공유한다.

base.apk에 lib폴더의 so파일이 없다면 해당 글을 참고하자.

Comments