본문 바로가기

분류 전체보기

(23)
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) "바로 설치" 클릭 수 기본 값으로 ..
Forensic CTF(3) - Find Key(Black) 문제명 : Find Key(Black) 분류 : Multimedia Forensic [*] 문제풀이 환경 -운영체제 : Windows 10x64 -사용도구 : FTK Imager, ssdeep, Autopsy, Hex Editor , TrueCrypt 7.1a 문제풀이 1) 문제 파일을 FTK Imager를 통해 파일을 열어보자. FTK Imager로 문제파일을 확인해보면 volume/root/Black/B(115).jpg 를 확인할 수 있다. 파일의 내용을 보면 Alternate Data Stream 타입의 black.txt 파일을 확인할 수 있다. ADS(Alternate Data Stream) 는 NTFS의 기능으로 파일을 다른 파일에 숨길 수 있다. 결론적으로 B(115).jpg 파일에 black..
Forensic CTF(2) - Find Key(docx) 문제명 : Find Key 분류 : MultiMedia Forensic Hint1 : docx 파일을 비교하시오. Hint2 : Extra_Filed_Entry [*] 문제풀이 환경 -운영체제 : Windows 10x64 -사용도구 : Hex Editor, ooXml, Steganography v4 문제풀이 1) 문제 파일을 열어 확인 파일을 열어 보면 각종 사진들이 있는 것을 알 수 있다. 스테가노그래피 문제에서 흔히 사용되는 확장자 변조를 확인하기 위해서 Hex Editor로 시그니처를 확인해보자. 2) 확장자 변조 확인을 위한 Hex Editor를 이용한 시그니처 확인 시그니처는 [50 4B 03 04] 로 zip 파일의 시그니처와 동일하며, docx는 압축 파일구조를 따르는 문서이다. 그러므로 확..
Forensic CTF(1) - Find Password 문제명 : Find Password 분류 : DiskForensic Hint : ALYSSA 의 계정 Key Format : TEXT [*] 문제풀이 환경 -운영체제 : Windows 10x64 -사용도구 : 반디집, file, pwdump, NTLM 디코더 -문제파일 : forensics.rar 문제풀이 1) 반디집으로 문제파일 압축해제 2) file 명령어로 SAM, SYSTEM 파일의 유형을 확인하자 레지스트리 파일인 것을 확인할 수 있었다. 따라서 레지스트리 파일과 문제의 Hint를 통해 계정 정보에 대해 알아야 한다. ※윈도우 레지스트리 정보 SAM : 윈도우 사용자의 계정 정보와 관리자 비밀번호 등을 저장 SYSTEM : 시스템 부팅에 필요한 시스템 전역 구성 정보 저장 SECURITY : 시..
레지스트리 포렌식(2) 1.MRU: 가장 최근에 사용된 파일, 프로그램 등에 대한 정보 목록 HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDig32\OpneSaveMRU 최근 open 되거나 save 된 파일 목록 기록 HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDig32\LastVisitedMRU 최근 실행 프로그램의 파일명과 open/save한 파일이 존재하는 폴더 path 저장 HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\rRunMRU [시작]->[실행]을 선택하여 실행된 명령어의 목록 저장 HKCU\Software\Microsoft\Search..