Làm thế nào để bẻ khóa mật khẩu bằng công cụ Hashcat?

Spread the love

Trong thử nghiệm xâm nhập và hack có đạo đức, bẻ khóa mật khẩu là rất quan trọng trong việc giành quyền truy cập vào hệ thống hoặc máy chủ.

Trong hệ thống và cơ sở dữ liệu, mật khẩu hiếm khi được lưu ở dạng văn bản thuần túy.

Mật khẩu luôn được băm trước khi được lưu trữ trong cơ sở dữ liệu và băm được so sánh trong quá trình xác minh.

Tùy thuộc vào mã hóa được sử dụng, các hệ thống khác nhau lưu trữ các băm mật khẩu theo những cách khác nhau. Và nếu bạn có mã băm, bạn có thể dễ dàng bẻ khóa bất kỳ mật khẩu nào.

Và trong bài viết này, chúng ta sẽ khám phá cách bẻ khóa hàm băm mật khẩu bằng công cụ dòng lệnh Hashcat tiện dụng và tuyệt vời.

Vậy hãy bắt đầu.

Nhưng trước đó…

Hàm băm là gì?

Băm là quá trình chuyển đổi một văn bản đầu vào bình thường thành một chuỗi văn bản có kích thước cố định bằng cách sử dụng một số hàm toán học được gọi là Hàm băm. Bất kỳ văn bản nào, bất kể độ dài, đều có thể được biến thành sự kết hợp ngẫu nhiên của các số nguyên và bảng chữ cái bằng cách sử dụng một thuật toán.

  • Đầu vào đề cập đến thông báo sẽ được băm.
  • Hàm băm là thuật toán mã hóa như MD5 và SHA-256 để chuyển đổi một chuỗi thành giá trị băm.
  • Và cuối cùng, giá trị băm là kết quả.

Hashcat là gì?

Hashcat là công cụ khôi phục mật khẩu nhanh nhất. Nó được thiết kế để phá những mật khẩu phức tạp cao trong một khoảng thời gian ngắn. Và công cụ này cũng có khả năng tấn công cả wordlist và brute force.

  3 cách để nhân ma trận trong Python

Hashcat có hai biến thể. Dựa trên CPU và GPU (Đơn vị xử lý đồ họa). Công cụ dựa trên GPU có thể bẻ khóa các hàm băm trong thời gian ngắn hơn so với CPU. Bạn có thể kiểm tra các yêu cầu về trình điều khiển GPU trên trang web chính thức của họ.

Đặc trưng

  • Miễn phí và mã nguồn mở
  • Hơn 200 biến thể kiểu băm có thể được thực hiện.
  • Hỗ trợ nhiều hệ điều hành như Linux, Windows và macOS.
  • Đa nền tảng như hỗ trợ CPU và GPU có sẵn.
  • Nhiều hàm băm có thể được bẻ khóa cùng một lúc.
  • Các tệp hex-salt và hex-charset được hỗ trợ, cùng với việc điều chỉnh hiệu suất tự động.
  • Có sẵn một hệ thống điểm chuẩn tích hợp.
  • Các mạng bẻ khóa phân tán có thể được hỗ trợ bằng cách sử dụng các lớp phủ.

Và bạn có thể xem các tính năng khác cũng từ trang web của họ.

Cài đặt Hashcat

Trước tiên, hãy đảm bảo rằng hệ thống Linux của bạn được cập nhật với các chương trình và công cụ mới nhất.

Đối với điều này, hãy mở một thiết bị đầu cuối và nhập:

$ sudo apt update && sudo apt upgrade

Hashcat thường được cài đặt sẵn trong Kali Linux. Bạn có thể tìm thấy công cụ này trong phần bẻ khóa mật khẩu. Nhưng nếu bạn cần cài đặt nó theo cách thủ công trong bất kỳ bản phân phối Linux nào, hãy nhập lệnh sau vào terminal.

$ sudo apt-get install hashcat

Công cụ sử dụng

Để bắt đầu với Hashcat, chúng tôi sẽ cần một số băm mật khẩu. Nếu bạn không có hash để crack, chúng tôi sẽ tạo một số hash trước.

Để tạo hàm băm bằng dòng lệnh, chỉ cần làm theo định dạng dưới đây.

echo -n "input" | algorithm | tr -d "-">>outputfiename

Ví dụ: bạn có thể thấy tôi đã chuyển một số từ thành hàm băm bằng cách sử dụng thuật toán md5 bên dưới.

┌──(root💀kali)-[/home/writer/Desktop]
└─# echo -n "techpoe.com" | md5sum | tr -d "-">>crackhash.txt
echo -n "password123" | md5sum | tr -d "-">>crackhash.txt
echo -n "Webtechnology" | md5sum | tr -d "-">>crackhash.txt
echo -n "microsoftteams" | md5sum | tr -d "-">>crackhash.txt
echo -n "recyclebin" | md5sum | tr -d "-">>crackhash.txt

Và kết quả đầu ra sẽ được lưu trong tệp crackhash.txt.

  Top 7 địa chỉ thể thao Kodi tốt nhất

Bây giờ chúng ta sẽ kiểm tra các hàm băm đã được lưu trong tệp đã cho.

┌──(root💀kali)-[/home/writer/Desktop]
└─# cat crackhash.txt

066d45208667198296e0688629e28b14
482c811da5d5b4bcd497ffeaa98491e3
72a2bc267579aae943326d17e14a8048
2192d208d304b75bcd00b29bc8de5024
caae8dd682acb088ed63e2d492fe1e13

Bạn có thể thấy, bây giờ chúng tôi có một số băm để crack. Đây là quy trình để tạo một hàm băm bằng cách sử dụng thuật toán bạn chọn.

Bước tiếp theo là khởi động công cụ Hashcat trong máy Linux của bạn. Chỉ cần sử dụng lệnh sau để sử dụng Hashcat.

$ hashcat --help

Nó sẽ đưa ra tất cả các tùy chọn bạn cần biết để chạy công cụ. Trên thiết bị đầu cuối, bạn có thể tìm thấy tất cả các chế độ tấn công và băm.

Hình thức chung của lệnh là

$ hashcat -a num -m num hashfile wordlistfile

Ở đây ‘num’ đại diện cho một cuộc tấn công cụ thể và chế độ băm để sử dụng. Nếu bạn cuộn thiết bị đầu cuối, bạn có thể tìm thấy các con số chính xác cho mọi cuộc tấn công và chế độ băm, như đối với md4 – số là 0 và đối với thuật toán sha256 – con số là 1740.

Danh sách từ mà tôi sẽ sử dụng là danh sách từ rockou. Bạn có thể dễ dàng tìm thấy danh sách từ đó trong đường dẫn / usr / share / wordlists.

Bạn thậm chí có thể sử dụng lệnh định vị để tìm đường dẫn danh sách từ đó.

┌──(root💀kali)-[/home/writer]
└─# locate rockyou.txt

Và cuối cùng, để bẻ khóa hàm băm bằng cách sử dụng tệp wordlist, hãy sử dụng lệnh sau.

$ hashcat -a 0 -m 0 ./crackhash.txt rockyou.txt

Sau khi chạy lệnh này, bạn có thể gặp lỗi thời gian chạy (lỗi ngoại lệ độ dài mã thông báo) có thể được giải quyết dễ dàng.

Để giải quyết vấn đề này, hãy lưu từng băm riêng biệt trong một tệp khác nhau. Lỗi này xảy ra nếu bạn có tốc độ CPU hoặc GPU thấp. Nếu máy tính của bạn có bộ xử lý tốc độ cao, bạn có thể dễ dàng bẻ khóa tất cả các hàm băm cùng một lúc như một tệp duy nhất.

  Cách xem Disney + từ xa với bạn bè bằng GroupWatch

Vì vậy, sau khi sửa lỗi và mọi thứ, kết quả sẽ như thế này.

┌──(root💀kali)-[/home/writer/Desktop]
└─# hashcat -a 0 -m 0 hashcrack.txt rockyou.txt
hashcat (v6.1.1) starting...

OpenCL API (OpenCL 1.2 pocl 1.6, None+Asserts, LLVM 9.0.1, RELOC, SLEEF, DISTRO, POCL_DEBUG) - Platform #1 [The pocl project]
=============================================================================================================================
* Device #1: pthread-Intel(R) Core(TM) i5-8265U CPU @ 1.60GHz, 2403/2467 MB (1024 MB allocatable), 4MCU

Minimum password length supported by kernel: 0
Maximum password length supported by kernel: 256

Hashes: 1 digests; 1 unique digests, 1 unique salts
Bitmaps: 16 bits, 65536 entries, 0x0000ffff mask, 262144 bytes, 5/13 rotates
Rules: 1

Dictionary cache built:
* Filename..: rockyou.txt
* Passwords.: 14344405
* Bytes.....: 139921671
* Keyspace..: 14344398
* Runtime...: 1 sec

8276b0e763d7c9044d255e025fe0c212: [email protected]
                                                 
Session..........: hashcat
Status...........: Cracked
Hash.Name........: MD5
Hash.Target......: 8276b0e763d7c9044d255e025fe0c212
Time.Started.....: Sun Dec 12 08:06:15 2021 (0 secs)
Time.Estimated...: Sun Dec 12 08:06:15 2021 (0 secs)
Guess.Base.......: File (rockyou.txt)
Guess.Queue......: 1/1 (100.00%)
Speed.#1.........:  1059.6 kH/s (0.52ms) @ Accel:1024 Loops:1 Thr:1 Vec:8
Recovered........: 1/1 (100.00%) Digests
Progress.........: 4096/14344398 (0.03%)
Rejected.........: 0/4096 (0.00%)
Restore.Point....: 0/14344398 (0.00%)
Restore.Sub.#1...: Salt:0 Amplifier:0-1 Iteration:0-1
Candidates.#1....: 123456 -> pampam

Started: Sun Dec 12 08:06:13 2021
Stopped: Sun Dec 12 08:06:16 2021

Trong kết quả trên, sau khi chi tiết bộ nhớ cache từ điển, bạn có thể nhận thấy, băm đã bị bẻ khóa và mật khẩu đã bị lộ.

Sự kết luận

Tôi hy vọng bạn đã hiểu rõ hơn về việc sử dụng Hashcat để bẻ khóa mật khẩu.

Bạn cũng có thể muốn biết về các công cụ bạo lực khác nhau để kiểm tra thâm nhập và một số công cụ dồn nén tốt nhất.

x