1.6 Các công cụ Footprinting phổ biến - Một số nguồn thông thường được sử dụng để thu thập thông tin bao gồm sau đây: + Domain name lookup + Whois + Nslookup + Sam Spade CHƯƠNG 2: TÌM
GIỚI THIỆU VỀ FOOTPRINTING
Footprinting là gì?
Footprinting là một phần của giai đoạn chuẩn bị tấn công trong an ninh mạng, nhằm tích lũy dữ liệu về môi trường và kiến trúc của mục tiêu Quá trình này thu thập thông tin tổng quan về hệ thống, mạng và cơ sở hạ tầng liên quan để hiểu cách hoạt động và các yếu tố có thể bị lợi dụng Mục tiêu chính của footprinting là xác định bối cảnh công nghệ, phạm vi hệ thống và điểm yếu tiềm ẩn nhằm đánh giá rủi ro và hỗ trợ lên kế hoạch phòng thủ hoặc ứng phó phù hợp Trong các bài viết về bảo mật và quản trị rủi ro, footprinting được trình bày như khái niệm cơ bản giúp người đọc hiểu cách thu thập dữ liệu và đánh giá môi trường CNTT của mục tiêu.
Footprinting là quá trình có thể tiết lộ lỗ hổng bảo mật của hệ thống và xác định những điểm dễ bị khai thác Đây là một trong những cách nhanh nhất mà các hacker có thể dùng để thu thập thông tin về các hệ thống máy tính và các công ty sở hữu những hệ thống này.
Mục tiêu
Footprinting bắt đầu bằng cách xác định mục tiêu hệ thống, ứng dụng, hoặc vị trí vật lý của mục tiêu
Một thông tin được biết đến, thông tin cụ thể về tổ chức được thu thập bằng cách sử dụng phương pháp không xâm nhập.
Tại sao phải Footprinting ?
Giai đoạn chuẩn bị nhằm thu thập càng nhiều thông tin càng tốt về một hệ thống, bao gồm khả năng truy cập từ xa, các cổng (port) và dịch vụ đang chạy, cùng với các khía cạnh bảo mật cụ thể liên quan đến hệ thống đó Việc nắm bắt những dữ liệu này cho phép đánh giá rủi ro, lên kế hoạch tăng cường bảo mật và tối ưu hóa cấu hình để đảm bảo an toàn cho mạng và tài sản công nghệ thông tin Đây là bước nền tảng để phân tích hệ thống một cách toàn diện, hướng tới cải thiện hiệu suất bảo mật và hỗ trợ các quyết định bảo vệ phù hợp với mục tiêu kinh doanh.
Footprinting những gì ?
Thông tin bổ sung có thể bao gồm nhận diện công nghệ Internet được sử dụng, hệ điều hành và phần cứng đang hoạt động, hoạt động của địa chỉ IP, địa chỉ email và số điện thoại, cũng như các chính sách và thủ tục liên quan.
Các bước của việc Footprinting
Bảy bước của việc thu thập thông tin:
1) Tìm kiếm thông tin cơ bản
2) Định vị phạm vi mạng
3) Xác định những máy đang hoạt động
4) Khám phá các cổng mở/điểm truy cập
5) Phát hiện hệ điều hành
6) Khám phá các dịch vụ trên các cổng
Trong bảy bước trên thì bước 1 và 2 chính là tiến trình Footprinting, các bước còn lại thuộc giai đoạn Scanning và Enumeration.
Các công cụ Footprinting phổ biến
- Một số nguồn thông thường được sử dụng để thu thập thông tin bao gồm sau đây:
TÌM HIỂU CÔNG CỤ DMITRY
Giới thiệu về DMitry
DMitry (Deepmagic Information Gathering Tool) là một công cụ thu thập thông tin nguồn mở dành cho Linux, do James Greig viết bằng ngôn ngữ C và ra mắt bản phát hành đầu tiên vào năm 2015 Dự án được phát triển dưới dạng nguồn mở, tương thích với Linux và GNOME, và có hai phiên bản: một phiên bản dựa trên dòng lệnh (CLI) và một phiên bản giao diện người dùng đồ họa (GUI).
DMitry là một công cụ thu thập thông tin mạnh mẽ nhằm mục đích thu thập càng nhiều thông tin về máy chủ lưu trữ càng tốt
Hình 3 – Thông tin cơ bản về Dmitry
Các tính năng của DMitry
DMitry là một dự án mã nguồn mở miễn phí được sử dụng để:
- Thực hiện tra cứu địa chỉ IP
- Truy xuất dữ liệu thời gian hoạt động có thể có, dữ liệu hệ thống và máy chủ
- Thực hiện tìm kiếm SubDomain trên máy chủ đích
- Thực hiện tìm kiếm địa chỉ E-Mail trên máy chủ đích
- Thực hiện quét cổng TCP trên máy chủ đích
- Một chương trình module cho phép người dùng chỉ định các module.
Ưu, nhược điểm của DMitry
+) Không cần phải nhập nhiều lệnh
HƯỚNG DẪN CÀI ĐẶT
DMitry thường được cài đặt sẵn trong Kali Linux, giúp người dùng thực hiện các tác vụ thu thập thông tin một cách nhanh chóng Tuy nhiên, nếu bạn đang sử dụng một bản phân phối Linux khác không có sẵn DMitry, bạn vẫn có thể cài đặt DMitry bằng cách sau:
Bước 1: Cập nhật cơ sở dữ liệu apt với việc sử dụng lệnh sau “sudo apt-get update”
Hình 4 – Cập nhật cơ sở dữ liệu apt
Bước 2: Sau khi cập nhật cơ sở dữ liệu apt, chúng ta có thể cài đặt bằng cách sử dụng lệnh “sudo apt-get –y install dmitry”
HƯỚNG DẪN SỬ DỤNG
Cách mở DMitry
Mở DMitry bằng cách sử dụng GUI
Hình 6 – Mở Dmitry trên giao diện Kali
Mở DMitry bằng cách sử dụng Terminal
Hình 7 – Mở Dmitry bằng Terminal
Các module của DMitry
Khi Dmitry được khởi chạy, chúng ta có thể thực hiện lệnh ở định dạng sau:
Hình 8 trình bày các module của Dmitry và cách các tùy chọn được truyền vào công cụ theo cú pháp -option Chỉ những tùy chọn Dmitry biết mới được áp dụng, còn những tham số khác sẽ bị bỏ qua, giúp người dùng kiểm soát chính xác những gì Dmitry thực hiện và tối ưu hóa quá trình thu thập thông tin.
Nếu các tùy chọn không được thông qua dưới dạng một khối nhóm, các tùy chọn sau sẽ được coi là mục tiêu máy chủ a) Flag -i:
Lệnh này được sử dụng để thực hiện tra cứu địa chỉ IP của máy chủ lưu trữ dmitry –i facebook.com
Hình 9 – Kết quả tra cứu đại chỉ IP b) Flag -w:
Lệnh này được sử dụng để thực hiện tra cứu whois trên tên miền của máy chủ dmitry –w facebook.com
Hình 10 – Kết quả tra cứu whois c) Flag -s:
Lệnh này được sử dụng để thực hiện tìm kiếm các subdomain (miền phụ) có thể có dmitry –s facebook.com
Hình 11 – Kết quả tra cứu các subdomain d) Flag -p:
Lệnh này được sử dụng để thực hiện quét cổng TCP trên máy chủ dmitry –p google.com
Hình 12 – Kết quả thực hiện quét cổng TCP trên máy chủ e) Flag -f:
Lệnh này được dùng để thực hiện quét cổng TCP trên máy chủ và hiển thị các cổng đã lọc trong báo cáo đầu ra, hữu ích khi có tường lửa Để chạy thành công, tham số -p phải được dùng đồng thời với lệnh Ví dụ: dmitry -pf google.com.
Hình 13 - Kết quả thực hiện quét cổng TCP trên máy chủ có tường lửa p1
Hình 14 - Kết quả thực hiện quét cổng TCP trên máy chủ có tường lửa p2 f) Flag -b:
Lệnh này được dùng để báo cáo biểu ngữ nhận được từ một cổng quét, và nó chỉ hoạt động nếu cổng đó gửi biểu ngữ khi bị quét Để lệnh này chạy thành công, tham số -p phải được dùng cùng với lệnh, ví dụ: dmitry -pb google.com.
Hình 15 – Kết quả thực hiện xác định cổng mở g) Flag -e:
Lệnh này được sử dụng để thực hiện tìm kiếm các địa chỉ email có thể dmitry –e google.com
Hình 16 – Kết quả thực hiện tìm kiếm email h) Flag -n:
Lệnh này được sử dụng để cung cấp cho chúng ta thông tin “netcraft.com” trên máy chủ dmitry –n tesla.com
Hình 17 – Kết quả thực hiện netcraft trên máy chủ i) Flag -o:
Lệnh này được dùng để lưu đầu ra của quá trình với tên tệp cụ thể Đầu ra mặc định là host.txt, nhưng bạn có thể đặt tên cho nó bất cứ tên nào bạn muốn Ví dụ, với lệnh dmitry -s google.com -o scan, kết quả sẽ được lưu dưới tên scan.
Hình 18 – Thực hiện tìm kiếm subdomain
Hình 19 – Kết quả tìm kiếm subdomain được lưu vào file scan.txt
DEMO DMITRY
Lab 1: Quét tìm địa chỉ IP và tên máy chủ
Cú pháp: dmitry –iw techyrick.com i - để tra cứu địa chỉ IP w - để tra cứu tên máy chủ
Hình 20 – Thực hiện tìm kiếm địa chỉ IP và tên máy chủ
Hình 21 – Kết quả tìm kiếm địa chỉ IP và tên máy chủ p1
Hình 22 – Kết quả tìm kiếm địa chỉ IP và tên máy chủ p2
Lab 2: Thực hiện quét toàn bộ
dmitry –winspo scan google.com
Hình 23 – Thực hiện quét toàn bộ thông tin máy chủ google.com
Hình 24 – Kết quả whois của máy chủ google.com
Hình 25 – Kết quả subdomain của máy chủ google.com
Hình 26 – Kết quả tìm kiếm email của máy chủ google.com