Hashcat은 세계에서 가장 빠른 암호 해독 도구라고 불립니다. 오늘 이 기사에서는 일반적으로 사용되는 몇 가지 매개변수를 추출하고 암호 해독 명령과 결합하여 Hashcat을 사용하여 암호를 해독하는 방법을 분석합니다.
우리는 hashcat이 많은 수의 암호 유형을 해독할 수 있다는 것을 알고 있으며, 약 210개의 암호를 해독할 수 있으며, 그 중 대부분은 hash입니다. hashcat을 통해 비밀번호를 해독하려면 먼저 비밀번호의 형태를 이해한 다음 비밀번호 형태에 따라 hashcat의 비밀번호 번호를 색인해야 합니다.
비밀번호: digapis와 소금 값 asdf를 예로 들어 일부 해시 값의 형태를 보여줍니다.
| 번호 | 이름 | 유형 | 예제 |
|---|---|---|---|
| 0 | MD5 | 해시, 길이 32 | 8713d75511bea7e0df78c6063dc778b0 |
| 1400 | SHA-256 | hash | aa106625c7de812d6118992a191ea4627e2457fa80bf6ec06f9c60cbf8e5260f |
| 1700 | SHA-512 | hash | 23afac4524f62ea4d941ca4933249b2b78d19069773266abc36d6fd17a6fbe2f4ccc834acc868358ba32ddca553611218a2865f975339fe45d38cc1999f84b5e |
| 10 | MD5($pass.$salt) | 비밀번호에 소금을 넣은 후 MD5를 한 번 수행합니다. 비밀번호는 앞에 있습니다. | 48985c61e2581c3f9ee5f1cfb775afbc:asdf |
| 20 | MD5($salt.$pass) | 솔트 앞 | 4fa1dd606353e055fed67d9812bddf35:asdf |
| 2600 | MD5(MD5($pass)) | 비밀번호는 MD5 | 98177c3f36af4a3f77f5b87594e6cf6a |
| 3710 | MD5($salt.md5($pass)) | 비밀번호는 MD5 변환을 한 번 수행하고 앞에 소금을 추가한 다음 MD5 | 88a535877ec21b8786775a7074e4de4c:asdf |
| 4400 | MD5(sha1($pass)) | 비밀번호를 한 번 sha1 변환하고 MD5 | ec7bf3099984001a2b0f37ba5d1d68fa |
| 4500 | sha1(sha1($pass)) | 생략 | 005a41cfe16c9a5556c7a5cdd5f1958991f2e031 |
| 1460 | HMAC-SHA256(key=$salt) | 생략 | d684ab7c38ddc262f215328334c4d0273cef10d6c5e61988f5cc87fcab8a7a60:asdf |
| 11500 | CRC32 | 생략 | 4C244A19:00000000 |
-a 명령은 공격 모드를 지정할 수 있습니다. hashcat을 사용하여 비밀번호를 해독하려면 비밀번호 번호만 아는 것만으로는 충분하지 않습니다.
Hashcat4.0.1에는 5개의 공격 모드가 있습니다. 각 공격 모드에는 고유한 특성이 있습니다.
| 번호 | 공격 패턴 | 의미 |
|---|---|---|
| 0 | straight | 직접 공격 모드 |
| 1 | Combinstion | 조합 공격 모드 |
| 3 | Brute-force | 폭발 파워 크랙 모드 |
| 6 | 하이브리드 워드리스트+마스크 | 사전+마스크 조합 |
| 7 | 하이버드 마스크+워드리스트 | 마스크+사전 조합 |
이 5가지 공격 모드에서는 사전을 사용하여 비밀번호를 해독할 수 있습니다. , 폭력 크래킹을 사용하여 가능한 모든 비밀번호를 탐색하거나 사전과 마스크를 결합하여 비밀번호를 해독할 수도 있습니다. 다양한 공격 모드에서 hashcat 명령은 서로 다른 매개변수를 사용합니다. hashcat이 사전 파일을 사용하여 비밀번호를 해독하는 방법을 예로 들어 보겠습니다. 동료들은 다른 매개변수를 사용하는 방법도 삽입할 것입니다.
직접 공격 모드는 사전을 직접 사용하여 암호 폭파를 수행하는 것입니다. 단일 사전 파일이나 여러 사전 파일을 사용하여 암호를 해독할 수 있습니다. 사전과 규칙 파일을 결합하여 비밀번호 폭파를 더욱 효율적으로 할 수도 있다.
hashcat -a 0 –m 0 mima.txt –o outfile dic.txt
-a는 공격 모드를 직접 공격으로 지정하고, -m은 해시 유형을 MD5로 지정하며, -o는 해독된 암호를 outfile에 기록합니다.
이중 사전 공격도 직접 공격 모드의 상황으로, 사전 파일을 사용하여 비밀번호를 폭파할 때 두 개의 사전 파일을 로드합니다. 이렇게 하면 사전 파일의 공간이 넓어집니다.
다중 사전 공격은 동시에 여러 사전 파일을 로드합니다. 다음 명령은 세 개의 사전을 사용하여 사전 공격을 수행하고 세 개의 사전을 차례로 로드하여 폭파합니다. 명령어의 dic.txt는 폭파에 사용되는 사전 파일입니다.
사전 디렉토리 공격을 사용하면 사전 디렉토리에 있는 여러 개의 사전 파일을 직접 공격에 사용합니다. 직접 공격 과정에서 사전 디렉토리에 있는 여러 개의 사전 파일이 순차적으로 로드됩니다. 다음 명령의 dic는 여러 개의 사전 파일이 있는 폴더입니다.
-r/--rule-file 명령은 규칙 파일의 여러 규칙을 사전의 각 단어에 적용합니다. 규칙 파일은 직접 생성하거나 hashcat과 함께 제공되는 규칙 파일을 사용할 수 있습니다. 해시캣과 함께 제공되는 규칙 파일은 일반적으로 규칙 폴더 아래에 있습니다. 규칙 폴더에 있는 규칙 파일은 다음과 같습니다.
사전 + 규칙 공격에서는 단일 사전, 다중 사전 또는 사전 디렉토리를 사용할 수 있습니다. 규칙 파일과 결합된 암호 폭파. 사실 규칙 파일을 직접 공격하는 형식이다.
소위 규칙은 후보 암호를 생성하는 프로그래밍 언어와 유사합니다. 조건부 연산자에 따라 단어를 수정, 잘라내기, 확장하거나 일부 작업을 건너뛸 수 있습니다. 더욱 유연하고 효율적으로 공격할 수 있습니다.
규칙 공격은 이중 사전, 다중 사전 또는 심지어 사전 디렉토리와 함께 사용할 수 있습니다. 사용 방법은 단일 사전 + 규칙 공격과 비슷하다.
-o 매개변수 뒤에 파일을 사용하고 -o 명령을 통해 해독된 비밀번호를 지정된 파일에 입력합니다. 기본 저장 형식은 hash:plain입니다. 앞에 이 명령의 사용에 대한 예가 있는데, 여러분 스스로 위의 그림을 보세요.
이 명령은 outfile 파일의 출력 형식을 지정할 수 있습니다. Outfile 파일에는 총 15개의 출력 모드가 있습니다.
Outfile-format=1은 해독된 암호텍스트 해시만 출력합니다.
Outfile-format=2, 해독된 암호의 일반 텍스트만 출력합니다.
-o 매개변수로 출력하는 것 외에도 remove 매개변수를 통해 암호문 파일에 이미 해독된 비밀번호를 필터링하여 해독할 수 없는 비밀번호만 남길 수 있다. 이렇게 하면 후속 암호 해독 시 중복 작업을 줄일 수 있습니다.
해독된 비밀번호의 수가 상대적으로 많거나 사전 파일이 매우 큰 경우 다음과 같은 옵션이 나타납니다. 키보드 입력 S는 화면에 다음 상태를 인쇄합니다. 이 상태를 통해 현재 비밀번호 해독 진행 상황을 확인할 수 있습니다.
현재 비밀번호 해독 진행 상황을 확인하려면 매번 S를 입력하는 것이 번거롭습니다. 이는 상태 매개변수를 사용하여 화면을 자동으로 업데이트할 수 있습니다. 상태 화면. 자신이 해야 할 작업을 줄이면 실수를 줄일 수도 있다.
상태 파라미터 hashcat을 이용하여 화면 상태를 자동으로 업데이트하는 것 외에도, --status-timer 파라미터를 이용하여 상태 화면 업데이트 간격을 설정할 수도 있다.
해시캣에서 직접 공격 모드를 사용하는 방법은 대략 위와 같습니다. hashcat에 관심이 있다면 hashcat의 명령 매개변수와 각 공격 모드에 대한 자세한 소개가 있는 hashcat 웹사이트를 직접 방문할 수도 있습니다.
이 기사는 Dingniu Network Security Lab
에서 복제되었습니다.