HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG
KHOA CƠNG NGHỆ THƠNG TIN
Học phần: An tồn mạng
Bài báo cáo:
Tìm hiểu về Kali tools : HAITI
Cài đặt thử nghiệm HAITI
Giảng viên hướng dẫn: TS. Đặng Minh Tuấn
Sinh viên thực hiện : Lê Minh Hiếu
Mã sinh viên
: B18DCAT085
Nhóm
: 02
Hà Nội 2021
Mục lục
Danh sách các thuật ngữ viết tắt
3
Danh mục hình ảnh
4
Lời mở đầu
6
Chương 1: Khái quát về Kali linux và HAITI
7
1.1
Khái quát về Kali linux
7
1.2
Khái quát về HAITI
8
Chương 2: Hướng dẫn cài đặt
10
2.1
Hướng dẫn cài kali linux trên máy ảo Vitrual Box
10
2.2
Hướng dẫn cài đặt HAITI trên Kali linux
15
Chương 3: Hướng dẫn sử dụng HAITI
18
Chương 4: Demo
20
4.1
Nhận dạng mã băm MD5 (option: extended)
20
4.2
Nhận dạng mã băm SHA-1 (options: no-color and short)
21
4.3
Nhận dạng mã băm SHA-256 (option: hashcat-only)
22
4.4
Nhận dạng mã băm Haval256 (option: john-only)
24
4.5
Nhận dạng mã băm Ripemd128 (option: debug)
25
Chương 5: Tổng kết
26
5.1
So sánh
26
5.2
Đánh giá
27
5.3
Kết luận
28
Lời cảm ơn
29
Tài liệu tham khảo
30
Danh sách các thuật ngữ viết tắt
Từ viết tắt
Thuật ngữ tiếng anh
Thuật ngữ tiếng việt
Kali Linux
Kali Linux
Hệ điều hành máy tính
HAITI
HAsh IdenTifIer
Công cụ nhận diện hàm băm
Md5
Message-Digest algorithm 5
Hàm băm Md5
SHA-1
Secure Hash Algorithm 1
Hàm băm SHA-1
JTP
John the Ripper
Công cụ phá mật khẩu
NTH
Name That Hash
Công cụ nhận diện hàm băm
Python
Python
Ngôn ngữ lập trình
Ruby
Ruby
Ngôn ngữ lập trình
SHA-256
Secure Hash Algorithm 256-bit
Hàm băm SHA-256
OSCP
Offensive Security Certified Professional
Chứng chỉ công nghệ
Nmap
Network mapper
Công cụ khai thác mạng
SHA-3
Secure Hash Algorithm 3
Hàm băm
Danh mục hình ảnh
Hình 1: Tạo máy ảo mới
10
Hình 2: Chọn file kali.iso
10
Hình 3: Đặt tên host
11
Hình 4: Đặt mật khẩu kali
11
Hình 5: Cấu hình ổ đĩa
12
Hình 6: Chọn ổ đĩa
12
Hình 7: Xác nhận các thông số đã cài đặt
13
Hình 8: Kali linux đang tiến hành cài đặt
13
Hình 9: Cài đặt Kali linux thành công
14
Hình 10: Đăng nhập Kali linux
15
Hình 11: Giao diện chính của Kali linux
16
Hình 12: Giao diện dòng lệnh
16
Hình 13: Cài đặt rubygems
17
Hình 14: Cài đặt haiti-hash
17
Hình 15: Lấy các options của haiti
18
Hình 16: Các options haiti hỗ trơ
18
Hình 17: Lấy ra phiên bản hiện tại của haiti
19
Hình 18: Mã hóa “0” bằng hàm MD5
20
Hình 19: Kết quả nhận dạng đươc md5
21
Hình 20: Mã hóa “1” bằng SHA-1
21
Hình 21: Nhận dạng đươc SHA-1
22
Hình 22: Mã hóa “1” bằng SHA-256
23
Hình 23: Kết quả nhận dạng đươc SHA-256 và tham chiếu hashcat: 140
23
Hình 24: Mã hóa “1” bằng hàm Haval256
24
Hình 25: Kết quả nhận dạng đươc Haval256(5 vòng)
24
Hình 26: Mã hóa "1" bằng hàm Ripemd128
25
Hình 27: Kết quả nhận dạng đươc Ripemd128
25
Lời mở đầu
Công nghệ thông tin đã và đang phát triển với một tốc độ chóng mặt, mang lại rất
nhiều lơi ích cho nhân loại. Từ đời sống sinh hoạt đến các hoạt động kinh doanh, các hoạt
động quản lý, chỉ đạo trong bộ máy nhà nước thì đều có sự hiện diện và đóng góp của
Công Nghệ Thông Tin. Tuy nhiên, bên cạnh các mặt tích cực mà nó mang lại thì vẫn còn
tồn tại nhiều mặt tiêu cực và ngày càng trở nên nghiêm trọng, nhức nhối cho xã hội như:
các nguy cơ tấn công mạng nhằm phá hoại hệ thống mạng, hệ thống thông tin, nguy cơ bị
đánh cắp các thông tin “nhạy cảm” của cá nhân, tổ chức, doanh nghiệp, các cơ quan nhà
nước…
Với sự phát triển không ngừng của kĩ thuật máy tính, nguy cơ bị hacker tấn công
vào hệ thống thông tin ngày càng gia tăng, vấn đề password ngày càng trở nên phức tạp,
giờ đây password không chỉ đơn thuần là một chuỗi kí tự bí mật của riêng user, mà nó
luôn ở trong nguy cơ bị cracking cao độ, do đó đòi hỏi người dùng cần có kiến thức về
password.
Để tấn công và đánh cắp password, các hacker phải có kịch bản tấn công và sử
dụng các công cụ để thực hiện quá trình đánh cắp. Một trong số các công cụ đươc các
hacker sử dụng phổ biến là bộ công cụ Kali linux. Kali Linux hỗ trơ rất nhiều công cụ để
tấn công và crack password. Trong bài này chúng ta sẽ đi tìm hiểu công cụ HAITI trong
Kali
Linux.
Chương 1: Khái quát về Kali linux và HAITI
1.1 Khái quát về Kali linux
-
Kali Linux là một bản phân phối Linux dựa trên Debian, đươc tài trơ và phát
triểu bởi công ty Offensive Security Ltd hoạt động trong lĩnh vực bảo mật
thông tin, kiểm tra thâm nhập
-
Kali Linux là giải pháp tiện lơi và tiện dụng cho những ai học tập và hoạt động
trong lĩnh vực bảo mật bởi vì nó cung cấp rất nhiều công cụ cho những tác vụ
liên quan đến bảo mật như chuẩn bị, phân loại, thu thập và cập nhật các công
cụ bảo mật
-
Năm 2006 năm Mati Aharoni, Devon Kearns and Raphaël Hertzog là những
người đã phát hành một bản phân phối Linux dựa trên nền Ubuntu mang tên
Backtrack
-
Ngày 13 tháng 3 năm 2013 công ty Offensive Security Ltd chính thức phát
hành Kali Linux, một bản nâng cấp toàn diện của Backtrack
-
Offensive Security Ltd là một tổ chức lớn và đáng tin cậy trong thế giới bảo
mật, họ còn là đơn vị chứng nhận một số chứng chỉ bảo mật cao cấp như:
OSCP, OSCE, OSWP, OSEE
-
Kali Linux là một hệ điều hành đươc sử dụng nhiều trong lĩnh vực bảo mật, bởi
cả những hacker tìm cách xâm nhập hệ thống và những chuyên gia về bảo mật
muốn bảo vệ các tài nguyên thông tin
-
Kali cung cấp rất nhiều các công cụ kiểm thử thâm nhập và bảo mật, bên cạnh
đó còn cung cấp nhiều công cụ mã nguồn mở giúp cho bạn dễ dàng trong việc
tiến hành kiểm tra bảo mật giúp tiết kiệm thời gian
-
Kali chứa rất nhiều công cụ với mục đích hổ trơ các nhiệm vụ bảo mật thông
tin khác nhau, ví dụ như Penetration Testing, Security research, Computer
Forensics và Reverse Engineering,…
-
Kali cung cấp một loạt các tính năng không thể tìm thấy trên các bản phân phối
Linux truyền thống:
● Trên 600 công cụ kiểm thử bảo mật hacking, pentest,…
● Các công cụ thu thập thông tin mạng Nmap, Wireshark,…
● Các công cụ tập trung tấn công, khai thác vào Wifi như Aircrack-ng,
Kismet và Pixie.
● Đối với các nhu cầu kiểm thử tấn công khai thác vào mật khẩu sẽ có
Hydra, Crunch, Hashcat và John the Ripper
● Có rất nhiều các công cụ hacking đươc cập nhật liên tục
1.2 Khái quát về HAITI
-
HAITI (HAsh IdenTifIer) là một công cụ dòng lệnh (và thư viện) để xác định
loại của một hàm băm nhất định. Thư viện đươc sử dụng cho việc viết kịch bản
vì không phải sử dụng dòng lệnh trong một quy trình con.
-
HAITI có thể phát hiện hơn 382 loại hàm băm khác nhau
-
HAITI hỗ trơ các thuật toán hiện đại như SHA3, Keccak, Blake2, v.v
-
Có thể sử dụng HAITI bằng công cụ dòng lệnh hoặc thư viện CLI
-
HAITI hỗ trơ đầu ra có màu sắc
-
HAITI tham chiếu tới Hashcat và John the Ripper
-
HashID không đươc nâng cấp kể từ tháng 3 năm 2015, hash-identifier cũng
không đươc nâng cấp từ năm 2011 còn Dagon không đươc nâng cấp từ tháng 6
năm 2018 và findmyhash cũng không đươc bảo trì từ năm 2011. Tất cả các
công cụ trên đều không thể hoặc nhận dạng sai các hàm băm hiện đại như
Keccak / SHA3 / Blake2, v.v.
-
Ngồi ra, một cơng cụ như hash – identifier không có tùy chọn và không tiện
dụng cho việc tạo tập lệnh. findmyhash cũng rất hạn chế. Công cụ tốt hơn cả là
hashID (để xác định hàm băm) nhưng vì nó không có gì thay đổi trong hơn 5
năm, các vấn đề và PR mở đang xếp chồng lên nhau, lỗi vẫn còn và một số tính
năng vẫn còn thiếu.
-
Đó là động cơ thúc đẩy tạo ra một công cụ mới và bằng cách thêm hỗ trơ màu
và thư viện. Thư viện đặc biệt tốt cho việc viết kịch bản vì người ta không phải
sử dụng dòng lệnh.
-
Kể từ tháng 1 năm 2021, gần hai năm sau khi Haiti đươc phát triển, một dự án
có tên Name-That-Hash nổi lên đươc viết bằng Python. Cho tới hiện này, có
hai tùy chọn để xác định hàm băm đó là HAITI và NTH.
-
Tuy nhiên NTH hỗ trơ ít hàm băm hơn và có 1 sớ chức năng bị hỏng hoặc chưa
hồn thành. Vì Vậy, cho đến thời điểm hiện tại, HAITI vẫn là công cụ xác định
hàm băm tốt và đươc sử dụng phổ biến.
Chương 2: Hướng dẫn cài đặt
2.1 Hướng dẫn cài kali linux trên máy ảo Vitrual Box
Hình 1: Tạo máy ảo mới
Hình 2: Chọn file kali.iso
Hình 3: Đặt tên host
Hình 4: Đặt mật khẩu kali
Hình 5: Cấu hình ổ đĩa
Hình 6: Chọn ổ đĩa
Hình 7: Xác nhận các thông số đã cài đặt
Hình 8: Kali linux đang tiến hành cài đặt
Hình 9: Cài đặt Kali linux thành công
2.2 Hướng dẫn cài đặt HAITI trên Kali linux
Hình 10: Đăng nhập Kali linux
Hình 11: Giao diện chính của Kali linux
Hình 12: Giao diện dòng lệnh
-
Nhập dòng lệnh: sudo apt install rubygems
Hình 13: Cài đặt rubygems
-
Nhập dòng lệnh: sudo gem install haiti-hash
Hình 14: Cài đặt haiti-hash
Chương 3: Hướng dẫn sử dụng HAITI
-
Gõ câu lệnh: haiti -h hoặc haiti -help để xem các option đươc hỗ trơ
haiti -h
Hình 15: Lấy các options của haiti
haiti -help
Hình 16: Các options haiti hỗ trơ
Cú pháp sử dụng haiti:
Haiti [options] <hash>
Trong đó:
+ options: là các lựa chọn đươc hỗ trơ
+ <hash> là mã băm cần nhận dạng
-
Haiti hỗ trơ các options sau:
+ --no-color : kết quả không hiện màu sắc
+ -e, --extened : hiển thị tất cả các thuật toán băm có thể đươc sử dụng
+ --short : kết quả hiển thị dưới dạng rút gọn, không hiển thị tham chiếu đến
hashcat và john the ripper
+ --hashcat-only: kết quả chỉ hiển thị tham chiếu với hashcat
+ --john-only: kết quả chỉ hiển thị tham chiếu với john the ripper
-
Gõ lệnh: haiti --version để xem phiên biển hiện tại
-
Hình 17: Lấy ra phiên bản hiện tại của haiti
Chương 4: Demo
4.1 Nhận dạng mã băm MD5 (option: extended)
-
Mã hóa ký tự “0” bằng hàm băm MD5
Hình 18: Mã hóa “0” bằng hàm MD5
-
Sử dụng haiti nhận diện mã băm: cfcd208495d565ef66e7dff9f98764da
-
Gõ câu lệnh: haiti -e cfcd208495d565ef66e7dff9f98764da
-
Option -e: liệt kê tất cả các hàm băm có thể có
Hình 19: Kết quả nhận dạng đươc md5
-
Kết quả haiti nhận diện đươc ra hàm băm md5
4.2 Nhận dạng mã băm SHA-1 (options: no-color and short)
-
Mã hóa ký tự “1” bằng hàm băm SHA-1
Hình 20: Mã hóa “1” bằng SHA-1
-
Dùng haiti nhận diện mã băm:
356a192b7913b04c54574d18c28d46e6395428ab
-
Gõ câu lệnh:
haiti --no-color --short 356a192b7913b04c54574d18c28d46e6395428ab
--no-color: để ko hiện màu sắc
--short: hiển thị ở dạng ngắn gọn, không hiện tham chiếu hashcat và john the
ripper
Hình 21: Nhận dạng đươc SHA-1
-
Kết quả haiti nhận ra hàm băm SHA-1
4.3 Nhận dạng mã băm SHA-256 (option: hashcat-only)
-
Mã hóa ký tự “1” bằng hàm băm SHA-256
Hình 22: Mã hóa “1” bằng SHA-256
-
Dùng haiti nhận diện mã băm:
6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b
-
Gõ câu lệnh: haiti --hashcat-only
6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b
-
Hashcat-only: chỉ hiện tham chiếu hashcat
Hình 23: Kết quả nhận dạng đươc SHA-256 và tham chiếu hashcat: 140
-
Kết quả haiti nhận ra đươc hàm băm SHA-256 với tham chiếu hashcat: 1400