보안 및 개발/MOBILE47 [Android] frida 환경 구축 1. adb shell (핸드폰 설정 > USB 디버깅 허용해주기) - 삼성폰은 USB 드라이버 설치 필요한 것으로 알고있음 (설치 : http://local.sec.samsung.com/comLocal/support/down/kies_main.do?kind=usb) 2. PC에 python 설치 및 frida 설치 2019/10/07 - [Mobile/iOS] - [iOS] frida 환경 구성 내용과 비슷하다. - python 설치 : https://www.python.org/downloads/ 다운로드하고 설치할 때 add to path 체크해서 하면 편함 - pip 설치 : https://pip.pypa.io/en/latest/installing/#do-i-need-to-install-pip 참고.. 2020. 2. 11. [Android] MainActivity 찾기 MainActivity 안드로이드에서는 처음 실행되는 MainActivity에 onCreate 함수부터 시작된다. 그런데 Main Activity는 개발자 마음대로 이름을 변경할수 있다. 모든 Activity는 AndroidManifest.xml 에 등록이 되어있어야 사용이 가능하다. apktool을 이용하여 디컴파일하면 AndroidManifest.xml 파일을 볼 수 있다. 이 파일을 이용해 처음 실행되는 MainActivity를 찾을 수 있다. AndroidManifest.xml 파일에 부분을 모두 찾는다. 그리고 해당 태그 하위에 태그에 런처 카테고리 태그를 사용한 액티비티를 찾으면된다. 해당 태그가 있다면 액티비티 태그에 android:name을 찾는다. 이 부분이 해당 name이 처음 구동되는.. 2020. 2. 10. [Android] apktool을 이용한 디컴파일 및 리패키징 디컴파일 apktool은 apk파일로 압축되어 있는 것을 resources.arsc, classes.dex, XML 파일들을 디버깅(debug)파일 형태로 변환을 해주고 이를 수정한 뒤에 다시 수정된 apk파일로 생성(build)할 수 있는 도구이다. 기본적으로 java 최소 1.8? 이상의 버전이 설치되어 있어야한다. java -version 명령어를 통해 설치여부를 확인할 수 있다. 설치되어 있지않다면 https://java.com/ko/download/win10.jsp 지금 바로 설치!! apktool 다운로드 링크 : https://ibotpeaches.github.io/Apktool/install/ 윈도우 환경 Windows용 wrapper script 을 다운로드 한다. (마우스 우클릭 메뉴 .. 2020. 2. 10. [Android] SuCTF 2014 Reverse200 2014년 Su (Sharif University) CTF 에서 출제된 Reverse200 문제입니다. apk를 실행해보면 다음과 같은 앱이 동작합니다. 디컴파일을 해봐도 알 수 있지만, 초점은 시리얼 키를 찾아내는 것으로 보입니다. 여러 버튼을 눌러보니, 오른쪽 상단의 설정모양 버튼을 클릭하면 Product Key를 입력하라고 합니다. 아무 문자열이나 넣고 Continue를 눌러보니 다음과 같은 문자열을 출력해 줍니다. 이제 JEB로 디컴파일하여 분석해 봅시다. MainActivity를 보면, if(KeyVerifier.isValidLicenceKey(this.val$userInput.getText().toString(), MainActivity.this.app.getDataHelper().getCon.. 2020. 1. 29. [Android] OWASP UnCrackable 3 미완료 ㅠ apk 다운로드 링크 JEB로 apk를 디컴파일해 MainActivity를 보자. 가장 먼저 눈에 띄는 것은 pizzapizzapizzapizzapizz 과 같은 xorkey string을 이용하고 있다는 것이다. 루팅탐지 다음과 같이 루팅을 탐지하고 showDialog() 함수를 이용하여 OK버튼 클릭 시, System.exit()함수를 호출하는 것을 알 수 있다. sg.vantagepoint.util의 RootDetection을 호출하는데, checkRoot 3가지 방법을 볼 수 있다. package sg.vantagepoint.util; import android.os.Build; import java.io.File; public class RootDetection { public RootDetec.. 2020. 1. 21. [Android] OWASP UnCrackable 2 apk는 다음 링크에서 받을 수 있다. https://github.com/OWASP/owasp-mstg/blob/master/Crackmes/Android/Level_02/UnCrackable-Level2.apk apk를 실행시키면 루팅탐지를 한다. 우회하는 방식은 앞에서 했던 방식과 같다. 루팅탐지를 우회하면 string을 입력하는 화면이 나온다. Nope을 우회하여 Success를 띄우도록 해야한다. Success를 위해서는 this.m.a(v4) 함수를 호출하는데, 그 함수는 다음과 같다. 나는 a 함수의 return 값이 false이길래, 이걸 true로 바꿔주니까 우회가 됐다. 하지만, Success로 가는 문자열을 알아내는 방식이 더 공부가 되는 방법이다. 이 풀이 방법은 아래에 다시 이어서 .. 2020. 1. 20. 이전 1 2 3 4 5 6 7 8 다음 반응형