프리다(Frida)를 이용한 안드로이드 앱 모의해킹

프리다(Frida)를 이용한 안드로이드 앱 모의해킹

(6개의 수강평)

128명의 수강생
Android모의해킹Frida
최홍석 프로필

chrome.js 파일은 어디에 있나요? 최홍석 1달 전
환경변주 시정이 정상적으로 된상태가 아닌가요? chrome.js 파일을  어느폴더에 저장해야하는지요/. 그리고 chrome.js 파일  아래 내용으로 작성하면 되는건가요? setImmediate(function() { Java.perform(function () { var Activity = Java.use("android.app.Activity"); Activity.onResume.implementation = function () { console.log("[*] onResume() got called!"); this.onResume(); }; }); })

3
아카오 프로필

frida -f com.android.chrome 명령에서 오류가 뜹니다 아카오 1달 전
해당 명령을 입력했을 때 위와 같이 실패 메시지가 뜨면서 다시 기존 터미널 창으로 돌아옵니다. 프리다 버전은 강의 버전이 아닌 최신 버전으로 실습했는데, 업데이트 되면서 해당 기능이 막힌 것인가요??

1
김규혁 프로필

프리다 서버 실행 오류 김규혁 2달 전
아래와 같이 오류가 뜨는데 원인이 뭔가요 ㅠ ps로 확인했을 때는 정상적으로 프로세스가 작동중이긴 합니다.

2
관리자 프로필

해당 오류는 어떤 오류인가요? 관리자 2달 전
python onResume.py에서 막혔습니다. 해당 오류는 어떤 오류인가요? onResume.py 소스

1
장재동 프로필

ssl pinning 실습 apk파일은 어디서 다운받을 수 있나요? 장재동 2달 전
이메일로 요청해야 되나요? 아니면 다른 링크가 있나요?

2
관리자 프로필

파이썬 바인딩 관련하여 오류나네여 관리자 2달 전
다른 분들이 수정하신대로 timeout=10 했는데 오류가 납니다 onresume.py  python onResume.py 답변감사합니다.

1
관리자 프로필

인스턴스화된 객체찾기 강의보고 있는데 Failed 뜨네요 관리자 2달 전
attaching... 하면서 Failed 뜹니다  녹스에서 chrome 켜져있는 상태에서,  frida -U -l instance_chrome.js com.android.chrome 명령어 입력 했구요 아래는 instance_chrome.js 소스입니다.

1
이응주 프로필

static 메소드 후킹후 콜...문제 이응주 2달 전
uncrackable 1번을 풀면서 복호화 하는 과정중 static 함수를 후킹하여 작성하여 실행했지만 코드로 부를때는 hookMethod 라는 글이 안나옵니다 그러나 후킹은 제대로 된건지 success  This is the correct secret 문구는 뜹니다. 함수 부르는 구문이 문제가 있는건지 후킹하기전 메소드가 불러지는건지 잘 모르겠습니다. import frida, sysdef on_message(message, data): if message['type'] == 'send': print(message['payload']) else: print(message)jsCode = """setImmediate(function(){ Java.perform(function() { var aClass = Java.use("sg.vantagepoint.uncrackable1.a"); aClass.a.overload("java.lang.String").implementation = function(arg) { send("hookMethod"); return true; } Java.choose("sg.vantagepoint.uncrackable1.MainActivity", { onMatch :function (instance) { var string = Java.use("java.lang.String"); var result = aClass.a(string.$new("aaa")); send("result = "); }, onComplete : function () { send("End"); } }) })});"""process = frida.get_usb_device().attach("owasp.mstg.uncrackable1")script = process.create_script(jsCode)script.on('message', on_message)script.load()sys.stdin.read()

2
관리자 프로필

frida -U com.android.chrome -l chrome.js 관리자 3달 전
강의에는 해당명령어 입력시 주룩주룩 클래스 목록들이 뜨는데,  제가 입력시에는 딱 한줄 뜨네요 상관없는건가요?

1
관리자 프로필

프리다 버전을 다시 설치했는데, 사진처럼 이전버전을 물고있는것같아요 관리자 3달 전
말씀하신대로 12.6.11버전 설치했구요. adb push로 녹스앱에 새버전 파일 넣고, 실행시킨 상태입니다.  pip install frida-tools==2.2.0 pip install frida==12.6.11 이전에 설치했던 12.8.20버전이 남아있어서 안되는것 같습니다. 깔끔하게 삭제하는 방법이 있나요?

3
김건호 프로필

chrome.js 파일은 어디에 있나요? 김건호 3달 전
chrome.js 파일은 어디에 있나요?

4
관리자 프로필

테스트파이썬 바인딩 코드가 어디에 있을까요? 관리자 3달 전
안녕하세요 프리다 기본명령어 활용 강의보다가 저도 같은 부분에서 막혀서 질문드립니다.  frida-ps -U 명령은 먹히지만, frdia-ps -D 127.0.0.1:62001 명령은 먹히지 않네요.. 동일한 증상이 있는 질문글이 있어서 수정하려고 하는데,  테스트파이썬 바인딩 코드가 어디에 있을까요? 수정방법 알려주시면 감사하겠습니다

1
장재동 프로필

a 메소드 implementation 장재동 3달 전
안녕하세요. 이번강의를 듣던 중 혹시 다른방법도 가능한지 궁금하여 질문 드립니다. 강의에서는 java.lang.System의 exit 메소드를 변경하였는데 MainActivity의 a메소드 자체를 implementation할수는 없는 건지 궁금합니다. setImmediate(function(){ Java.perform(function(){ var main = Java.use("sg.vantagepoint.uncrackable1.MainActivity") console.log(main) main.a.implementation = function(arg){ console.log(arg) console.log("a method called!") } }) }) 위와 같은 코드 작성후 frida를 실행하여보았지만 작동하지 않았습니다. 프리다 버전은 강의와 동일하게 설정하였습니다.

1
장재동 프로필

-f 옵션으로 실행시 Java.choose가 인스턴스를 잡아내지 못합니다. 장재동 3달 전
강의 FridaLab 예제 문제 2번에서 아래와 같은 스크립트로  frida를 실행하였습니다. frida -U --no-pause -f uk.rossmarks.fridalab -l test.js Java.perform(function(){ var chall02 Java.choose("uk.rossmarks.fridalab.MainActivity",{ onMatch : function(instance){ send("[*] instance : " + instance) chall02 = instance }, onComplete : function(){ send("[*] chall 02 complete!!") } }) chall02.chall02() }) TypeError: cannot read property 'chall02' of undefined at [anon] (../../../frida-gum/bindings/gumjs/duktape.c:56618) at /ever.js:12 at frida/node_modules/frida-java-bridge/lib/vm.js:11 at frida/node_modules/frida-java-bridge/index.js:389 at frida/node_modules/frida-java-bridge/index.js:374 at we (frida/node_modules/frida-java-bridge/lib/class-factory.js:598) at frida/node_modules/frida-java-bridge/lib/class-factory.js:581 실행 하면 이러한 오류가 발생합니다.  -f옵션 없이 앱이 실행 중인 상태에서 frida를 실행하면 인스턴스를 잡아 문제는 풀 수 있었으나, -f 옵션에서는 왜 인스턴스를 잡아내지 못하는지 궁금합니다.

1
김건호 프로필

프리다 설치 시 아래와 같은 오류가 발생합니다. (python 3.7.7) 김건호 3달 전
(py3) C:\Users\keshk>pip install frida-tools Processing c:\users\keshk\appdata\local\pip\cache\wheels\07\02\82\8ee969ea132cc8c1055105d89f752918005818683d68f09af6\frida_tools-7.2.0-py3-none-any.whl Collecting prompt-toolkit<4.0.0,>=3.0.3   Using cached prompt_toolkit-3.0.4-py3-none-any.whl (351 kB) Collecting colorama<1.0.0,>=0.2.7   Using cached colorama-0.4.3-py2.py3-none-any.whl (15 kB) Collecting frida<13.0.0,>=12.8.12   Using cached frida-12.8.18.tar.gz (7.2 kB) Collecting pygments<3.0.0,>=2.0.2   Using cached Pygments-2.6.1-py3-none-any.whl (914 kB) Collecting wcwidth   Using cached wcwidth-0.1.9-py2.py3-none-any.whl (19 kB) Building wheels for collected packages: frida   Building wheel for frida (setup.py) ... error   ERROR: Command errored out with exit status 1:    command: 'C:\Users\keshk\anaconda3\envs\py3\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\keshk\\AppData\\Local\\Temp\\pip-install-wvfcn1m9\\frida\\setup.py'"'"'; __file__='"'"'C:\\Users\\keshk\\AppData\\Local\\Temp\\pip-install-wvfcn1m9\\frida\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d 'C:\Users\keshk\AppData\Local\Temp\pip-wheel-rktrjx40'        cwd: C:\Users\keshk\AppData\Local\Temp\pip-install-wvfcn1m9\frida\   Complete output (13 lines):   running bdist_wheel   running build   running build_py   creating build   creating build\lib.win-amd64-3.7   creating build\lib.win-amd64-3.7\frida   copying frida\core.py -> build\lib.win-amd64-3.7\frida   copying frida\__init__.py -> build\lib.win-amd64-3.7\frida   running build_ext   error: HTTP Error 503: Backend is unhealthy   looking for prebuilt extension in home directory, i.e. C:\Users\keshk/frida-12.8.18-py3.7-win-amd64.egg   prebuilt extension not found in home directory, will try downloading it   querying pypi for available prebuilds   ----------------------------------------   ERROR: Failed building wheel for frida   Running setup.py clean for frida Failed to build frida Installing collected packages: wcwidth, prompt-toolkit, colorama, frida, pygments, frida-tools     Running setup.py install for frida ... error     ERROR: Command errored out with exit status 1:      command: 'C:\Users\keshk\anaconda3\envs\py3\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\keshk\\AppData\\Local\\Temp\\pip-install-wvfcn1m9\\frida\\setup.py'"'"'; __file__='"'"'C:\\Users\\keshk\\AppData\\Local\\Temp\\pip-install-wvfcn1m9\\frida\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\keshk\AppData\Local\Temp\pip-record-j3joqp7m\install-record.txt' --single-version-externally-managed --compile --install-headers 'C:\Users\keshk\anaconda3\envs\py3\Include\frida'          cwd: C:\Users\keshk\AppData\Local\Temp\pip-install-wvfcn1m9\frida\     Complete output (13 lines):     running install     running build     running build_py     creating build     creating build\lib.win-amd64-3.7     creating build\lib.win-amd64-3.7\frida     copying frida\core.py -> build\lib.win-amd64-3.7\frida     copying frida\__init__.py -> build\lib.win-amd64-3.7\frida     running build_ext     error: HTTP Error 503: Backend is unhealthy     looking for prebuilt extension in home directory, i.e. C:\Users\keshk/frida-12.8.18-py3.7-win-amd64.egg     prebuilt extension not found in home directory, will try downloading it     querying pypi for available prebuilds     ---------------------------------------- ERROR: Command errored out with exit status 1: 'C:\Users\keshk\anaconda3\envs\py3\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\keshk\\AppData\\Local\\Temp\\pip-install-wvfcn1m9\\frida\\setup.py'"'"'; __file__='"'"'C:\\Users\\keshk\\AppData\\Local\\Temp\\pip-install-wvfcn1m9\\frida\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\keshk\AppData\Local\Temp\pip-record-j3joqp7m\install-record.txt' --single-version-externally-managed --compile --install-headers 'C:\Users\keshk\anaconda3\envs\py3\Include\frida' Check the logs for full command output.

1
지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강의들을
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스