녹스 루팅 우회 - nogseu luting uhoe

2022.05.10 - [모바일/Android] - [Android] 안드로이드 Frida Hooking을 통한 루팅탐지우회

[Android] 안드로이드 Frida Hooking을 통한 루팅탐지우회

안드로이드도 ios와 마찬가지로 프리다를 이용한 후킹으로 루팅탐지를 우회할 수 있다. 2022.05.03 - [모바일/Ios] - [ios] 프리다 후킹 (Frida Hooking)을 통한 탈옥 탐지 우회 방법 [ios] 프리다 후킹 (Frida Ho

hyotwo.tistory.com

녹스 루팅 우회 - nogseu luting uhoe

위 글 작성중 스크립트를 여러번 테스트해보다가

리턴값 변환을 안했는데도 우회가 되는 몇개의 앱이 있어서 어떤 원리로 그렇게되는 것인지 

조금 더 분석해보았다.

일단 아래 스크립트 2개를 돌려보았다

녹스 루팅 우회 - nogseu luting uhoe

2개 스크립트 모두 루팅탐지가 우회되었으며 그 결과값은 아래 사진과 같은데

오른쪽 스크립트에는 Return값을 false로 반환할 뿐 ios 스크립트처럼 replace와 같은 명령은 없다.

하지만 마지막 return false로 반환할 때 true로 반환하면 루팅 탐지가 우회가 안된다.

이는 왼쪽 스크립트도 var retnew = false; 로 리턴값 변환처럼 보이지만 사실 변환이 아니라

그저 로그를 찍기위한 코드다.

실제로 return값에 아무것도 반환을 안하거나 변조를 안해줘도 false가 반환된다.

왜냐하면 isRooted에서 나온 return값이 true가 아니기 때문

true가 아닌값들 1, a, null 모두 false가 반환되어 우회가 된다.

녹스 루팅 우회 - nogseu luting uhoe

실제로 우회되는 원리는 

hook.isRooted.overload().implementation = function()

implementation 함수에 있다. 

implementation 함수는 frida 문법에 의하면 재작성, 재설정 등과 같은 기능을 하는데

isRooted 메소드를 재작성하는 것이다.

implementation 이후에 return false로 주고 로그를 찍어보면

녹스 루팅 우회 - nogseu luting uhoe

아래 사진처럼 false가 반환되고

녹스 루팅 우회 - nogseu luting uhoe

마찬가지로 true가 아닌 1 이나 a를 줘도 false가 반환되는 것을 볼 수 있다.

아래 에러는 전 포스팅에서 말했던것처럼 boolean방식이 아니라 에러 발생

녹스 루팅 우회 - nogseu luting uhoe

그렇다면 isRooted를 재작성하면 return값이 어떻게 될까

설정을 다시 해주는거라면 null값이라고 생각된다.

실제로 로그를 찍어보았다.

var a = main.isRooted.implementation;
			console.log("");
			console.log("implementation 직후 리턴값 :" + a);
녹스 루팅 우회 - nogseu luting uhoe

로그를 찍어본 결과 실제로 return값이 정의되지않아서 null이나 알 수없는 주소값을 반환

그럼 기존 로직에 의해 true가 아닌 값들은 모두 false기 때문에

녹스 루팅 우회 - nogseu luting uhoe

그래서 스크립트상에 리턴값을 변조하는 코드가 없다고 하더라도 사실

implementation 자체가 후킹을 걸었던 메소드의 로직 자체를 초기화해버리기 때문에 우회가 되는것

그래서 실제로 implementation 함수를 사용하고 그 아래에 새로운 if 조건문을 제시하면 그대로 따라간다

녹스 루팅 우회 - nogseu luting uhoe
녹스 루팅 우회 - nogseu luting uhoe

  • 개드립
    • 개드립
    • 개드립 인기글
  • 유저 개드립
    • 유저 개드립
    • 유저 개드립 인기글
    • 붐업 베스트
  • 읽을 거리 판
    • 읽을 거리 판
    • 인기글
    • 기묘한 이야기
    • 호러 괴담
    • 감동
    • 자연
    • 유머
    • 과학
    • 역사
    • 기타 지식
  • 커뮤니티
    • 주식 / 재테크 판
    • 코인 판
    • 인터넷 방송 판
    • 탈것 판
    • 익명 판
    • 컴퓨터 / IT 판
    • 영상 판
    • 고민 상담 판
    • 스포츠 판
    • 요리 판
    • 덕후 판
    • 창작 판
    • 음악 판
    • 정치 사회 판
    • 젠더 이슈 판
  • 게임 판
    • 게임 판
    • 게임 연재 / 정보 판
    • 디아블로
    • 로스트아크
    • LOL
    • 콘솔 게임 판
    • 모바일 게임 판
    • 던전 앤 파이터
  • 놀이터
    • 개드립콘 - 주간 인기
    • 개드립콘
    • 걸그룹 판
    • 짤방 판
    • 시간 때우기 (게임)
  • 기타
    • 공지사항
    • 건의 신고 판

로그인

  • 개드립
    • 개드립
    • 개드립 인기글
  • 유저 개드립
    • 유저 개드립
    • 유저 개드립 인기글
    • 붐업 베스트
  • 읽을 거리 판
    • 읽을 거리 판
    • 인기글
    • 기묘한 이야기
    • 호러 괴담
    • 감동
    • 자연
    • 유머
    • 과학
    • 역사
    • 기타 지식
  • 커뮤니티
    • 주식 / 재테크 판
    • 코인 판
    • 인터넷 방송 판
    • 탈것 판
    • 익명 판
    • 컴퓨터 / IT 판
    • 영상 판
    • 고민 상담 판
    • 스포츠 판
    • 요리 판
    • 덕후 판
    • 창작 판
    • 음악 판
    • 정치 사회 판
    • 젠더 이슈 판
  • 게임 판
    • 게임 판
    • 게임 연재 / 정보 판
    • 디아블로
    • 로스트아크
    • LOL
    • 콘솔 게임 판
    • 모바일 게임 판
    • 던전 앤 파이터
  • 놀이터
    • 개드립콘 - 주간 인기
    • 개드립콘
    • 걸그룹 판
    • 짤방 판
    • 시간 때우기 (게임)
  • 기타
    • 공지사항
    • 건의 신고 판

컴퓨터 / IT 판 인기글

  • 갤럭시유저 아이폰1주일 후기.txt
  • IT업계는 인간성 박살난 놈들 많음?
  • 폴드4 512를 150에 파는데 미칠것같다
  • 전 세계 보안 위기, 오픈SSL 치명적 취약점 발견
  • 아이폰 이게 맞나 싶다
  • 이번 빅스마일데이 가성비 좋다고 생각되는 제품
  • LG32UN650 싸게 판데서 정보 공유함
  • 사기꾼 새끼 어이가 없네