1. su 파일 탐지
1) open, fopen, access와 같은 함수를 hooking 하여 접근하는 것을 보면 알 수 있다. retval.replace(-1) 과 같은 방법으로 파일이 존재하지 않는 것처럼 우회 가능
2) 가끔 java 코드에 그대로 박아두는 경우엔 그냥 그 함수의 return 값 변조~
3) 파일의 이름을 아예 변경하는 방법도 있다.
2. 프로세스 탐지
3. 설치된 패키지 목록 확인
/system/app 폴더 아래 Superuser.apk, su.apk 와 같은 패키지를 확인한다.
4. busybox 명령어 확인
5. BuildTag
adb shell로 접근하여 cat /system/build.prop | grep ro.build.tags 명령어 수행
루팅되어 있을 경우 ro.build.tags=release-keys
루팅되어 있지 않을 경우 ro.build.tags=test-keys
6. 폴더 권한 확인
루팅 후 reomount하고 write권한을 주는 경우를 체크한다.
7. 루팅 카운트 탐지
삼성의 KNOX 등을 이용해 루팅 카운트를 탐지하는 방법이다. 커스텀 펌웨어를 덮어쓸 경우 카운트가 올라가서 이를 구분할 수 있게 된다.
반응형
'보안 및 개발 > MOBILE' 카테고리의 다른 글
[Android] Frida detection bypass (0) | 2020.03.11 |
---|---|
[Android] galaxy s9 루팅하기 (0) | 2020.02.20 |
[Android] frida 환경 구축 (0) | 2020.02.11 |
[Android] MainActivity 찾기 (0) | 2020.02.10 |
[Android] apktool을 이용한 디컴파일 및 리패키징 (0) | 2020.02.10 |