본문 바로가기

모바일 해킹

(5)
fridalab challenge writeup! - 3번, 4번 안드로이드 취약점 분석 fridalab challenge를 통해 frida 문법을 익혀보고자 함! fridalab challenge 03 3. Make chall03() return true 클래스 내부의 소스코드를 보면 return 타입은 boolean이며 반환값을 false이다. 이 반환 값을 true로 변환하는 것이 핵심인데 메소드를 재작성하기 위해서는 Implementaion을 사용해주면 된다. frida -U -l fridalab_03.js -f uk.rossmarks.fridalab --no-pause fridalab challenge 04 4. Send "frida" to chall04() chall04() 메소드에 인자로 "frida" 문자열을 전달하는 문제다. 해당 메소드는 인자 값으로 ..
fridalab challenge writeup! - 1번, 2번 안드로이드 취약점 분석 fridalab challenge를 통해 frida 문법을 익혀보고자 함! fridalab challenge 01 1. Change class challenge_01's varialbe 'chall01' to: 1 클래스 내부의 소스코드를 보면 static int chall01; 이라는 구문이 있고 문제는 chall01 static 변수를 바꿔야 해결되는 문제이다. chall01 에 1이라는 값을 주게되면 getChall01int() 메소드가 실행되면서 chall01 이라는 값이 1로 return 되는 것 같다 문제의 핵심은 static 변수의 값을 변경할 수 있는지 인것 같다. frida를 이용하여 chall01에 1이라는 값을 넣어보자. frida -U -l fridalab_0..
frida 기본 문법 Java.perform(fn) Java.use(ClassName) Java.enumerateLoadedClasses(callbacks) Java.choose(ClassName, callbacks) setImmediate(fn) Overloading 1. Java.perform(fn) :현재 스레드가 가상 머신에 연결되어 있는지 확인하고 fn을 호출 2. Java.use(className) : Java.use()는 변수와 메소드에 액세스 할 수 있는 클래스 객체를 반환 : 메소드 구현을 변경하려면 새로운 메소드로 덮어 써야함 : 주의! 인스턴스를 반환하는 것이 아닌 클래스 객체를 반환함. ***지정한 클래스를 사용!!*** :앱에서 사용하는 클래스와 연동되는 myClass를 정의 : .implementat..
frida 기초 기본 명령어 frida 프리다 CLI REPL 인터페이스로, 신속한 프로토타이핑과 손쉬운 디버깅이 목표인 도구 frida-ps 프리다에 연결된 프로세스 목록을 출력하기 위한 도구 frida-ls-devices 연결된 디바이스를 출력하는 도구 frida-trace 함수 호출을 동적으로 추적하기 위한 도구 frida-kill 프로세스를 종료하는 도구 1.Frida CLI REPL 인터페이스로, 신속한 프로토타이핑과 손쉬운 디버깅을 목료로 함. 도움말 frida -h 옵션 설명 --version 프리다 프로그램 버전 출력 -h, --help 도움말 메시지 출력 -D ID, --device=ID 주어진 ID로 장치에 연결 -U, --usb USB 장치에 연결 -R, --remote 원격프리다 서버에 연결 -H ..
Frida 환경 구축 Frida 란 ? Ole가 개발한 DBI 프레임워크다. 윈도우, 맥OS, GNU/Linux, IOS, Android 및 QNX 에서 자바스크립트를 네이티브 앱에 삽입 함으로서 프로세스를 모니터/디버깅하는데 사용할 수 있는 툴킷이다. 주요기능 AppMon과 Needle 등의 도구에서 프리다를 기반으로 사용 함수 후킹 (특정 함수에 연결하여 반환 값 변경, 함수 재작성 등) 애플리케이션 디버깅 가능 힙 메모리 내 객체 인스턴스 검색 및 사용 실시간 트래픽 스니핑 또는 암호 해독 탈옥 또는 루팅되지 않은 단말기에서도 사용 가능 프리다 환경 구축 녹스 앱플레이서(Nox) 또는 실제 디바이스 아나콘다(파이썬) 프리다 프리다 서버 1. 녹스 앱 플레이어 설치 및 환경 설정 1) "바로 설치" 클릭 수 기본 값으로 ..