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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
wa-crypt-tools — WhatsApp .crypt12, .crypt14 및 .crypt15 파일을 관리합니다. | Kitploit
도구/GitHubGitHub/eldavoo/wa-crypt-tools
Android SecurityEncryption/Decryption ToolsMobile ForensicsData RecoveryDigital ForensicsCryptography
GitHubeldavoo/wa-crypt-tools

wa-crypt-tools

WhatsApp .crypt12, .crypt14 및 .crypt15 파일을 관리합니다.

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Coverage Status

WhatsApp Crypt Tools

WhatsApp 및 WA Business의 .crypt12, .crypt14, .crypt15 파일을 쉽게 복호화하고 암호화하세요! 복호화하려면 키 파일 또는 64자 길이의 키가 필요합니다. 백업이 crypt14인 경우 키 파일 이름은 "key"이고, 백업이 crypt15(암호화된 E2E 백업)인 경우 "encrypted_backup.key"입니다. WhatsApp 포렌식을 위한 더 완전한 도구 모음을 찾고 있다면 whapa.를 확인하세요.

빠른 설치

클라우드 - Google Colab

컴퓨터에 프로그램을 설치하고 싶지 않다면, 이 프로그램을 Google Colab 에서 실행할 수 있습니다.

로컬 - Jupyter

Jupyter에 익숙하다면(익숙하지 않다면 여기 를 읽어보세요), 프로그램의 노트북 버전 을 사용할 수 있습니다.

로컬 - pip

pip를 통해 이 스크립트를 패키지로 설치할 수 있습니다. 다음을 실행하세요:

root@kitploit:~
python -m pip install wa-crypt-tools

안정 버전의 경우이고, 다음은

root@kitploit:~
python -m pip install git+https://github.com/ElDavoo/wa-crypt-tools

개발 버전의 경우입니다.

다른 패키지와의 충돌을 피하려면 가상 환경을 만들어야 할 수도 있습니다.

빠른 시작

wadecrypt로 파일 복호화

root@kitploit:~
usage: wadecrypt [-h] [-nm] [-bs BUFFER_SIZE] [-nd] [-v] [-f] [keyfile] [encrypted] [decrypted]

따라서 crypt12/14/15를 복호화하려면 프로그램에 키 파일, 암호화된 파일, 출력 파일 이름을 제공하면 됩니다.

예시

root@kitploit:~
$ wadecrypt encrypted_backup.key msgstore.db.crypt15 msgstore.db
key15.py:51     : [I] Crypt15 / Raw key loaded
wadecrypt.py:271        : [I] Done

waencrypt로 파일 암호화 (BETA)

root@kitploit:~
usage: waencrypt [-h] [-f] [-v] [--enable-features [ENABLE_FEATURES ...]] [--max-feature MAX_FEATURE]
                 [--multi-file] [--type {12,14,15}] [--iv IV] [--reference REFERENCE] [--noparse]
                 [--wa-version WA_VERSION] [--jid JID] [--backup-version BACKUP_VERSION] [--no-compress]
                 [keyfile] [decrypted] [encrypted]

암호화는 더 복잡하고 테스트되지 않았습니다. 같은 계정의 다른 암호화된 파일(이하 "참조 파일"이라고 함)을 사용하는 것이 좋습니다.

참조 파일 사용 (데이터베이스 crypt15만 테스트됨)

root@kitploit:~
waencrypt --reference msgstore.db.crypt15 encrypted_backup.key msgstore.db msgstore-new.db.crypt15
waencrypt.py:57         : [W] This script is in beta stage
waencrypt.py:89         : [I] Done!

참조 파일 없이

다음 매개변수를 제공해야 합니다:

  1. 기능 목록: 2019년 이후 데이터베이스에만 해당됩니다. 번호가 매겨진 부울 속성 목록으로, 데이터베이스와 관련이 있습니다. 현재 데이터베이스 파일에서 이를 추론할 방법은 없습니다. 예시에서는 제 백업의 기능 목록을 사용하겠지만, 여러분에게도 작동할 것이라고 기대하지 마세요.
  2. 최대 기능 번호: 글을 쓰는 시점 기준 39
  3. 파일을 암호화한 앱의 버전: 2.24.8.6 등 합리적인 값을 사용하세요.
  4. Jid: 휴대폰 번호의 마지막 2자리 숫자
  5. 백업 버전: 1을 사용하세요.

매개변수를 생략하면 기본값이 사용됩니다.

요약하면 다음과 같습니다:

root@kitploit:~
$ waencrypt --enable-features 5 6 7 8 9 10 11 12 13 14 15 16
 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 39 --type 15 --wa-version 2.26.1.2 --jid 00 --backup
-version 1 encrypted_backup.key msgstore.db msgstore-new.db.crypt15 
waencrypt.py:57         : [W] This script is in beta stage
waencrypt.py:89         : [I] Done!

wainfo 도구로 백업 파일에 대한 정보를 얻을 수 있습니다.

도구 목록

사용법은 -h 옵션과 함께 도구를 실행하세요.

  1. wacreatekey - 키 파일 생성
  2. wadecrypt - 백업 복호화
  3. waencrypt - 백업 암호화
  4. waguess - 백업 복호화를 시도하는 편법
  5. wainfo - 백업 정보 확인

FAQ

키 파일 없이 백업을 복호화할 수 있나요?

아니요! 그렇지 않다면 파일을 암호화할 이유가 없겠죠?

비밀번호 / 64자 키를 잊어버렸습니다. 도와주실 수 있나요?

위를 참조하세요.

프로그램이 제 백업을 복호화하지 못하고 백업이 손상되었다고 표시합니다

백업이 손상된 것입니다. -f 플래그로 모든 검사를 비활성화해 볼 수 있지만, 충돌 및/또는 읽을 수 없는 출력이 발생할 수 있습니다.

프로그램이 복호화하지 못하고 키가 잘못되었다고 표시합니다

키가 잘못된 것입니다. -f 플래그로 모든 검사를 비활성화해 볼 수 있지만, 충돌 및/또는 읽을 수 없는 출력이 발생할 수 있습니다.

내 데이터베이스를 복호화하는 가장 좋은 설정은 무엇인가요?

  1. 엔드투엔드 백업을 활성화하고 비밀번호를 사용하지 말고 64자 키 옵션을 사용하세요.
  2. wacreatekey를 사용하여 encrypted_backup.key 파일을 만드세요.
  3. 키 파일을 안전하게 보관하고 wadecrypt를 사용하여 백업을 복호화하세요.

이렇게 하면 자신의 루트 키를 직접 관리하게 됩니다. 그렇지 않으면 WhatsApp이 적절할 때 키를 변경할 수 있습니다.

비밀번호를 사용하여 데이터베이스를 복호화할 수 있나요?

아니요! 비밀번호는 WhatsApp 서버와 통신하여 64자 키를 가져오는 데만 사용됩니다.
즉, 비밀번호는 키를 보호하는 데 사용되며, 백업을 암호화하는 데는 사용되지 않습니다.

Google Drive에서 다운로드한 .mcrypt1 파일을 복호화할 수 있나요?

네, 가능하지만 코드가 문서화되어 있지 않으므로 지금은 코드를 직접 읽어보시기 바랍니다.

프로그램이 고장났고, 제 백업은 온전하며 키가 맞다고 생각합니다

Telegram으로 필요한 파일을 보내주시면 확인해 보겠습니다.

이해할 수 있게도 개인정보 보호가 걱정된다면, 이슈를 열고 다음을 첨부하세요:

  1. 프로그램 출력(--force 사용 시와 미사용 시 모두)
  2. 키 파일의 헥스 덤프
  3. 암호화된 DB의 처음 512바이트의 헥스 덤프

하지만 도움을 드리기는 더 어려울 것입니다.

키(파일)는 어디서 구할 수 있나요?

루팅된 Android 기기에서는 다음을 복사하기만 하면 됩니다. /data/data/com.whatsapp/files/key (백업이 crypt15인 경우 /data/data/com.whatsapp/files/encrypted_backup.key).
E2E 백업을 활성화했고 비밀번호를 사용하지 않았다면 (예: 스크린샷 등 64자리 키의 사본을 가지고 있다면), 키 파일 매개변수 대신 그 키를 그대로 옮겨 적어 사용할 수 있습니다.
다른 방법도 있지만, 그것을 알려주는 것은 이 프로젝트의 범위를 벗어납니다.
이를 요청하는 이슈는 유효하지 않은 것으로 간주되어 닫힙니다.

이 소프트웨어를 어떻게 인용하나요?

이 소프트웨어에 대해 작성된 논문이나 학위 논문은 없지만, 이 온라인 저장소를 인용할 수 있습니다. (현재로서는) 저자가 한 명뿐이므로 "et al."이라고 표기하지 마세요.

CITATION.cff

인용 정보는 CITATION.cff 파일을 참조하세요.

BibTeX

root@kitploit:~
@misc{wa-crypt-tools,
  author = {ElDavoo},
  title = {WhatsApp Crypt Tools},
  year = {2022},
  month = {06},
  howpublished = {\url{https://github.com/ElDavoo/wa-crypt-tools}
}

BibLaTeX

root@kitploit:~
@online{wa-crypt-tools,
  author = {ElDavoo},
  title = {WhatsApp Crypt Tools},
  year = {2022},
  month = {06},
  url = {https://github.com/ElDavoo/wa-crypt-tools}
}

현재 열려 있는 이슈에 대한 풀 리퀘스트는 언제든 환영합니다. :)

마지막으로 테스트된 버전 (업데이트를 기대하지 마세요)

안정 버전: 2.24.16.76
베타 버전: 2.24.26.11

비즈니스

안정 버전:
2.24.23.78

Protobuf 자동 수정

protoletariat를 사용하고 proto 임포트를 자동으로 수정하려면 proto 선택적 의존성을 설치할 수 있습니다.

먼저, 저장소를 클론한 후 다음 명령으로 패키지를 편집 가능(editable) 모드로 설치하세요(가급적 가상 환경에서):

pip install -e .[proto]

이렇게 하면 패키지의 선택적 의존성도 함께 설치됩니다.

다음으로, protobuf 컴파일러를 해당 저장소 여기에서 다운로드하세요. protoc 프로그램을 .proto 파일이 있는 wa-crypt-tools/proto 폴더로 이동하면 됩니다.

필요에 따라 protobuf 클래스를 교체하고 protoc를 실행하여 파이썬 클래스를 생성하세요. 프로젝트의 wa-crypt-tools/proto 디렉터리에서 다음을 실행하세요:

./protoc --python_out=../src/wa_crypt_tools/proto --proto_path=. *.proto

protoc를 통해 protobuf 파이썬 클래스를 생성한 후, 같은 디렉터리에서 다음을 실행하세요:

protol --in-place --python-out ..\src\wa_crypt_tools\proto protoc --proto-path=. *.proto

Linux:

PATH="$(pwd):$PATH" protol --in-place --python-out ../src/wa_crypt_tools/proto protoc --proto-path=. *.proto

이제 생성된 모든 파이썬 클래스의 임포트가 수정되었을 것입니다.


후원

여러분 한 분 한 분께 정말 감사드립니다!

  • 🎉🎉🎉 githubsterer 🎉🎉🎉
  • 🎉🎉🎉 courious875 🎉🎉🎉
  • 🎉 pscriptos 🎉

언급하지 못한 다른 모든 분들께도 감사드립니다!

크레딧:

  • crypt12의 원본 구현: TripCode
  • 초기에 도움을 주신 분: DjEdu28
  • protobuf를 사용한 실제 crypt14/15 구현: ElDavoo
  • crypt14/15 푸터(footer) 관련 도움: george-lam
  • Pip 패키지 구현: Mikel12455
  • kingbtcvl

도움을 주신 다른 모든 분들께 감사드립니다!

이 소프트웨어를 사용한 연구 논문

  • Injection Attacks Against End-to-End Encrypted Applications
  • Forensic Analysis of WhatsApp Disappearing Message on Unrooted Android Using Mobile Device Forensics Methodology NIST SP 800-101r1
  • [ANALISIS FORENSIK APLIKASI PENIPUAN BERBASIS ANDROID MENGGUNAKAN METODE NIST] (https://jurnal.umt.ac.id/index.php/jika/article/view/10575) (나쁜 녀석들, 나를 인용하지 않았잖아 :P )

시간 경과에 따른 Stargazers

Star History Chart

도구 다운로드