잘하는 모의해커같은 경우에는 후킹을 통해 우회를 하곤 하지만, 오늘 설명하는 내용은 단순히 디버깅 탐지기능 적용하는지 여부에 대해서만 설명을 하려고 한다. 1.디버깅 탐지기능 적용 여부란? - 디버깅이란 프트웨어가 예상대로 작동하지 않으면 컴퓨터 프로그래머는 오류가 일어나는 원인을 알아내기 위해 코드를 분석하는 행위이지만, 디버깅을 통해 코드 흐름 및 메모리 상태 분석 등 프로그램 역분석을 할 수 있으므로 앱 개발자들은 안티 디버깅 기능을 적용하여야 한다. 2. 디버깅 탐지기능 적용 여부 판단하는 방법 0. 테스트 할 앱 실행 1. IDA 설치 후 C:\Program Files\IDA 7.0\dbgsrv에서 android_server64(본인 버전에 맞는 버전) 핸드폰에 다운로드 adb push andr..
APP
핸드폰 초기화 후 개발자 옵션으로 OEM 잠금 해제를 시도하려 하였는데 개발자 옵션에서 OEM 잠금해제가 보이지 않아 몇시간 동안 끙끙 앓고 있었다. 해결방법은 간단하다 구글이나 삼성 계정으로 로그인 하면 된다.
A90 핸드폰을 공장초기화 하고 다시 루팅을 하려다가 다음과 같이 "Reason vbmeta : Error verifying vbmeta image : HS_IMTHSGAUEMSAC" 에러가 발생하였다. 해당 에러는 처음보는 것이기도 하고 취소를 시행하면 재부팅 후 다시 다음과 같은 화면이 발생하여서 많이 난감하였다. 해당 에러를 chatGPT에게 물어보니 부트로더가 시스템에 설치된 소프트웨어의 무결성을 확인할 수 없어 발생하는 에러라고 한다. 아마 magisk에서 다운받은 AP가 문제였던 것 같다. 내가 해결한 방법은 해당 화면이 뜨면 1. 볼륨 하키 + 종료 버튼 눌러 기기 종료 2. 볼륨 상키 + 볼륨 하키 버튼을 눌러 "다운로드 모드 진입" 3. 볼륨 상키 꾹 누르기 4. 볼륨 상키 누르기 5. ..
공기기로 와이파이 점검 시 일반적으로 와이파이를 잡으면 정상적으로 통신이 되었으나 burp 사용을 위해 프록시를 켤 경우에는 와이파이 연결은 되어있지만 인터넷에 연결할 수 없었다. 해당 사유는 burp 인증서를 설치 안 했기 때문이다. 그래서 공기기에 burp 인증서를 넣고 설치하기로 했다. 우선 인증서를 설치하여 변환해주는 과정은 https://tkdrms568.tistory.com/220 nox 보안 인증서 문제 해결 1. OPENSSL 설치(Git설치) - git-scm.com/download/win-> 디폴트 설치로도 가능 Git - Downloading Package Downloading Git Now What? Now that you have downloaded Git, it's time to..
APK easy tool로 apk 디컴파일을 하다보니 "W: Could not decode attr value, using undecoded value instead: ns=android, name=targetSdkVersion, value=0x0000001f"와 같은 warning이 발생하면서 디컴파일이 계속해서 실패하였다. 원인을 찾아보니 APKtool Version이 예전버전이어서 발생하던 것이었다. 수정법은 간단하다. 1. apktool. jar를 최신버전을 다운로드 받는다. https://bitbucket.org/iBotPeaches/apktool/downloads/ 2. apkeasytool.exe가 설치되어 있는 폴더의 APKTOOL 폴더에서 다운받은 최신버전의 apktool.jar 넣어준다..
DVIA-v2 앱을 실행시킨 후 Jailbreak Detection 메뉴를 선택하면 다음과 같은 화면이 출력된다. 여기서 Jaibreak Test1번 문제를 클릭하게 되면 루팅된 폰에서는 "Device is Jailbroken"이라는 문구가 나온다. 일단 APP을 추출한 후 해당 앱을 압축 해제 한다. 압축을 해제 한 후 폴더에 들어가보면 다음과 같이 DVIA-v2 파일을 확인할 수 있다. 이 파일을 IDA를 통해 열어준다. (open 시 DVIA-v2 파일이 보이지 않을 경우 All files를 탐색하도록 한다.) (IDA를 통해 열어주면 무엇인가 alert 창이 엄청 나오는데 그냥 확인 눌러주면 된다.) IDA를 통해 해당 파일을 열었으면 View -> Open subviews -> Strings을 ..
루팅이 성공 된 경우 Cydia가 깔리게 된다. Cydya 앱을 실행시킨후 소스 -> 편집 -> 추가 -> https://cydia.iphonecake.com -> 완료를 하게되면 AppCake가 설치가 된다. AppCake 누른 후 모든패키지 -> CrackerXI+ -> 설치를 누르면 CrackerXI+가 설치가 된다. CrackerXI+가 설치가되면 Settings에 들어가서 다음과 같이 설정을 해준다. 그 후 AppList에 들어가서 추출을 희망하는 App을 클릭 후 Full IPA를 선택한다. 그 후 3utools를 킨 후 Toolbox 메뉴에서 Open SSH Tunnel을 선택한다. 그 후 CrackerXI 폴더에 들어간다. -> cd /var/mobile/Documents/CrackerXI..
1. 노트북과 아이폰을 동일한 네트워크에 연결을 한다. 2. safari 등 인터넷 앱에서 http:/burp 접속 후 CA Certificate 설치 2.1 설치 과정 중 다음과 같은 메시지가 출려이 된다면 2.2 설정에서 "프로파일이 다운로드됨" 누르면 된다. 3.PortSwigger CA 설치 4. 설정 > 일반 > 정보 > 인증서 신뢰 설정에서 "PortSwigger CA" 신뢰 활성화 5. WIFI > 현재 연결된 와이파이 설정 > HTTP 프록시 구성에서 burp와 동일한 프록시 설정을 해준다. 다음과 같이 설정 후 인터넷 접속 시 다음과 같이 버프에서 ios 패킷을 잡을 수 있다.
SHAREDPREFERENCES CHECK 클릭 시 "Instrumentation is not coorect" Toast 메시지 출력하는 것 확인하였다. JADX-gui를 통해 learnfrida APP 확인 해보니 sharedPreferences.getString의 메소드를 사용하여 "2131689593"이라는 값을 찾아서stringValue 값에 집어 넣는데 만약 값이 없으면 "foobarstring"이라는 값을 stringValue에 넣는 것 같다. 그리고 stringValue 값과 "foobarstring" 값을 비교하여 만약 일치하는 경우 위에 그림처럼 나오는 것이고 아니면 다른 Toast 메시지를 출력하는 방식인 것 같다. stringValue 값을 변조 하여 else문이 동작하도록 후킹코드를..
frida를 실행 시키다보면 이러한 에러가 종종 발생한다. 에러를 대충 해석해보면 이미 프리다 서버가 실행중이어서 발생하는 에러인데 ps 명령어를 입력하면 실행 중인 프리다 서버가 없다. 이럴 때는 "netstat -antp | grep frida" 이용하면 된다. 다음과 같은 명령어를 입력하면 실행중인 frida-server의 포트번호가 나오는데 kill -9를 통해 프리다 서버를 강제 종료 해준다. 그 후 다시 frida-server를 실행 시키면 서버가 정상적으로 실행된다.