mobile hacking - frida(1)

Glen·2022년 9월 11일
0

Frida의 주요기능 세가지

  • injection
    • 임의코드를 애플리케이션에 주입
  • interception
    • 특정 함수를 후킹하여 매개변수나 반환값을 수정
  • stalking
    • 명령어 레벨의 코드를 추적하여 디버깅하고 메모리 내의 데이터를 검색하거나 추출.

Frida 명령어

frida-ps

  • -a : 동작중인 애플리케이션 프로세스 목록
  • -i : 동작중이거나 설치된 애플리케이션 프로세스 목록

Attach, Spawn

Attach

  • -F, -n [package name] -p [PID] 를 사용
  • 이미 실행된 프로세스에 frida를 연결

Spawn

  • -f [package name]를 사용
  • 프로세스를 실행시키는 동시에 frida를 연결
  • 메인스레드 시작 전 일시정지 됨(--no-pause로 일시정지 해제 가능)

Load Script

  • -l [script] 를 사용

    $ echo "console.log(\"script loaded.\");" > script.js
    $ frida -U -F -l script.js

frida-trace

  • -I,-X는 모듈의 모든 함수를 추적, 제외
  • -i,-x는 함수를 추적, 제외
    • ex) -i "mem*" (mem으로 시작하는 모든함수)
  • -a는 함수명이 부모모듈에 선언되어 -i로 특정할 수 없을때 찾고자하는 offset을 함께 전달하여 추적
  • -d는 로그에 모듈 이름 기록(여러모듈의 같은이름 함수 존재시)
  • -O 텍스트파일을 읽어 명령줄로 사용

frida-ls-devices

현재 Frida를 연결할 수 있는 기기목록 출력

  • avd 실행중인데 왜 안나오는지 모르겠...

frida-kill

  • -D [device-id][pid]

Frida setting

frida server 다운로드 후 adb로 push

  • 단말기/avd의 프로세서와 맞는 버전을 찾아 설치

frida server 파일에 권한주고 실행

  • 백그라운드에서 실행하게 하려면 뒤에 & 추가

로컬에서 frida-ps -U 명령어로 avd의 실행중인 어플 확인

profile
어제보다 나은 엔지니어가 되기 위해서 공부중

0개의 댓글