본문 바로가기

전체 글174

[Web Hacking] Web Trend 과거의 웹은 새로운 페이지를 보려면 전체 새로고침을 해야 했습니다.지금은 비동기 통신, 실시간 연결 등 기술로 새로고침 없이 더 빠르게 새로운 페이지를 볼 수 있게 되었습니다.이것을 가능하게 해 준 기술을 나열해 보겠습니다. 1. Ajax (Asynchronous JavaScript snd XML)Ajax는 페이지 전체를 새로고침하지 않고, 백그라운드에서 서버와 데이터를 주고받는 기술을 말합니다. 사용자가 버튼을 누르는 등의 행위를 통해 서버에 요청을 보낼 때,브라우저가 필요한 부분만 조용히 서버에 요청을 보내고, 필요한 데이터만 받아 화면 일부를 변경합니다. 조금이라도 변화가 생기면 전체 새로고침을 해야 했던 과거와 달리,현재는 이 기술을 통해 특정 부분의 데이터만 받아와 화면을 갈아 끼웁니다. 이로 .. 2026. 3. 13.
[Tool] APK to smali 디컴파일 도구 Apktool apktool은 jadx랑 비슷하지만, jadx보다 더 기초적인 도구입니다.smali 단위로 리버싱이 가능하며, 변조 후 다시 apk를 생성할 수 있습니다. 1. Windows 래퍼 스크립트 다운로드: apktool.bat 링크를 우클릭하여 '다른 이름으로 링크 저장'을 선택하고 apktool.bat으로 저장합니다.jar 파일 다운로드: Apktool 공식 사이트에서 최신 버전의 apktool_x.x.x.jar를 받습니다.이름 변경: 다운로드한 jar 파일의 이름을 apktool.jar로 바꿉니다.폴더 이동: 위 두 파일(apktool.bat, apktool.jar)을 C:\Windows 폴더에 넣거나, 원하는 폴더(예: C:\apktool)에 넣고 해당 경로를 환경 변수(Path)에 등록합니다. 2. .. 2026. 3. 12.
[Tool] APK 디컴파일 도구 Jadx APK에서 소스코드를 디컴파일할 수 있는 jadx 입니다.CLI 환경에서는 jadx, GUI 환경에서는 jadx-gui를 사용합니다. 1. Windows / Linux https://github.com/skylot/jadx/releases Releases · skylot/jadxDex to Java decompiler. Contribute to skylot/jadx development by creating an account on GitHub.github.com 위 사이트 접속 및 설치파일 다운로드 윈도우는 exe파일 실행Linux는 압축 해제 후 파일 실행 unzip jadx-x.x.x.zip -d jadxcd jadx/bin./jadx-gui 2. macOSHomeBrew로 jadx 설치 brew.. 2026. 3. 12.
[Mobile Hacking] Burp Suite로 Android 패킷 잡기 (CA인증서 설치) Web 진단을 할 때 Burp Suite라는 프록시 도구를 많이 사용합니다.모바일도 Burp Suite를 통해 앱 진단을 할 수 있습니다. 1. Burp Suite 설정 ipconfig /a (또는 ifconfig -a)로 로컬 IP를 확인합니다. Burp Suite의 프록시를 설정합니다.여기서는 8081 포트를 사용했습니다. 2. Android 설정 연결된 Wi-Fi를 수정합니다.Proxy를 수동(manual)로 설정한 뒤 burp에서 설정한 프록시 정보를 그대로 입력합니다. Android에서 http://burp 접속 시 [그림 4]와 같은 페이지가 출력됩니다.오른쪽 위 CA Certificate를 눌러 인증서를 다운로드합니다. 인증서를 직접 실행해서 설치할 수는 없습니다. Android 버.. 2026. 3. 12.
[Mobile Hacking] Android에 Frida 설치 Frida는 Android 등의 다양한 플랫폼에서 동적 코드 삽입(hooking)이나 애플리케이션 동작 분석을 수행할 수 있는 리버스 엔지니어링 도구입니다. Python 기반으로 작동합니다. 보안 테스트를 할 때 필수적인 도구이며, 이를 활용하여 나쁜 짓(루팅 탐지 우회, 게임 핵 제작, 인증 우회 등)의 활용도 가능합니다.1. Frida CLI Tool 설치먼저 Android를 분석할 PC에 Frida CLI Tool을 설치해야 합니다. pip install frida-tools==13.5.0 frida==16.6.6 여기선 16.6.6 버전을 설치합니다. 2. Frida-Server 설치Android 기기 내에 frida-server를 설치해야 합니다. 먼저 아래 명령어를 수행하여 아키텍쳐를 확인합니.. 2026. 3. 12.
[Mobile Hacking] rootAVD 이용한 Android 루팅 (Android Studio) 저번 글에서 설치한 안드로이드 에뮬레이터 디바이스를 루팅해 보도록 하겠습니다. 루팅에는 여러 방법이 있지만, 여기서는 rootAVD를 활용하여 설치해 보겠습니다. 먼저 에뮬레이터를 실행합니다. 아무 디렉터리 하나 만들고 github에서 rootAVD를 가져옵니다.git clone https://github.com/newbit1/rootAVD.gitcd rootAVD 아래의 명령어를 실행하면 버전 별로 어떤 커맨드를 통해 루팅할 수 있는지 알려줍니다../rootAVD.bat ListAllAVDs PC에 설치된 모든 SDK에 대한 설치방법이 출력됩니다.SDK 많이 설치했으면 많이 출력됩니다. 일반적으로는./rootAVD.sh system-images/android-33/google_apis/arm64-.. 2026. 3. 12.
[Mobile Hacking] Android 에뮬레이터 추가 및 실행 (Android Studio) Android Studio 설치 시 apk를 테스트할 수 있는 에뮬레이터도 같이 설치됩니다.Device Manager를 통해 특정 버전의 안드로이드를 설치 후 실행할 수 있습니다. Android Studio에서 Virtual Device Manager에 들어갑니다. 생성된 디바이스를 확인할 수 있습니다. 처음 실행하시면 이 부분이 비어있습니다. 왼쪽 위 + 버튼을 통해 디바이스를 생성할 수 있습니다. 작은 폰, 적당한 폰 또는 Pixel 디바이스를 선택할 수 있습니다.하고 싶은 거 선택 후 다음을 클릭합니다. 해당 기기의 OS를 선택합니다. 원하는 OS를 선택하면 됩니다. (주의: 루팅 용도로 사용할 경우 Services를 Google APIs 선택을 권장합니다.) Finish 클릭하면 자동으로.. 2026. 3. 11.
[Mobile Hacking] Android SDK 설치 및 제거 관리 (Android Studio) Android Studio를 설치하면 Android SDK 버전을 선택하여 설치할 수 있습니다. Android Studio의 설정에서 Languages&Frameworks의 Android SDK에 들어가면해당 PC에 설치된 Android SDK를 조회할 수 있습니다.(Show Package Details 체크 시 더 자세한 버전의 SDK 조회가 가능합니다.) 설치하고 싶은 SDK 체크하면 되며,삭제를 하고 싶을 경우 체크 표시를 해제하면 됩니다. Apply 또는 OK 클릭 시 변경사항을 확인하는 대화상자가 출력됩니다.확인 후 OK 클릭하면 적용됩니다. 2026. 3. 11.
macOS 시스템 데이터 정리 시스템 데이터가 무겁게 쌓이는 것은 macOS의 치명적인 단점입니다.아무리 사용자에게 좋은 환경을 선사한다고는 하지만, 이런 식으로 제대로 된 파일 관리를 하지 못하고 용량을 계속 잡아먹는 것은 유쾌한 경험은 아닙니다.애플리케이션을 지워도 많이 남아있는 찌꺼기들, 주기적으로 방치되는 거대한 캐시 파일 등결국 꼬우면 나중에 더 큰 거 사라는 게 아닙니까? 시도할 만한 방법들을 모아서 이 글에 작성할 것이며, 주기적으로 업데이트 할 예정입니다.TIP:finder 활성화 상태에서 command + Shift + G 입력 시 나오는 창에서디렉터리 경로 입력하면 바로 해당 경로로 이동할 수 있습니다. 휴지통 비우기휴지통을 깨끗하게 비웁니다.이건 당연한 거라 시스템 캐시 삭제 ~/Library/Caches 디렉터.. 2026. 3. 11.
[CTF] CCE2022 reborn of php Write-Up | Web 2022년 사이버공격방어대회 (CCE) reborn of php Write Up 입니다.문제에 접속하면 다음과 같은 페이지가 출력됩니다.아무 페이지에 들어가서 URL을 확인해 보았습니다. b 인자와 a 인자가 있는 것을 확인할 수 있습니다.이 인자들의 역할은 lib/controller.lib.php 코드에서 확인할 수 있습니다.b가 board, a가 action인데, 이 두 개를 결합하여 path를 설정합니다.[그림 3.2]를 예로 들면, b = register, a = index이므로path는 register/index가 되고, 26번 라인으로 인해 최종적으로 register/index.php가 완성됩니다.만약 11라인으로 인해 필터링에 걸리거나, 해당 경로에 파일이 존재하지 않으면 path는 main.. 2026. 3. 10.