본문 바로가기

해킹-보안/모바일

(40)
IDA 동적 디버깅 설정 - Uncrackable 2 동적 분석 ி IDA 동적 디버깅 환경 설정 단말기 아키텍쳐 확인 > adb shell getprop ro.product.cpu.abi arm64-v8a 단말기로 IDA 서버 파일 복사 > cd IDA Pro 7.5\dbgsrv > adb push android_server64 /data/local/tmp > :/data/local/tmp # chmod 755 android_server64 > :/data/local/tmp # ./android_server64 & 동적 디버깅을 위한 포트 포워딩 > adb forward tcp:23946 tcp:23946 디버깅 실행 ① IDA에서 Attach할 디버거 선택 후 Hostname(127.0.0.1:23946) 입력 IDA Debugger > Attach > Debug..
frida cheatsheet native 모든 context 조회 console.log( JSON.stringify(this.context) ) 특정 라이브러리 로드 후 주소값 후킹(android) Interceptor.attach(Module.getExportByName(null, "android_dlopen_ext"), { onEnter(args) { this.path = Memory.readUtf8String(args[0]); }, onLeave(retval) { if ( /libfoo.so/i.test(this.path) ) { const target = this.path.split("/").pop(); hook(target); } }, }); function hook(lib) { const base_adr = Module...
아이폰 Unc0ver 재탈옥 테스트: iPhone 6s 13.5.1 1. PC에 핸드폰 케이블 연결 후 3utools 실행, Toolbox에서 Jailbreak 선택 http://www.3u.com/ 2. unc0ver 설치( IOS 11.0~14.3 지원 ) 3. 아이폰 설정 > 일반 > 프로파일 및 기기관리 > 개발자앱 허용에서 신규로 등록된 프로파일을 허용해야 unc0ver 정상 실행이 가능하며 아이폰 재부팅 후 해당 앱을 열어 Jailbreak 수행 시 탈옥 완료 ※ 현재 이 방법으로는 불가한듯함. (Jailbreak failed 뜨면서 중간에 멈춤) Altstore로 하는게 좋음. 아래 사이트 참고해서 altstore 설치 https://tblog.rudi2e.com/19 설치 끝나고 https://unc0ver.dev 들..
IOS Fiddler HTTPS 캡쳐 1. Capturing HTTPS Connects 체크 해제 Tools > Options > HTTPS > Capturing HTTPS Connects 체크 해제 2. 피들러 인증서 초기화 fiddler Tools > Options > HTTPS > Actions > Reset all certificates 3. iOS 및 Android용 CertMaker 다운로드 후 실행 https://www.telerik.com/fiddler/add-ons 4. Capturing HTTPS Connects 체크 및 Decrypt HTTPS Traffic 활성화 5. 원격 연결 활성화 Tools > Options > Connections > Allow remote computers to connect 체크 listen..
FridaLab 6번 문제 1. challenge_06 클래스 내 chall06 메서드에서 confirmChall06 호출 후 참일 경우 정답 처리됨, 해당 메서드가 정의된 부분으로 이동 후 아래 조건 부를 확인하여 모두 만족하도록 구현할 것. * confirmChall06 메서드의 인자값은 chall06 값과 동일할 것 * 현재 시간(v0)이 timeStart+10000(10초) 보다 클 것( 10초 경과를 뜻함 ) 2. addChall06에서 상호참조(x 버튼 클릭) 후 MainActivity.onCreate에 진입하여 addChall06 호출 부 확인 시 1초마다 랜덤 값을 chall06에 더하여 인자로 전달하는 것을 확인함. * 1초마다 chall06 값 출력 확인 Java.perform(function(){ var cha..
FridaLab 1~5 문제 * fridaLab apk: https://rossmarks.uk/blog/fridalab/ 1번 문제 - challenge_01 클래스 내 chall01 변수 값을 1로 변경 Java.perform(function() { const chall_01 = Java.use("uk.rossmarks.fridalab.challenge_01"); chall_01.chall01.value = 1; console.log("chall01: ",chall_01.chall01.value); }); CHECK 버튼 클릭 후 해당 문제에 연두색 하이라이팅된 것을 통해 정답 확인 가능 2번 문제 - Chall02 메서드 실행하기 * 클래스 메서드(static 메서드) - 메서드 앞에 static 이 존재 - 메소드 내에서 인스..
frida 설치하기 ி frida Tool 설치 > pip install frida-tools ㆍ python 3.7에서 진행함(특정 버전 실행 시 모듈오류 발생하는 경우가 있음) ㆍ frida 설치 중 warning 오류를 해결하고 진행할 것 ㆍ frida server와 frida tools 버전이 다르면 frida 실행 시 핸드폰 강제 재부팅됨 ி frida 서버 설치 ㆍ android server 설치: https://github.com/frida/frida/releases ㆍ 위에서 다운받고 압축 해제한 파일을 스마트폰 내부(/system)로 옮긴다. ㆍ 우선 system은 rw 권한이 없기 때문에 마운트를 통해 rw 권한을 부여하고 임시 저장 공간에서 frida 파일에 대한 권한을 부여한 뒤 system 폴더로 옮..
안드로이드 앱 교육 1일차 보호되어 있는 글입니다.