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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
psudohash — 수백만 개의 키워드 기반 비밀번호 변형을 몇 초 만에 생성합니다. | Kitploit
도구/GitHubGitHub/t3l3machus/psudohash
Password CrackingPassword AttacksPenetration Testing
GitHubt3l3machus/psudohash

psudohash

수백만 개의 키워드 기반 비밀번호 변형을 몇 초 만에 생성합니다.

저장소 보기
1.5k1751년 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

psudohash

Python 3.x License

v1.1.0의 멋진 새 기능

특별히 감사드립니다: DavidAngelos:
▶️ 실행 추적을 위한 진행률 표시줄이 추가되었습니다.
▶️ 다음 옵션이 추가되었습니다:

  • In-order 결합 (-i / --inorder): 키워드를 원래 순서대로만 결합합니다 (예: foo,bar,baz → foo, bar, baz, foobar, foobaz, barbaz, foobarbaz).
  • All-order 조합 (-c / --combinations): 각 부분 집합의 모든 순서를 생성합니다 (예: foo,bar,baz → foo, bar, baz, foobar, foobaz, barfoo, …, bazbarfoo).
  • 사용자 정의 구분자 (--sep <string>): 단어 결합 시 토큰 사이에 이 문자열을 삽입합니다 (기본값: 구분자 없음).
  • 최대 결합 크기 (--max-combine <N>): 결합할 원시 키워드의 최대 개수를 제한합니다 (기본값: 2).
  • 최종 단어의 최소/최대 길이 필터링 (--minlen/--maxlen <N>): 원하는 길이의 단어만 포함하도록 최종 단어 목록을 필터링합니다.

목적

Psudohash는 무차별 대입 공격 및 해시 크래킹을 위한 비밀번호 목록 생성기입니다. 사람들이 일반적으로 사용하는 비밀번호 생성 패턴을 모방합니다. 예를 들어 단어의 문자를 기호나 숫자로 대체(leet), 대소문자 변형 사용, 주요 암호 앞뒤에 일반적인 패딩 추가 등이 있습니다. 키워드 기반이며 사용자 정의가 매우 용이합니다. 🎥 -> 동영상 프레젠테이션

기업 환경 침투 테스트

시스템 관리자 및 기타 직원들은 종종 회사 이름의 변형된 버전을 사용하여 비밀번호를 설정합니다 (예: Am@z0n_2022). 이는 네트워크 장치(Wi-Fi 액세스 포인트, 스위치, 라우터 등), 애플리케이션 또는 도메인 계정에서 흔히 발생합니다. 가장 기본적인 옵션만으로도 psudohash는 하나 이상의 키워드에 대해 일반적인 문자 대체 패턴(사용자 정의 가능), 대소문자 변형, 패딩으로 자주 사용되는 문자열 등을 기반으로 모든 가능한 변형을 포함하는 단어 목록을 생성할 수 있습니다. 다음 예시를 참조하십시오:

image

사용자 정의

Leet 문자 대체

이 스크립트는 다음과 같은 문자 대체 스키마를 구현합니다. psudohash.py의 transformations 리스트를 편집하고 아래에 제시된 데이터 구조를 따라 문자 대체 매핑을 추가/수정할 수 있습니다 (기본값):

root@kitploit:~
transformations = [
	{'a' : ['@', '4']},
	{'b' : '8'},
	{'e' : '3'},
	{'g' : ['9', '6']},
	{'i' : ['1', '!']},
	{'o' : '0'},
	{'s' : ['$', '5']},
	{'t' : '7'}
]

일반적인 패딩 값

비밀번호를 설정할 때, 주요 암호 앞이나 뒤에 일련의 문자를 추가하여 '더 강력하게' 만드는 것이 일반적이라고 생각합니다. 예를 들어, 'dragon'이라는 비밀번호를 설정하고 끝에 '!!!' 또는 '!@#' 같은 값을 추가하여 'dragon!!!', 'dragon!@#' 등을 만들 수 있습니다. Psudohash는 common_padding_values.txt에서 이러한 값을 읽어와 생성된 각 키워드 변형 앞(-cpb)이나 뒤(-cpa)에 추가하여 사용합니다. 필요에 따라 수정할 수 있습니다.

연도 값

변형된 키워드에 연도 값을 추가할 때, psudohash는 다양한 구분자를 사용합니다. 기본적으로 다음 구분자를 사용하며, year_seperators 리스트를 편집하여 수정할 수 있습니다:

root@kitploit:~
year_seperators = ['', '_', '-', '@']

예를 들어, 주어진 키워드가 "amazon"이고 -y 2023 옵션을 사용한 경우 출력에는 "amazon2023", "amazon_2023", "amazon-2023", "amazon@2023", "amazon23", "amazon_23", "amazon-23", "amazon@23"이 포함됩니다.

설치

먼저 Python 3.x와 tqdm을 설치하십시오:

root@kitploit:~
pip3 install tqdm

그런 다음 리포지토리를 클론하고 스크립트를 실행 가능하게 만드십시오:

root@kitploit:~
git clone https://github.com/t3l3machus/psudohash.git
cd ./psudohash
chmod +x psudohash.py

사용법

root@kitploit:~
./psudohash.py [-h] -w WORDS [-i] [-c] [--sep SEP] [--max-combine N] [-an LEVEL] [-nl LIMIT] [-y YEARS] [-ap VALUES] [-cpb] [-cpa] [-cpo] [-o FILENAME] [-q]

도움말 대화상자 [ -h, --help ]에는 사용 세부 정보와 예제가 포함되어 있습니다.

옵션

  • -w, --words <kw1,kw2,…>
    쉼표로 구분된 원시 키워드 (필수).

  • -i, --inorder
    주어진 순서대로 최대 --max-combine개의 키워드를 결합합니다 (예: foo,bar,baz → foo, bar, baz, foobar, foobaz, barbaz, foobarbaz).

  • -c, --combinations
    각 부분 집합의 모든 순열을 생성합니다 (최대 --max-combine개) (예: foo,bar,baz → foo, bar, baz, foobar, foobaz, barfoo, …).

  • --max-combine <N> (기본값: 2)
    하나의 기준 문자열로 결합할 원시 키워드의 최대 개수입니다.

  • --sep <string>
    단어 결합(-i 또는 ) 시 토큰 사이에 이 문자열을 배치합니다. 기본값은 빈 문자열입니다.

사용 예

  1. 다중 단어 없음 (단일 단어만)

    root@kitploit:~
    ./psudohash.py -w foo,bar,baz -cpa
    # → foo, bar, baz
    
  2. In-order 결합 (-i, 기본적으로 최대 2단어)

    root@kitploit:~
    ./psudohash.py -w foo,bar,baz -i
    # → foo, bar, baz, foobar, foobaz, barbaz
    
  3. All-order 조합 (-c, 기본적으로 최대 2단어)

    root@kitploit:~
    ./psudohash.py -w foo,bar,baz -c
    # → foo, bar, baz, foobar, foobaz, barfoo, barbaz, bazfoo, bazbar
    
  4. 결합 단어 간 구분자 변경

    root@kitploit:~
    ./psudohash.py -w foo,bar,baz -i --sep "_"
    # → foo, bar, baz, foo_bar, foo_baz, bar_baz
    
  5. 길이 필터링 (--minlen/--maxlen)

    root@kitploit:~
     ./psudohash.py -w apple,banana -i --minlen 10
     # Warning: exact size cannot be determined because of length filters.
     # Example final outputs might include “applebanana” (11 chars), “bananaapple” (11 chars).
    
  6. 최대 3개의 단어 결합 (기본값 2 대신)

사용 팁

  1. --years와 --append-numbering 옵션을 --numbering-limit이 연도 입력의 마지막 두 자리 이상인 경우 함께 사용하면 도구의 변형 패턴으로 인해 중복 단어가 생성될 가능성이 높습니다.
  2. 사용자 정의 패딩 값을 추가하거나 소스 코드에서 미리 정의된 일반 패딩 값을 수정하고 여러 선택적 매개변수를 조합하면 중복 단어가 발생할 작은 가능성이 있습니다. psudohash는 단어 필터링 제어 기능을 포함하지만 속도를 위해 제한적입니다.
  3. --minlen 또는 --maxlen을 사용하면 스크립트가 정확한 단어 수를 사전 계산할 수 없습니다. '정확한 크기를 확인할 수 없음' 경고가 표시되고 이 필터 없이 크기가 계산되며 최종 크기는 더 작아집니다.

개인

사람들의 경우, 우리 모두는 (어느 정도) 자신에게 의미 있는 하나 이상의 단어의 변형을 사용하여 비밀번호를 설정한 적이 있다고 생각합니다. 예를 들어, 자신의 이름이나 아내/아이/애완동물/밴드 이름, 태어난 연도를 끝에 붙이거나 '!@#' 같은 매우 안전한 패딩을 사용하는 것입니다. 음, 그렇다면?

usage_example_png

미래

일반적으로 사용되는 비밀번호 생성 패턴에 대한 정보를 수집하여 도구의 기능을 향상시킬 계획입니다.

도구 다운로드
-c
  • --minlen <N>
    N자보다 짧은 최종 비밀번호는 버립니다.

  • --maxlen <N>
    N자보다 긴 최종 비밀번호는 버립니다.

  • -an, --append-numbering <LEVEL>
    각 단어 변형에 번호가 매겨진 접미사(<LEVEL> 자릿수로 0으로 채움)를 추가합니다.

  • -nl, --numbering-limit <LIMIT>
    숫자를 추가할 때 셀 최대 숫자 (기본값: 50).

  • -y, --years <years>
    각 변형에 하나 이상의 연도를 추가합니다 (예: 1990-2000, 또는 2022,2023).

  • -ap, --append-padding <vals>
    사용자 정의 패딩 값(쉼표로 구분)을 추가합니다. -cpb 또는 -cpa와 함께 사용해야 합니다.

  • -cpb, --common-paddings-before
    각 변형 앞에 common_padding_values.txt의 값을 앞에 추가합니다.

  • -cpa, --common-paddings-after
    각 변형 뒤에 common_padding_values.txt의 값을 추가합니다.

  • -cpo, --custom-paddings-only
    사용자 제공 패딩만 사용합니다 (기본값 없음). -ap와 함께 사용해야 합니다.

  • -o, --output <file>
    결과를 <file>에 씁니다 (기본값: output.txt).

  • -q, --quiet
    시작 시 ASCII 아트 배너를 표시하지 않습니다.