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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
PassGAN — 비밀번호 추측을 위한 딥러닝 접근법 (https://arxiv.org/abs/1709.00440) | Kitploit
도구/GitHubGitHub/brannondorsey/passgan
Password CrackingPassword AttacksMachine LearningPapers & ResearchLearning & Education
GitHubbrannondorsey/passgan

PassGAN

비밀번호 추측을 위한 딥러닝 접근법 (https://arxiv.org/abs/1709.00440)

저장소 보기
2.0k3977년 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

PassGAN

이 저장소는 PassGAN: A Deep Learning Approach for Password Guessing 논문의 코드를 포함하고 있습니다.

PassGAN의 모델은 Improved Training of Wasserstein GANs에서 가져왔으며, PassGAN 저자들이 그들의 작업에서 improved_wgan_training 텐서플로우 구현을 사용했다고 가정합니다. 이러한 이유로, 저는 이 저장소에서 해당 참조 구현을 수정하여 train.py 와 sample.py 를 통해 쉽게 훈련하고 샘플링할 수 있도록 만들었습니다. 이 저장소는 다음을 제공합니다:

  • 명령줄 인터페이스
  • RockYou 데이터셋으로 훈련된 사전 훈련된 PassGAN 모델

시작하기

root@kitploit:~
# requires CUDA 8 to be pre-installed
pip install -r requirements.txt

비밀번호 샘플 생성

사전 훈련된 모델을 사용하여 1,000,000개의 비밀번호를 생성하고 gen_passwords.txt에 저장합니다.

root@kitploit:~
python sample.py \
	--input-dir pretrained \
	--checkpoint pretrained/checkpoints/195000.ckpt \
	--output gen_passwords.txt \
	--batch-size 1024 \
	--num-samples 1000000

자신의 모델 훈련

큰 데이터셋(100MB 이상)에서 모델을 훈련하는 것은 GTX 1080에서 몇 시간이 걸릴 수 있습니다.

root@kitploit:~
# download the rockyou training data
# contains 80% of the full rockyou passwords (with repeats)
# that are 10 characters or less
curl -L -o data/train.txt https://github.com/brannondorsey/PassGAN/releases/download/data/rockyou-train.txt

# train for 200000 iterations, saving checkpoints every 5000
# uses the default hyperparameters from the paper
python train.py --output-dir output --training-data data/train.txt

자신의 비밀번호 유출 데이터나 데이터셋을 사용하여 훈련하는 것을 권장합니다. 이를 찾을 수 있는 좋은 장소는 다음과 같습니다:

  • LinkedIn 유출 (1.7GB 압축, 직접 다운로드. Hashes.org의 미러)
  • Exploit.in 토렌트 (10GB+, 8억 계정. 악명 높음!)
  • Hashes.org: 훌륭한 공유 비밀번호 복구 사이트입니다. 자원이 있다면 기부를 고려해보세요 ;)

결과

아직 PassGAN 논문의 결과를 재현하려는 시도에 대한 철저한 분석을 수행하지 않았습니다. 그러나 사전 훈련된 rockyou 모델을 사용하여 10⁸개의 비밀번호 샘플을 생성한 결과, 80%/20% 훈련/테스트 분할을 사용하여 테스트 데이터에서 630,347개(23.97%)의 고유 비밀번호를 일치시킬 수 있었습니다.

일반적으로, 저는 PassGAN의 저자들이 ML 비밀번호 생성 분야의 이전 연구를 참조했지만 그 결과를 해당 연구와 비교하지 않은 것에 대해 다소 놀랍고(그리고 실망스럽습니다). PassGAN에 대한 초기 경험으로 볼 때, 이 모델은 해당 논문에서 언급된 RNN 및 Markov 기반 접근 방식보다 상당히 성능이 낮을 것이라고 믿게 되며, 저자들이 결과를 비교하지 않기로 선택한 이유가 이것 때문이 아니기를 바랍니다.

저작자 표시 및 라이선스

이 코드는 MIT 라이선스 하에 배포됩니다. 해당 조건에 따라 자유롭게 사용, 수정, 배포 또는 판매할 수 있습니다.

이 저장소의 코드에 대한 대부분의 공로는 improved_wgan_training 작업을 한 @igul222에게 있습니다. 저는 그의 코드를 약간 모듈화하고 명령줄 인터페이스를 추가했으며 PassGAN 논문에 맞게 특화시켰을 뿐입니다.

PassGAN의 연구 및 논문은 Briland Hitaj, Paolo Gasti, Giuseppe Ateniese, Fernando Perez-Cruz에 의해 발표되었습니다.

도구 다운로드