Đôi khi, chúng ta sẽ gặp phải vấn đề như vậy. Ví dụ, mật khẩu ở chế độ abcdabcd và không có abcdabcd trong từ điển của chúng ta. Nếu chúng ta tạo nó, nó sẽ chiếm rất nhiều không gian. Có cách nào để tạo abcdabcd thông qua abcd không? Trong hashcat, tất nhiên, nó có thể được thực hiện. Trong phần này, trước tiên chúng ta sẽ nói về chế độ này, đó là chế độ tấn công kết hợp từ điển (tham số được biểu thị bằng-a 1).
Đầu tiên, chúng tôi mô tả ý nghĩa của-a 1 thông qua một ví dụ đơn giản, sau đó đưa bạn từng bước đến các ứng dụng phức tạp của mẫu này.
hashcat – a 1 – m 0 mima.txt – o outfile dic.txt dic.txt
Ý nghĩa của lệnh này là sử dụng dic.txt Từ điển này được kết hợp để giải mã mima.txt. Nếu dic.txt bao gồm từ điển
như trong hình bên dưới thì cặp mới được hình thành sau khi kết hợp các lệnh. Từ điển được giải mã là:
Mỗi dòng trong dic.txt được kết hợp với chính nó để tạo thành một từ điển mới.
Giới thiệu trước đây là sự kết hợp của cùng một từ điển. Nếu đó là các từ điển khác nhau, hashcat cũng hỗ trợ lệnh như sau
biểu thị rằng tất cả các dòng trong dic1.txt được kết hợp với tất cả các dòng trong dic2.txt và từ điển hình thành sẽ giải quyết mima.txt.
Chế độ kết hợp được sử dụng trong trường hợp nào? Chế độ kết hợp nói chung là trong trường hợp mật khẩu người dùng được chia rõ ràng thành hai đoạn, chẳng hạn như: abcd1234, asdfasdf, aaa19770101,..., v.v., mật khẩu hiển thị rõ ràng ở đoạn trước và đoạn sau.
(1) Ở chế độ kết hợp, hashcat hiện chỉ có thể hỗ trợ kết hợp hai từ điển (hoặc cùng một từ điển 2 lần) và không thể hỗ trợ nhiều từ điển (hơn 3 từ điển) hoặc các cuộc tấn công kết hợp của cùng một từ điển hơn 3 lần.
Nói cách khác, lệnh sau là sai:
hashcat – a 1 – m 0 mima.txt – ooutfile dic.txt dic.txt
hashcat – a 1 – m 0 mima.txt – ooutfile dic1.txt dic2.txt dic3.txt
(2) Ở chế độ kết hợp, thư mục cũng không được hỗ trợ (trong bài viết trước, ở chế độ-a 0, toàn bộ thư mục được hỗ trợ), có nghĩa là hai tình huống sau đây cũng không được chấp nhận.
hashcat – a 1 – m 0 mima.txt – ooutfile/dic/
hashcat – a 1 – m 0 mima.txt – ooutfile/dic/*.txt
(3) Vấn đề về tính kịp thời
Khi sử dụng chế độ kết hợp, nếu từ điển lớn, ví dụ như hai từ điển là 10.000.000 thì không gian kết hợp là 100.000.000.000.000, tương đương với 10.000.000 từ điển (mỗi từ điển có 10.000.000 mục) tấn công, không gian sẽ quá lớn và có thể xảy ra nhiều lần lặp lại. Mặc dù tỷ lệ phủ sóng tăng lên nhưng tính kịp thời không cao.
Bẻ khóa bằng bạo lực, như tên cho thấy, là cạn kiệt bằng bạo lực không gian văn bản rõ ràng được chỉ định. Đây là một phương pháp không thể làm được (bởi vì bạn không có cách nào để thu hẹp không gian cạn kiệt).
Trước khi chính thức nói về Brute Force Crack, chúng ta hãy nói về việc cạn kiệt không gian. Lấy chữ thường + số làm ví dụ, nếu độ dài mật khẩu là 4 thì không gian của nó là 36**4=1679616, có vẻ không lớn và sẽ xuất hiện sau một thời gian; Nếu độ dài mật khẩu là 8 thì không gian của nó là 36**8=2821109907456. Nếu thời gian giải quyết là 1000.000.000 (1 tỷ lần/s) thì thời gian giải quyết là khoảng 2820 giây, khoảng 47 phút, dường như có thể chấp nhận được; Nếu độ dài mật khẩu là 10 thì không gian của nó là 36**10=3656158440062976. Nếu thời gian giải quyết là 1000.000.000 (1 tỷ lần/s) thì thời gian giải quyết vượt quá 1000 giờ thì không có cách nào để chấp nhận.
Có rất nhiều loại chế độ bẻ khóa brute force khác nhau (tham số được biểu thị là-a 3) trong hashcat. Dưới đây, chúng ta sẽ mô tả từng loại một.
hashcat có 8 bộ ký tự mặc định được tích hợp, đó là l (26 chữ cái nhỏ), u (26 chữ cái hoa), d (10 số), H (ký tự lục phân nhỏ), H (ký tự lục phân lớn), s (ký tự đặc biệt 31), A (tập hợp 95 ký tự đầy đủ của l, u, d, s) và b (nhị phân
Ví dụ
(1) Nếu cạn kiệt không gian 6 bit của chữ cái nhỏ, lệnh sử dụng như sau:
(2) Nếu cạn kiệt toàn bộ ký tự Lệnh sử dụng không gian 8 bit như sau:
(3) Nếu cạn kiệt toàn bộ không gian số có phạm vi từ 4-6 bit, lệnh như sau:
Ở đây, thêm tham số- -inrcement- -increment-min 4- -inrcement- -increment-max 6 biểu thị giá trị tối thiểu và tối đa của độ dài cạn kiệt.
Chế độ kết hợp ở đây là chế độ tổ chức theo chế độ cạn kiệt, không phải chế độ (-A 1).
Trực tiếp đưa ra một ví dụ để minh họa:
(1) Mật khẩu cạn kiệt phạm vi, độ dài mật khẩu được suy đoán là 6, chữ số đầu tiên là toàn bộ ký tự, chữ số thứ hai là chữ viết hoa và chữ số thứ ba là chữ hoa, chữ số thứ tư, thứ năm và thứ sáu là toàn bộ ký tự, lệnh có thể sử dụng chế độ sau:
(2) Một số chế độ kết hợp được đưa ra dưới đây,
Một trong những: Nếu phạm vi của mật khẩu là chữ hoa + số và độ dài là 6 thì lệnh như sau:
Ở đây sử dụng-1? Tôi? Bạn? d đại diện cho chữ hoa và chữ nhỏ + số.
2: Nếu phạm vi cạn kiệt là 6 chữ số, chữ số đầu tiên và thứ tư là chữ hoa + chữ số, chữ số thứ hai là chữ hoa, chữ số thứ ba và thứ năm là chữ hoa + chữ số và chữ số thứ sáu là chữ số, thì lệnh như sau:
Tất nhiên, bạn cũng có thể chỉ định độ dài tối thiểu và độ dài tối đa, như trong hình bên dưới
Trước đó, chúng tôi đã giới thiệu rằng hashcat có 8 bộ ký tự tích hợp, nhưng nếu bộ ký tự mà người dùng yêu cầu không nằm trong 8 loại này thì sao? Làm sao? Không sao đâu, hashcat cũng đã chuẩn bị một loạt các chế độ tấn công bạo lực tùy chỉnh cho mọi người.
Sử dụng lệnh hashcat – h, bạn có thể thấy chế độ sử dụng sau được xác định
Dưới đây, chúng ta giải thích thông qua từng ví dụ:
(1) Nếu độ dài mật khẩu là 8 bit và mỗi bit bao gồm "0123456789aqwcfhj,. < > = -_ +" thì bạn có thể sử dụng lệnh sau.
Bạn cũng có thể viết các ký tự này thành một tệp, chẳng hạn như char.txt, bằng cách sử dụng lệnh sau.
(2) Nếu độ dài mật khẩu là 8 bit, chữ số đầu tiên, thứ ba và thứ sáu trong "43545yt", chữ số thứ hai và thứ tư trong "345dfv- = _ +", chữ số thứ năm và thứ bảy trong "9vjnbbf-brg" và chữ số thứ tám trong "345fkfggh", bạn có thể sử dụng lệnh sau.
Tất nhiên, bạn cũng có thể viết các ký tự này thành các tập tin khác nhau như char1.txt, … … …, bằng cách sử dụng lệnh sau.
Lưu ý: Một số ký hiệu sẽ có ý nghĩa đặc biệt trong dòng lệnh, vì vậy khi có các ký hiệu đặc biệt trong bộ ký tự, tốt nhất bạn nên viết các ký hiệu này dưới dạng file.
(3) Trên cơ sở (2), thêm chiều dài tối thiểu và chiều dài tối đa, chẳng hạn như 4-8 bit. Bạn có thể sử dụng lệnh sau.
Trong bài viết trước, chúng tôi đã giới thiệu việc sử dụng một số tham số. Hôm nay, chúng tôi sẽ tiếp tục giới thiệu một số thông số thường được sử dụng. tham số. Hôm nay tôi sẽ tập trung vào các tham số hiển thị màn hình
Bài viết trước đã giới thiệu các lệnh liên quan đến xuất tệp (-o/ - -outfile-format). Thông qua các lệnh này, kết quả giải mã mật khẩu hashcat có thể được giải mã ở một định dạng nhất định. xuất vào tệp. Nhưng trong quá trình chạy hashcat, chúng ta không thể thấy hashcat đã giải mã mật khẩu nào. Nếu trong quá trình làm việc hashcat, chúng ta có thể in trực tiếp mật khẩu do hashcat giải mã lên màn hình, sẽ trực quan và thuận tiện hơn. Có chính xác một số tham số trong hashcat có thể xuất kết quả chạy hashcat lên màn hình.
Lệnh show sẽ xuất hash và mật khẩu đã được giải mã được lưu trữ trong tệp pot vào cửa sổ màn hình.
Lệnh left sẽ xuất các giá trị băm mà hashcat không giải mã lên màn hình
Lệnh stdout sẽ không giải mã mật khẩu, nhưng nó sẽ in nội dung từ điển được sử dụng để giải mã mật khẩu.
Hashcat có nhiều lệnh và các tham số khác nhau rất khác nhau. Nếu bạn muốn phát huy hết các chức năng và chức năng của Hashcat, tôi khuyên bạn nên sử dụng nhiều hơn. Hãy thử các lệnh khác nhau để làm quen với cách kết hợp các lệnh khác nhau của Hashcat. Đối với chức năng của tham số hashcat, bạn có thể học hỏi từ trợ giúp trực tuyến hashcat (-h).