리눅스용 크런치

Linugseuyong Keuleonchi



Crunch는 특히 침투 테스터에게 매우 유용한 도구입니다. 본질적으로 크런치는 기본적으로 단어 목록 생성기 또는 사전 파일 생성기일 뿐입니다. 가장 큰 장점은 사용자가 생성하도록 요청한 정확한 단어 세트를 생성할 수 있으며 때로는 테라바이트 단위가 될 수 있다는 것입니다. 그러한 도구를 사용하면 정말 한계가 있습니다. 이번 튜토리얼에서는 크런치(Crunch)에 대해 배워보겠습니다.

크런치 설치

Kali Linux 또는 Parrot OS에는 크런치가 사전 설치되어 있습니다. 하지만 우분투에서는 그렇지 않습니다. 따라서 설치하는 것은 우리에게 달려 있습니다.

설치하려면 다음 명령을 사용하십시오.







sudo 적절한 설치 결정적 시기



이제 크런치가 생겼으니 이를 사용해 보겠습니다.



크런치 기초

기본적으로 크런치를 사용하려면 다음 구문을 따라야 합니다.





결정적 시기 < 분-렌 > < 최대 길이 > [ < 문자셋 문자열 > ] [ 옵션 ]

옵션과 charset 문자열은 필수는 아니지만 min-len(최소 길이) 및 max-len(최대 길이)은 실제로 필수입니다. Min-len과 max-len은 사용하지 않더라도 필수입니다. 따라서 항상 제공되어야 합니다. 본질적으로 최소 또는 최대 길이가 필요하지 않은 시나리오가 있지만 이러한 상황에서도 크런치를 진행하려면 min-len 및 max-len에 임의의 값을 제공해야 합니다.

간단한 예를 사용하여 시작해 보겠습니다.



결정적 시기 0 1 아아

방금 무슨 일이 일어났나요?

먼저 Crunch를 사용하면 파일 크기(5바이트)와 줄 수(3)를 알 수 있습니다. 파일 크기 뒤의 네 줄은 파일 크기를 MB, GB, TB 및 PB 단위로 지정합니다. 그런 다음 가능한 조합을 생성하기 시작합니다. 여기서 최대 문자 수는 1개라고 했으므로 줄에는 최대 1개의 문자가 포함됩니다. 사용할 문자는 대문자 또는 소문자 A입니다. 따라서 A 또는 a가 됩니다. 이 경우 가능한 조합 수는 3개이다. 0이나 빈 문자열도 옵션이기 때문이다.

이제부터 목록이 포함된 전체 화면은 매우 길기 때문에(심지어 가장 간단한 경우에도) 표시할 수 없습니다. 하지만 첫 번째 부분은 꼭 보여드리고 마지막 문자 조합이 무엇인지 알려드리겠습니다.

다른 예를 들어보겠습니다:

결정적 시기 1 123

이것은 1로 시작해서 333으로 끝납니다. 왜죠? 최소 문자 수가 1개이기 때문입니다. 즉, 1, 2, 3이 이어진 다음 2개의 문자 조합(11, 12, 13, …, 33), 마지막으로 3개의 문자 조합(111, 123, 113, …333)을 의미합니다. ).

이제 자신만의 문자 세트를 계속 사용할 필요가 없습니다. Crunch에는 “charset.lst”라는 문자 집합이 내장되어 있습니다. 이 목록은 '/usr/share/crunch/charset.lst'에 있습니다.

실제 사전을 만들 때 'charset.lst'를 사용할 가능성이 더 높다는 점에 유의하세요. 예를 들어 'aircrack-ng'를 사용하는 경우 사전 파일을 생성하기 위해 'upper-hex' 파일을 많이 사용하게 된다는 점에 유의하세요.

결정적 시기 2 -에프 / 우리 / 공유하다 / 결정적 시기 / charset.lst 16진수 상위

결정적 시기 1 2 알파벳 -영형 단어목록.txt

여기서 우리가 하는 일은 'wordlist.txt'라는 출력 파일에 저장하는 것입니다.

다음 비트는 좀 더 발전된 것입니다.

이제 단어 목록에서 일부 문자를 동일하게 유지하고 싶다고 가정해 보겠습니다. 우리가 이것을 원한다고 가정하자:

---고양이

주어진 코드에서 하이픈은 문자를 나타냅니다. 따라서 세 개의 임의 문자 뒤에 CAT라는 단어가 있습니다.

우리는 다음을 작성합니다:

결정적 시기 6 6 알파벳 -티 @@@ 고양이

여기서 '@'는 문자가 결합되는 위치를 나타냅니다. '@'을 대체할 문자는 a, b 또는 c입니다.

여기서는 최소 6자 길이의 단어를 생성하므로 6, 6이라고 씁니다. 이는 크런치가 정확히 6자 길이의 단어를 생성한다는 의미입니다. aaaCAT로 시작하고 cccCAT로 끝납니다.

이제 bbbCAT에서 시작한다고 가정해 보겠습니다. 우리는 다음 명령을 작성합니다:

결정적 시기 6 6 알파벳 -티 @@@ 고양이 -에스 bbbCAT

보시다시피 단어 목록은 bbbCAT에서 시작하여 cccCAT에서 끝납니다.

다음 사항에 유의하세요.

@ – 소문자를 삽입합니다.
, – 대문자를 삽입합니다.
% - 숫자를 삽입합니다.
^ - 기호를 삽입합니다.

주어진 각 코드의 예를 살펴보겠습니다.

결정적 시기 7 7 -티 @ ^ % ,고양이 -씨 6

'c' 하이픈은 줄 수 제한을 설정하는 데 사용됩니다. 따라서 너무 많은 줄을 표시하는 대신 약 6줄로 제한합니다.

결정적 시기 4 4 ab CD 12 $ % -티 @ , % ^

여기에서는 기호와 't' 하이픈 사이에 충분한 공간을 확보해야 합니다. 너무 가까이 붙이면 부서집니다.
다음은 좀 더 까다롭습니다.

이제, 최소 및 최대 문자 수를 반드시 입력해야 한다고 말한 것을 기억하세요. 소용없더라도 해야만 하는 게 사실이다. 이는 해당 숫자를 사용하지 않더라도 최소 및 최대 문자를 입력한다는 의미입니다.

결정적 시기 4 5 -피 리눅스 코드를 좋아해요

결정적 시기 이십 24 -큐 ~ / 다운로드 / 단어목록.txt

여기서 'q'는 'p'와 동일한 작업을 수행하지만 터미널에 단어를 기록하는 대신 파일에서 가져옵니다.

결론

전반적으로 crunch는 환상적인 사전 파일 생성기입니다. 최소 및 최대 문자 수를 입력해야 하지만 그 밖의 모든 것은 변경 가능합니다. 원하는 패턴이나 선택한 파일을 사용하여 단어 목록을 만들 수 있습니다. 하지만 파일이 길수록 목록을 생성하는 데 시간이 더 오래 걸린다는 점을 기억하세요. 좋은 사전 파일을 생성하려면 시간도 필요할 뿐만 아니라 파일을 저장할 좋은 외장 하드 드라이브도 필요합니다. 예제의 파일 크기는 작지만 실제로 생성되는 파일은 상당히 큽니다.

즐거운 코딩하세요!