본문 바로가기

해킹-보안/모바일

루팅 탐지 우회

반응형

 

 

설명

 
안드로이드 기반인 리눅스는 각 사용자별로 각각에 맞는 권한을 주고, 그 권한 내에서만 시스템을 컨트롤할 수 있도록 구성되어 있다.  하지만 모든 권한을 보유한 root 계정은 안드로이드를 사용자 마음대로 변경을 할 수 있고 이를 획득하여 정상적으로 제어할 수 없던 시스템 파일이나 OS의 접근할 수 없던 부분까지 사용자 임의로 변경 및 삭제를 할 수있다. 때문에 앱에서는 이러한 보안상의 이유로 루트 권한을 제한하고 있고 이를 우회하여 강제적으로 루팅을 할 수있는지 점검해야 한다.



취약점 진단

 
루팅 체크에 주로 사용되는 경로는 아래와 같다.
/system/bin/su
/system/xbin/which
/system/app/superuser.apk
/data/data/com.noshufou.android.su

인시큐어뱅크 앱을 디컴파일하여 루팅 체크 소스 코드를 확인한다.

 

/system/app 폴더에 Superuser.apk 파일이 존재하거나 /system/xbin/which에 su 파일이 존재하면
루팅된 것으로 판단한다.



관리자 권한으로 /system 폴더에 쓰기 권한을 부여한 뒤 루팅 탐지 파일명을 다른 이름으로 변경한다.
/system/xbin 폴더 내에 which 폴더는 존재하지 않으므로 이는 제외한다.

 



대부분의 은행 앱은 루팅된 경우 스스로 앱을 종료시키지만 루팅 후 생기는 파일명을 임의로 변경하여 이를 우회했다.
때문에 루팅된 상태로 앱 내부의 민감한 정보에 접근할 수 있는 취약점이 존재한다.

 

반응형