Hướng dẫn xác định các loại hash

DDos

VIP Members
22/10/2013
524
2.191 bài viết
Hướng dẫn xác định các loại hash
Hash code là kết quả của việc xử lý một số dữ liệu bằng hàm băm (hashing). Hashing chuyển đổi một mảng dữ liệu đầu vào có độ dài tùy ý thành một chuỗi bit có độ dài cố định, được thực hiện bởi một thuật toán xác định. Hàm thực hiện thuật toán và thực hiện phép biến đổi được gọi là "hàm băm". Kết quả đầu ra được đưa ra bởi hàm băm được gọi là giá trị băm, mã băm, thông điệp băm, hoặc đơn giản là “hash”.

hash.jpg

Một trong những công dụng của hàm băm là để lưu trữ mật khẩu. Khi bạn đặt mật khẩu cho một tài khoản bất kỳ, mật khẩu này thường được lưu trữ dưới dạng kết của của hàm băm nhằm nâng cao tính bảo mật. Khi mật khẩu lưu trữ dưới dạng hash, nếu trang web hoặc hệ điều hành bị tấn công, hacker sẽ không thể biết được mật khẩu của người dùng vì chúng được lưu trữ dưới dạng băm. Có một số lượng lớn các hàm băm khác nhau, ví dụ như MD5, SHA1, CRC8... Một số hàm băm chỉ được sử dụng bởi các ứng dụng (MySQL, vBulletin) và giao thức nhất định.

Khi đánh cắp được giá trị băm của mật khẩu, tin tặc sử dụng các công cụ bẻ khóa nhằm đưa mật khẩu về dạng cleartext. Để bẻ khóa, việc đầu tiên cần làm là xác định loại hash.

Trong bài viết này mình giới thiệu một vài công cụ giúp các bạn xác định các loại hash nhé!

1. Hash IdenTifIer (HAITI)

HAITI là một công cụ dòng lệnh để xác định cách loại hash. Đồng thời, HAITI cũng có thể được sử dụng như một thư viện, giúp bạn dễ dàng viết các script.

Tính năng:
  • Hỗ trợ hơn 442 loại hash khác nhau
  • Hỗ trợ nhiều thuật toán hiện đại (SHA3, Keccak, Blake2, v.v.)
  • Tích hợp với Hashcat và John the Ripper để bẻ khóa hash
Để cài đặt, bạn chỉ cần chạy lệnh:
gem install haiti-hash

Giao diện dòng lệnh của công cụ:

Screenshot 2022-05-13 235306.png

Để xác định loại hash, bạn đơn giản chỉ cần nhập lệnh haiti "hash_code"

Ví dụ, hash code "4aec22f22755bd6f0f4ce8aa289c3401", công cụ sẽ trả về là hàm băm sử dụng là MD5

s.png

Trong kết quả trả về:
  • HC là viết tắt của hashcat và chuỗi số đằng sau (2600, 50, 60...) là giá trị hash mode trong công cụ này.
  • JtR là viết tắt của John the Ripper và giá trị đằng sau (dynamic_5...) là tên của thuật toán hash để crack trong công cụ này.
Thông thường, HAITI sẽ loại bỏ kết quả có chứa salt (là một giá trị duy nhất có thể được thêm vào cuối mật khẩu để tạo ra một giá trị băm khác nhau) theo mặc định. Nếu bạn muốn hiển thị tất cả các thuật toán hashing và salt, bạn thêm tùy chọn "-e" trong lệnh:

Screenshot 2022-05-13 235524.png

2. Name-That-Hash

Được viết bằng ngôn ngữ lập trình Python và thường xuyên được cộng đồng đóng góp mã, đây có thể là công cụ tốt nhất để xác định loại hash.

Để cài đặt, bạn chạy lệnh:
pip3 install name-that-hash

Giao diện dòng lệnh của công cụ:

1652462321035.png

Để xác định loại hash, bạn dùng lệnh name-that-hash với tùy chọn "-t"

Screenshot 2022-05-14 002119.png

Kết quả trả về chia thành 2 nhóm:
  • Most Likely: Loại hash có khả năng nhất
  • Least Likely: Loại hash ít có khả năng hơn
Hai ký tự viết tắt HC JtR có ý nghĩa tương tự như công cụ HAITI ở trên. Ngoài ra, kết quả còn cho biết loại hash được ứng dụng nhiều nhất trong lĩnh vực nào. Ví dụ, MD5 thường được sử dụng trong tệp Linux Shadow.
 
Chỉnh sửa lần cuối bởi người điều hành:
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
  • Thích
Reactions: abcxyz_123
Thẻ
hash md5
Bên trên