장뽕뽕의 개발일기
close
프로필 배경
프로필 로고

장뽕뽕의 개발일기

  • 분류 전체보기 (158)
    • Java (61)
      • Springboot (28)
      • Architecture (0)
      • Algorithm (17)
      • Trouble-Shooting (3)
      • Basic (13)
    • Security (24)
      • Practice (4)
      • System (7)
      • Network (4)
      • Application (9)
    • Mobile (0)
      • Android (0)
      • Flutter (0)
    • JavaScript (16)
      • Node.js (16)
    • Linux (8)
    • Network (6)
    • Docker (4)
    • Project (5)
      • SecuriSuite (5)
    • Certificate (3)
      • 정보처리기사 (1)
      • 정보보안기사 (2)
    • Legacy (27)
      • JS+PHP+SQL (27)
    • 루트권한 없는 나의 하루 (4)
  • 홈
Android SSL Pinning - 런타임 우회

Android SSL Pinning - 런타임 우회

정보보안기사 실기시험 중에 이 개념을 마주친 적이 있다.. 인증서 고정(Certificate Pinning)은 앱이 서버가 보내온 인증서를 직접 확인해서 미리 알고 있는 값과 다르면 통신을 아예 끊어버리는 안전장치이다. if (앱이 Pinning 하고 있다면) : if (프록시가 준 인증서 == 앱이 알고 있는 핀값) 통과 else 연결 거부 (TLS 핸드셰이크 중단) 우회 방법에는 대표적으로- APK를 디컴파일해서 network_security_config나 핀 코드 자체를 제거하는 방법- 런타임에서 후킹 해서 검증 함수를 통과시키는 방법등이 있다.첫 번째 방법은 영구적이지만 번거로우며, 재빌드가 필요하다.나는 두 번째 방법을 선택했다.. 이 앱은 Kotlin으로 만들었고, 예전에 Kotlin..

  • format_list_bulleted Security/Application
  • · 2025. 9. 29.
  • textsms

Frida JS/Hooking 문법 규칙

자바 개발자 관점에서 보면 개념은 익숙한 것들이 많지만Frida의 JavaScript, 후킹 문법 특유의 규칙이 조금 어색했다..코드 블록을 참조해가며 각 블록의 목적과 동작 원리를 이해해보자.. Java.perform(function () { // ...후킹 코드들...}); Java.perform(function () { ... })Frida가 Android의 Java VM에 안전하게 접근할 수 있을 때 내부 콜백을 실행한다는 뜻모든 Java.use, overload, implementation 같은 Java 관련 API 호출은 반드시 이 블록 안에서 해야 안정적으로 동작함!즉, Java VM이 준비되기 전이라면 이 블록 안에서 기다려서 실행하게 됨. var A = Java.use("sg.van..

  • format_list_bulleted Security/Application
  • · 2025. 9. 21.
  • textsms
Android UnCrackable Level 1

Android UnCrackable Level 1

실습에 사용한 앱은 OWASP Mobile Security Testing Guide(UnCrackable Level 1) APK이다. 1. Jadx로 클래스/메서드 확인Frida로 후킹을 하기 위해서는 정확한 클래스명과 메서드명을 알아야 한다.​APK 디컴파일 및 MainActivity 확인 암호화 관련 클래스 확인 a(String str) → 문자열 검증b(String str) → 문자열 → 바이트 배열 변환내부 AES 처리: sg.vantagepoint.a.a.a(byte[], byte[])2. Frida attach 및 환경 준비앱 분석을 위해 Frida를 사용하기 전, 먼저 환경을 준비했다.​A. 프로세스 목록 확인앱이 실행 중인지, Frida에서 접근 가능한지 확인하기 위해 프로세스 목록을 가져..

  • format_list_bulleted Security/Application
  • · 2025. 9. 4.
  • textsms

Android 앱 Frida 분석을 위한 개발환경 구축

이전부터 윈도우 실행 프로그램(EXE 파일)에 대한 리버스 엔지니어링 경험이 있던 나는모바일 앱에도 관심이 생겨 실습을 진행해 봤다.원리는 비슷하지만, 환경과 접근 방식에서 조금 다른 점이 있었다.​윈도우 환경에서는 OllyDbg를 주로 사용했다.어셈블리어를 한 줄씩 트래킹 하며 각 레지스터와 스택의 값을 분석하고,함수 호출과 분기 로직을 이해하는 것이 핵심이었다.​모바일 환경에서는 Frida를 사용했다.Frida는 단순히 디버깅만 하는 것이 아니라,앱의 메서드를 실시간으로 후킹하고 소스코드 수준에서 값을 변조할 수 있다.​정말 매력적이면서도 흥미로웠다.개발환경 구성- 호스트 OS: Windows 10- Android Studio + AVD: Pixel 9 (Google APIs 버전)- ADB: And..

  • format_list_bulleted Security/Application
  • · 2025. 9. 4.
  • textsms
reversing.kr Music Player 풀이

reversing.kr Music Player 풀이

http://reversing.kr/ Reversing.KrThis site tests your ability to Cracking & Reverse Code Engineering. Now Challenge a problem for each environment. (Windows, Linux, .Net, Flash, Java, Python, Mobile..) Admin E-Mail: gogil@reversing.krreversing.kr해당 사이트에서 여러 유형들의 예제 프로그램을 다운로드해 분석할 수 있습니다.여기서 네 번째 문제인 Music Player 프로그램을 가져와서 실습을 진행해 봤습니다.  파일에 첨부된 readme 파일부터 읽어봅니다.해당 MP3 플레이어는 1분까지만 들을 수 있게 되어있고..

  • format_list_bulleted Security/Application
  • · 2025. 2. 16.
  • textsms
reversing.kr Unpack 풀이

reversing.kr Unpack 풀이

http://reversing.kr/ Reversing.KrThis site tests your ability to Cracking & Reverse Code Engineering. Now Challenge a problem for each environment. (Windows, Linux, .Net, Flash, Java, Python, Mobile..) Admin E-Mail: gogil@reversing.krreversing.kr해당 사이트에서 여러 유형들의 예제 프로그램을 다운로드해 분석할 수 있습니다.여기서 세 번째 문제인 Easy Unpack 프로그램을 가져와서 실습을 진행해 봤습니다. 파일에 첨부된 readme 파일부터 읽어봅니다. OEP를 찾으라네요.OEP는 패킹된 프로그램의 실행되는 실..

  • format_list_bulleted Security/Application
  • · 2025. 2. 16.
  • textsms
  • navigate_before
  • 1
  • 2
  • navigate_next
공지사항
  • 장뽕뽕 사이트를 오픈합니다.
  • 개발 일기 사이트 이전 안내
전체 카테고리
  • 분류 전체보기 (158)
    • Java (61)
      • Springboot (28)
      • Architecture (0)
      • Algorithm (17)
      • Trouble-Shooting (3)
      • Basic (13)
    • Security (24)
      • Practice (4)
      • System (7)
      • Network (4)
      • Application (9)
    • Mobile (0)
      • Android (0)
      • Flutter (0)
    • JavaScript (16)
      • Node.js (16)
    • Linux (8)
    • Network (6)
    • Docker (4)
    • Project (5)
      • SecuriSuite (5)
    • Certificate (3)
      • 정보처리기사 (1)
      • 정보보안기사 (2)
    • Legacy (27)
      • JS+PHP+SQL (27)
    • 루트권한 없는 나의 하루 (4)
최근 글
인기 글
최근 댓글
태그
  • #algorithm
  • #Spring
  • #phpMyAdmin
  • #springboot
  • #dothome
  • #java
  • #javascript
  • #html
  • #php
  • #SQL
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바