Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
jadx-magic-strings — DEX 파일 및 디컴파일된 Android 코드에서 발견된 문자열 상수로부터 메서드 이름, 클래스 참조 및 소스 파일 경로를 추출하는 JADX 플러그인입니다. | Kitploit
도구/GitHubGitHub/0rshemesh/jadx-magic-strings
Android SecurityStatic AnalysisCode AnalysisReverse EngineeringInformation GatheringMalware AnalysisMobile SecurityBinary Analysis
GitHub0rshemesh/jadx-magic-strings

jadx-magic-strings

DEX 파일 및 디컴파일된 Android 코드에서 발견된 문자열 상수로부터 메서드 이름, 클래스 참조 및 소스 파일 경로를 추출하는 JADX 플러그인입니다.

저장소 보기
399개월 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

JADX Magic Strings 플러그인

문자열 상수에서 정보를 추출하는 JADX 플러그인입니다.

기능

디컴파일된 코드의 문자열 상수를 추출하고 분석하여 다음을 찾습니다:

  1. 소스 파일 참조: 문자열 상수에서 Java/Kotlin 소스 파일(.java, .kt, .kts, .scala, .groovy)에 대한 참조를 탐지합니다.
  2. 메서드 이름 후보: 정규식 패턴을 사용하여 문자열에서 잠재적인 메서드 이름을 식별합니다.
  3. 문자열 분석: 모든 문자열 상수와 관련 메서드 및 클래스를 수집합니다.

설치

옵션 1: GitHub에서 설치 (권장)

이 플러그인이 GitHub에 게시된 경우 직접 설치할 수 있습니다:

root@kitploit:~
jadx plugins --install "github:0rshemesh:jadx-magic-strings"

옵션 2: 소스에서 빌드 및 설치

  1. 저장소 클론:

    root@kitploit:~
    git clone https://github.com/0rshemesh/jadx-magic-strings.git
    cd jadx-magic-strings
    
  2. 플러그인 빌드:

    root@kitploit:~
    ./gradlew build
    
  3. 플러그인 설치:

    root@kitploit:~
    jadx plugins --install-jar build/libs/jadx-magic-strings-1.0.1.jar
    

    또는 JAR 파일을 JADX 플러그인 디렉토리에 수동으로 복사:

    • Linux/Mac: ~/.local/share/jadx/plugins/dropins/
    • Windows: %APPDATA%\jadx\plugins\dropins\

플러그인 빌드

플러그인은 독립적으로 빌드할 수 있습니다:

root@kitploit:~
./gradlew build

플러그인 JAR은 다음 위치에 생성됩니다:

root@kitploit:~
build/libs/jadx-magic-strings-1.0.1.jar

요구 사항:

  • Java 11 이상
  • Gradle (또는 포함된 Gradle 래퍼 사용: ./gradlew)

사용법

JADX GUI에서

  1. 플러그인 설치 (위 설치 섹션 참조)

  2. JADX GUI 실행:

    root@kitploit:~
    jadx-gui
    
  3. JADX GUI에서 APK/DEX 파일 열기

  4. 디컴파일 완료를 기다립니다 (디컴파일 후 플러그인이 자동으로 실행됨)

  5. 플러그인 접근:

    • 메뉴 바의 Plugins 메뉴로 이동
    • "Magic Strings: Show Results" 클릭
    • 여러 탭이 있는 대화 상자가 열립니다:
      • 소스 파일: 탐지된 소스 파일 경로와 참조를 표시하는 트리 뷰
      • 상위 후보 + 소스 파일: 소스 파일별로 그룹화된 최고 점수 메서드 후보의 결합 뷰
      • 메서드 후보 (필터링됨): 필터링된 메서드 이름 후보를 표시하는 테이블
      • 모든 문자열: 추출된 모든 문자열 상수를 표시하는 테이블

Magic Strings 플러그인 예시

JADX CLI에서

플러그인은 디컴파일 중 자동으로 실행되지만, 결과를 보기 위한 CLI 인터페이스는 없습니다. GUI를 사용하여 추출된 정보를 확인하세요.

작동 방식

  1. 디컴파일 후, 플러그인은 모든 클래스의 모든 메서드를 스캔합니다.
  2. 명령어 노드(CONST_STR 명령어)에서 문자열 상수 추출
  3. 정규식 패턴을 사용하여 문자열 분석:
    • 소스 파일: .java, .kt 등으로 끝나는 파일 경로 일치
    • 메서드 이름: 메서드 이름처럼 보이는 카멜케이스 패턴 일치
  4. GUI를 통해 접근 가능한 데이터 구조에 결과 저장

사용 예시

  • 리버스 엔지니어링: 프로젝트 구조를 드러낼 수 있는 원본 소스 파일 이름 찾기
  • 디난독화: 디버그 문자열이나 오류 메시지에서 메서드 이름 식별
  • 코드 분석: 문자열과 메서드 간의 관계 이해
  • 악성코드 분석: 기능을 나타낼 수 있는 흥미로운 문자열 추출

제한 사항

  • 플러그인은 디컴파일이 완료된 후에만 작동합니다.
  • 문자열 추출은 디컴파일되는 코드에 따라 달라집니다. (일부 난독화된 코드는 접근 가능한 문자열이 없을 수 있음)
  • 메서드 이름 탐지는 휴리스틱을 사용하므로 오탐이 발생할 수 있습니다.
  • 소스 파일 탐지는 파일 경로를 포함하는 문자열에 의존합니다. (항상 존재하는 것은 아님)

문제 해결

플러그인이 메뉴에 나타나지 않음:

  • 플러그인이 올바르게 설치되었는지 확인
  • 플러그인 JAR이 플러그인 디렉토리에 있는지 확인
  • 서비스 파일이 존재하는지 확인: META-INF/services/jadx.api.plugins.JadxPlugin
  • 호환되는 JADX 버전(1.5.2+)을 사용하고 있는지 확인

결과가 표시되지 않음:

  • 코드에 관련 문자열이 없을 수 있습니다.
  • 다른 APK/DEX 파일을 디컴파일해 보세요.
  • 일부 난독화된 코드는 추출 가능한 문자열이 없을 수 있습니다.

빌드 오류:

  • Java 11 이상을 사용하고 있는지 확인
  • ./gradlew clean build를 실행하여 전체 재빌드
  • build.gradle.kts의 JADX 버전이 Maven Central에서 사용 가능한 버전과 일치하는지 확인

작성자

0rshemesh가 만들고 유지 관리합니다.

  • GitHub: @0rshemesh
  • 저장소: jadx-magic-strings
  • 이메일: [email protected]

라이선스

이 플러그인은 Apache License 2.0에 따라 라이선스가 부여됩니다. 자세한 내용은 LICENSE 파일을 참조하세요.

도구 다운로드