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 : 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 Danh mục hình ảnh Lời mở đầu Chương 1: Khái quát về Kali linux và HAITI 1.1 Khái quát về Kali linux 1.2 Khái quát về HAITI Chương 2: Hướng dẫn cài đặt 10 2.1 Hướng dẫn cài kali linux máy ảo Vitrual Box 10 2.2 Hướng dẫn cài đặt HAITI 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 Hàm băm Md5 SHA-1 Secure Hash Algorithm 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 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 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 phiên bả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à phát triển với tớc độ chóng mặt, mang lại nhiều lợi ích cho nhân loại Từ đời sớng sinh hoạt đến hoạt động kinh doanh, hoạt động quản lý, chỉ đạo máy nhà nước thì đều có diện và đóng góp của Cơng Nghệ Thơng Tin Tuy nhiên, bên cạnh mặt tích cực mà mang lại vẫn cịn tồn tại nhiều mặt tiêu cực ngày trở nên nghiêm trọng, nhức nhối cho xã hội như: các nguy công mạng nhằm phá hoại hệ thống mạng, hệ thống thông tin, nguy bị đánh cắp thông tin “nhạy cảm” của cá nhân, tổ chức, doanh nghiệp, các quan nhà nước… Với phát triển không ngừng của kĩ thuật máy tính, nguy bị hacker công vào hệ thống thông tin ngày càng gia tăng, vấn đề password ngày trở nên phức tạp, giờ password khơng chỉ đơn ch̃i kí tự bí mật của riêng user, mà ln ở nguy bị cracking cao độ, đó đòi hỏi người dùng cần có kiến thức về password Để công và đánh cắp password, các hacker phải có kịch bản công và sử dụng các công cụ để thực quá trình đánh cắp Một số các công cụ được các hacker sử dụng phổ biến là công cụ Kali linux Kali Linux hỗ trợ nhiều công cụ để công và crack password Trong bài này chúng ta sẽ tìm hiểu công cụ HAITI Kali Linux Chương 1: Khái quát về Kali linux HAITI 1.1 Khái quát về Kali linux - Kali Linux là bản phân phối Linux dựa Debian, được tài trợ và phát triểu bởi công ty Offensive Security Ltd hoạt động 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 học tập và hoạt động lĩnh vực bảo mật bởi vì nó cung cấp nhiều công cụ cho những tác vụ liên quan đến bảo mật 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 bản phân phối Linux dựa nền Ubuntu mang tên Backtrack - Ngày 13 tháng năm 2013 công ty Offensive Security Ltd chính thức phát hành Kali Linux, bản nâng cấp toàn diện của Backtrack - Offensive Security Ltd là tổ chức lớn và đáng tin cậy thế giới bảo mật, họ còn là đơn vị chứng nhận số chứng chỉ bảo mật cao cấp như: OSCP, OSCE, OSWP, OSEE - Kali Linux là hệ điều hành được sử dụng nhiều 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 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 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 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ụ Penetration Testing, Security research, Computer Forensics và Reverse Engineering,… - Kali cung cấp loạt các tính tìm thấy 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 cơng, khai thác vào Wifi Aircrack-ng, Kismet Pixie • Đối với các nhu cầu kiểm thử công khai thác vào mật khẩu sẽ có Hydra, Crunch, Hashcat John the Ripper • Có 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) cơng cụ dịng lệnh (và thư viện) để xác định loại của hàm băm định Thư viện được sử dụng cho việc viết kịch bản khơng phải sử dụng dịng lệnh quy trình - HAITI có thể phát 382 loại hàm băm khác - HAITI hỗ trợ các thuật toán đại SHA3, Keccak, Blake2, v.v - Có thể sử dụng HAITI bằng công cụ dòng lệnh thư viện CLI - HAITI hỗ trợ đầu 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 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 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ụ đều nhận dạng sai các hàm băm đại Keccak / SHA3 / Blake2, v.v - Ngồi ra, cơng cụ hash – identifier khơng có tùy chọn khơng tiện dụng cho việc tạo tập lệnh findmyhash cũng hạn chế Công cụ tốt cả hashID (để xác định hàm băm) vì nó không có gì thay đổi năm, các vấn đề PR mở xếp chồng lên nhau, lỡi vẫn cịn sớ tính vẫn còn thiếu - Đó là động thúc đẩy tạo 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 năm 2021, gần hai năm sau Haiti được phát triển, dự án có tên Name-That-Hash nổi lên được viết bằng Python Cho tới 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 và có số chức bị hỏng chưa hoàn thành Vì Vậy, cho đến thời điểm 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 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 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 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] Trong đó: + options: là các lựa chọn được hỗ trợ + là mã băm cần nhận dạng - Haiti hỗ trợ các options sau: + no-color : kết quả không 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 tại - Hình 17: Lấy 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 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 màu sắc short: hiển thị ở dạng ngắn gọn, không tham chiếu hashcat và john the ripper Hình 21: Nhận dạng được SHA-1 - Kết quả haiti nhận 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ỉ 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 được hàm băm SHA-256 với tham chiếu hashcat: 1400 4.4 Nhận dạng mã băm Haval256 (option: john-only) - Mã hóa ký tự “1” bằng hàm băm HAVAL256,5 Hình 24: Mã hóa “1” bằng hàm Haval256 - Dùng haiti nhận diện mã băm: 7045e5094aee9618214c1218b575d7f2325645e2830622a706ec39616e16a936 - Gõ câu lệnh: haiti john-only 7045e5094aee9618214c1218b575d7f2325645e2830622a706ec39616e16a936 - john-only: chỉ tham chiếu john the ripper Hình 25: Kết quả nhận dạng được Haval256(5 vòng) 4.5 Nhận dạng mã băm Ripemd128 (option: debug) - Mã hóa ký tự “1” bằng hàm băm ripemd128 Hình 26: Mã hóa "1" bằng hàm Ripemd128 - Dùng haiti nhận diện mã băm: 964297086cacedf34c500708065bca73 - Gõ câu lệnh: haiti debug 964297086cacedf34c500708065bca73 - debug: hiển thị trạng thái các tham số Hình 27: Kết quả nhận dạng được Ripemd128 Chương 5: Tổng kết 5.1 So sánh - HashID, HashTag, findmyhash và Hash-identifer đều là những công cụ nhận diện hàm băm HAITI đã không còn được nâng cấp và bảo trì cách nhiều năm HAITI cho đến tại vẫn còn được nâng cấp vào bảo trì cùng với Name That Hash - HAITI thực trả về kết quả có hỗ trợ hiển thị màu sắc khác dễ nhìn và quan sát các công cụ khác hashID, hashtag,… - HAITI có thể chạy cả dòng lệnh và thư viện thuận lợi hashID chỉ hỗ trợ chạy dòng lệnh - HAITI hỗ trợ nhận dạng những hàm băm đại SHA3, Keccak, Blake2, etc Còn Name That Hash chưa hỗ trợ nhiều hàm băm đại và số thuật toán vẫn chưa được hoàn thiện so với HAITI - Phần lớn công cụ phát hàm băm trước đều được viết bằng Python, kể cả Name That Hash được viết năm cũng được viết bằng Python Nhưng HAITI lại được viết bằng Ruby - HAITI hỗ trợ nhận dạng số lượng hàm băm khác lên tới 386 hàm băm Nhiều nhiều so với các công cụ nhận dạng hàm băm trước Dagon(48), Findmyhash(17) và nhiều cả Name that Hash(365) - Thực tế cho thấy, Haiti nhận diện hàm băm nhanh hơn, chính xác so với công cụ HashID, HashTag,… Bảng so sánh HAITI với các công cụ nhận dạng hàm băm khác Công cụ Bảo trì Màu Dòng Thư Ngôn Hỗ trợ Số lượng sắc viện ngữ các hàm hàm băm hỗ đại? trợ lệnh haiti (2019-nay) có có có Ruby có 382 hashID (2013-2015) ko có ko Python ko 275 Hash- (2011-2011) ko ko ko Python ko ~126 Dagon (2017-2018) ít ko ko Python ít ~48 Findmy (2011-2011) ko ko ko Python ko ~17 (2021-nay) có có có Python có 365 HashTag (2013-2013) ko ko ko Python ít ~137 identifer hash Name that Hash 5.2 Đánh giá - Cho tới thời điểm tại, HAITI là công cụ nhận dạng hàm băm tốt và được dùng phổ biến - HAITI được hỗ trợ đa dạng các nền tảng dòng lệnh hay thư viện - HAITI có thể phát nhiều các hàm băm khác và cả các hàm băm đại - Cho tới thời điểm tại, HAITI vẫn được bảo trì và nâng cấp Vì vậy HAITI sẽ còn phát triển và hoàn thiện tương lai - Tuy nhiên, Haiti vẫn còn tồn tại số lỗi nhận dạng các hàm băm có mã băm có số bit tương tự 5.3 Kết luận - Qua những so sánh và nhận xét về Haiti, chúng ta có thể thấy Haiti là công cụ tốt để nhận diện hàm băm ở thời điểm tại, hỗ trợ nhận diện nhiều hàm băm khác - Tuy nhiên, khó để nói Haiti và Name that hash thì công cụ nào là tốt Tùy thuộc vào mỗi người mà kết quả nhận định sẽ khác Nhưng nhìn chung cả Haiti và Name that hash đều là các công cụ nhận dạng hàm băm tôt, hỗ trợ nhận dạng nhiều loại hàm băm đời mới và vẫn còn được bảo trì, nâng cấp cho tới tại Lời cảm ơn Lời đầu tiên, em xin gửi lời tri ân sâu sắc đến thầy Đặng Minh Tuấn Trong trình tìm hiểu và học tập môn An toàn mạng, em đã nhận được giảng dạy và hướng dẫn tận tình, tâm huyết của thầy Thầy đã giúp em tích lũy thêm nhiều kiến thức hay bổ ích Tuy nhiên, kiến thức về môn An toàn mạng của em vẫn còn những hạn chế định Do đó, không tránh khỏi những thiếu sót quá trình hoàn thành bài tiểu luận này Mong thầy xem và góp ý để bài tiểu luận của em được hoàn thiện Kính chúc thầy hạnh phúc và thành cơng nữa nghiệp “trồng người” Kính chúc thầy dồi dào sức khỏe để tiếp tục dìu dắt nhiều thế hệ học trò đến những bến bờ tri thức Em xin chân thành cảm ơn! Hà Nội, ngày 21 tháng 12 năm 2021 Sinh viên Hiếu Lê Minh Hiếu Tài liệu tham khảo [1] t kiem, “tienkiem.com,” [Trực tuyến] Available: https://tienkiem.com.vn/tim-hieukali-linux-la-gi-tong-quan-ve-he-dieu-hanh-kali-linux/ [2] A ZANNI, “Penetration Testing Tools,” 2021 [Trực tuyến] Available: https://en.kali.tools/?p=1567 [3] A ZANNI, “Ethical hacking and penetration testing,” [Trực tuyến] Available: https://miloserdov.org/?p=6474 ... https://tienkiem.com.vn/tim-hieukali-linux-la-gi-tong-quan-ve-he-dieu-hanh-kali-linux/ [2] A ZANNI, “Penetration Testing Tools,” 2021 [Trực tuyến] Available: https://en.kali.tools/?p=1567 [3] A ZANNI, “Ethical hacking and penetration... ơ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... thông tin đã và phát triển với tớc độ chóng mặt, mang lại nhiều lợi ích cho nhân loại Từ đời sớng sinh hoạt đến hoạt động kinh doanh, hoạt động quản lý, chỉ đạo máy nhà nước