libmsaoaidsec.so v2.5.1 분석

libmsaoaidsec.so v2.5.1 분석

2024년 11월 19일

개요 #

rooting 탐지는 허술했지만, frida 탐지를 하고 있어서 우회를 위해 분석을 시작했다.
조금 찾아보니 중국에서 bilibili 등의 유명한 앱에 포함된 유명한 솔루션이라서 분석하는 글을 많이 볼 수 있었다.

Mobile Security Alliance oaid_sdk 를 말하며, https://www.msa-alliance.cn/col.jsp?id=120 에서 사용법에 대한 문서를 확인할 수 있다.

문서를 작성하는 현재 oaid_sdk는 2.5.1 버전이 최신버전이며, 원래 위 사이트에서 요청을 해야 받을 수 있는걸로 보이는데 깃허브에 있길래 포크해왔다.
빌드된 테스트앱도 포함되어 있고, 앱 내 lib 폴더에 해당 sdk 버전의 libmsaoaidsec.so 를 볼 수 있다.

6f38efa6-e575-42b8-88bf-1c7669aca2d6


분석 #

readelf로 확인했을 때 init 함수와 init_array 가 있다는게 확인된다.

3bf1e2e2-3eb8-4561-bcc1-380fc512aa0b

init 함수는 있는데, init_array 오프셋을 가보면 readelf 에서 확인한 사이즈만큼만 예약되어 있고, 0byte로 채워져 있다.

d656e728-e2f0-48ac-b995-4e5df59e8c85

init 함수에서는 iVar3에 특정 상태값을 저장하면서 무한루프 중 상태를 변환하며 로직을 실행시키도록 구현되어 있다.


우회 #

comments powered by Disqus