Tìm hiểu cách thức hoạt động của các công cụ quét lỗ hổng bảo mật
Trang 1Tìm hiểu cách thức hoạt động của các công cụ quét lỗ hổng
bảo mật
Sinh viên thực hiện
1 Lê Văn Sơn
2 Đỗ Khắc Tâm
Trang 2Phần 1: Tổng quan về các công cụ quét lỗ hổng bảo mật
Phần 2: Cách thức hoạt động của các công cụ quét lỗ hổng
bảo mật.
Phần 3: Demo với OpenVAS.
Tìm hiểu cách thức hoạt động của các công cụ quét lỗ hổng bảo mật
Trang 31 Khái niệm vể lỗ hổng bảo mật
Lỗ hổng bảo mật là những lỗi phần mềm, lỗi trong đặc điểm kỹ thuật và thiết kế, nhưng đa số là lỗi trong lập trình
Các nguyên nhân dẫn đến lỗ hổng bảo mật có thể là:
Trang 42 Các công cụ quét lỗ hổng bảo mật
Để vá được các lỗ hổng bảo mật thì cần phải tìm ra chúng trươc, tuy nhiên điều này là không hề dễ dàng Có những lố hổng tồn tại trông hệ thống mấy năm trước khi bị phát hiện.
Việc sử dụng các công cụ quét lỗ hổng bảo mật là cần thiết Nó có
chức năng tìm kiếm và phát hiện ra các lỗi trên web,phần mềm, hệ
thống… đồng thời có thể khắc phục chúng.
Có rất nhiều công cụ ra đời với mục đích này, trong đây ta tìm hiểu về
3 công cụ được đánh giá cao là Nessus,Nmap,OpenVas.
Tổng quan về các công cụ quét lỗ hổng
bảo mật
Trang 5Các công cụ
Cách thức hoạt động của các công cụ quét lỗ hổng bảo mật
Giới thiệt về Nessus
Các thành phần Các chính sách trong Nessus Cách thức hoạt động
Giới thiệt về Nessus
Các thành phần Các chính sách trong Nessus Cách thức hoạt động
NESSUS
Giới thiệu về Nmap
Các ưu điểm của Nmap
Các giai đoạn của Nmap
Sử dụng Nmap Một số ví dụ
Giới thiệu về
Nmap Các ưu điểm của Nmap
Các giai đoạn của Nmap
Sử dụng Nmap Một số ví dụ
Nmap
Giới thiệu về OpenVAS Kiến trúc của OpenVAS Phương thức hoạt động của
OpenVAS
Giới thiệu về OpenVAS Kiến trúc của OpenVAS Phương thức hoạt động của
OpenVAS
OpenVAS
Trang 61 Nessus
1.1 Giới thiệu về Nessus
Là công cụ quét lỗ hổng bảo mật từ xa, thực hiện hơn 1200 cuộc kiểm tra trên một máy tính nào đó để phát hiện ra các nguy cơ có thể xảy ra
Mục tiêu của nó là phát hiện các lỗ hổng tiềm ẩn trên các hệ thống được kiểm tra chẳng hạn như:
Các lỗ hổng cho phép cracker có thể kiểm soát hoặc truy cập các dữ liệu nhạy cảm trên hệ thống từ xa.
Lỗi cấu hình (ví dụ như mở mail relay, mất các bản vá,…)
Các mật khẩu mặc định, một số mật khẩu chung, các mật khẩu blank/absent (trắng hay thiếu) trên một số tài khoản hệ thống
Cách thức hoạt động của các
công cụ quét lỗ hổng bảo mật
Trang 71 Nessus
1.1 Giới thiệu về Nessus
Nessus có một cơ sở dữ liệu rất lớn về lỗ hổng hệ thống được cập nhật thường xuyên, giao diện dễ sử dụng và kết quả có thể được lưu lại dưới nhiều dạng khác nhau như biểu đồ, XML hay PDF để người dùng có thể
dễ dàng tham khảo
Cách thức hoạt động của các
công cụ quét lỗ hổng bảo mật
Trang 81 Nessus
1.1 Giới thiệu về Nessus
Nó không hoàn toàn là một giải pháp bảo mật, nó là một phần nhỏ của một chiến lược an ninh tốt
Nessus không tích cực ngăn chặn các cuộc tấn công, nó chỉ là một công
cụ kiểm tra máy tính của bạn để tìm các lỗ hổng mà tin tặc có thể khai thác
Có thể chạy trên nền tảng của nhiều hệ điều hành khác nhau như UNIX, Linux, Mac OS X, Windows
Hiện tại phiên bản Nessus 5.0 chạy trên giao diện web, do đó có thể dễ dàng truy cập, sử dụng trên mọi hệ điều hành
Cách thức hoạt động của các
công cụ quét lỗ hổng bảo mật
Trang 9Cách thức hoạt động của các công cụ quét lỗ hổng bảo mật
Trang 101 Nessus
1.2 Các thành phần của Nessus
Nessus Engine: nhận, thực thi và trả lời lại các yêu cầu quét của người dùng
Nessus Plugin: hệ thống file của ngôn ngữ kịch bản NASL(Nessus
Attrack Scripting Language), gồm các file định nghĩa inc và file kịch bản nasl
Nessus Server: thực hiện nhận các yêu cầu quét của người dùng, sau đó phân tích, tổng hợp, trả lại kết quả cho Nessus client
Nessus Client: hiển thị kết quả quét lại cho người dùng thông qua trình duyệt web
Cách thức hoạt động của các
công cụ quét lỗ hổng bảo mật
Trang 111 Nessus
1.3 Giới thiệu về các chính sách trong Nessus.
Một chính sách của Nessus bao gồm các cấu hình tùy chọn để thực thi trong quá trình kiểm tra lỗi bảo mật Các tùy chọn này bao gồm, nhưng chúng không giới hạn các thông số kiểm soát các khía cạnh kĩ thuật quét như thời gian tạm ngưng, số lượng máy chủ, các loại cổng máy quét
Nessus có một số chính sách mặc định được cung cấp bởi công ty
Tenable Network Security Họ cung cấp một số các chính sách mẫu để hỗ trợ bạn trong việc tạo ra các chính sách tùy chọn cho các đợn vị hoặc sử dụng để quét các tài nguyên của bạn
Cách thức hoạt động của các
công cụ quét lỗ hổng bảo mật
Trang 121 Nessus
1.3 Giới thiệu về các chính sách trong Nessus.
Một số chính sách mặc định của Nessus
External Network Scan
Internal Network Scan
Web App Tests
Prepare for PCI DSS audits
Cách thức hoạt động của các công cụ quét lỗ hổng bảo mật
Trang 131 Nessus
1.4 Cách thức hoạt động
1.4.1 Hoạt động của Nessus với mô hình Client-Server
Nessus hoạt động theo mô hình Client - Server Nessus Server sẽ chứa thông tin về cơ sở dữ liệu, cập nhật các lỗ hổng mới, thông tin về username và password để Nessus Client chứng thực, thực hiện quét lỗi các PC do Nessus Client yêu cầu
Cách thức hoạt động của các
công cụ quét lỗ hổng bảo mật
Trang 141 Nessus
1.4 Cách thức hoạt động
1.4.1 Hoạt động của Nessus với mô hình Client-Server
Ban đầu, Server sẽ tổng hợp tất cả các lỗi bảo mật hiện có Khi một máy tính Client yều cầu được kiểm tra các lỗi có tồn tại trên máy tính của mình hay không, đầu tiên chúng phải được kiểm tra xem có kết nối tới server hay
không, sau khi đã kiểm tra kết nối chúng sẽ được quét tùy thuộc vào các mức
độ yêu cầu khi quét
Mô hình này sẽ dựa vào kết quả sau khi máy Client yêu cầu kiểm tra, và dựa vào những lỗi đã được xác định có thể đưa ra những những hướng giải quyết một cách nhanh nhất
Cách thức hoạt động của các
công cụ quét lỗ hổng bảo mật
Trang 151 Nessus
1.4 Cách thức hoạt động
1.4.2 Mô hình Nessus Plugin
Nessus hoạt động dựa trên dữ liệu từ các Plugin Plugin là một chương trình chứa các dữ liệu về lỗ hổng trong hệ thống Plugin chứa các kịch bản được viết bằng NASL(Nessus Attrack Scripting Language) Các kịch bản là các phương thức kiểm tra lỗ hổng trên hệ thống NASL cho phép các nhà phân tích an ninh nhanh chóng tạo ra các Plugin riêng của họ
Nessus sử dụng hơn 55.000 plugin khác nhau, bao gồm cả các lỗ hổng cục
bộ và từ xa
Cách thức hoạt động của các
công cụ quét lỗ hổng bảo mật
Trang 161 Nessus
1.4 Cách thức hoạt động
1.4.2 Mô hình Nessus Plugin
Cách thức hoạt động của các công cụ quét lỗ hổng bảo mật
Trang 171 Nessus
1.4 Cách thức hoạt động
1.4.2 Mô hình Nessus Plugin
Các máy Client sẽ gửi yêu cầu đến Nessus Plugin(được thiết lập trong quá trình cấu hình quét) Yêu cầu này sẽ định danh Plugin mà Client muốn
sử dụng Sau khi nhận được yêu cầu từ Client, Nessus Plugin sẽ tiến hành quét hệ thống mà Client yêu cầu theo kịch bản có sẵn trong Plugin Sau khi quá trình quét hoàn tất thì Nessus Plugin sẽ gửi kết quả của quá trình quét cho Client.
Cách thức hoạt động của các
công cụ quét lỗ hổng bảo mật
Trang 181 Nessus
1.4 Cách thức hoạt động
1.4.3 Mô hình Nessus Knowledge Base
Knowledge Base là danh sách các thông tin thu thập về một máy chủ đang được thử nghiệm Nó cho phép bổ sung, hoặc thử nghiệm
để chia sẻ thông tin về hệ thống đích, cho phép kiểm tra thông minh hơn và sử dụng thận trọng hơn băng thông và khả năng xử lý.
Knowledge Base cho phép các Plugin sau tận dụng dữ liệu của
Plugin trước đó Điều này giúp Nessus dễ dàng mở rộng và tăng tốc
độ thực thi.Cách thức hoạt động của các
công cụ quét lỗ hổng bảo mật
Trang 191 Nessus
1.4 Cách thức hoạt động
1.4.3 Mô hình Nessus Knowledge Base
Giả sử, người quản trị thực hiện Scan toàn bộ một mạng con và nhận được một báo cáo kết quả Một vài ngày sau, anh ta phát hiện ra rằng các máy chủ mới đã được thêm vào mạng con Khi đó, nếu tiến hành Scan với tuỳ chọn " Only test hosts that have never been tested in the past " thì máy quét sẽ chỉ kiểm tra các máy chủ mới mà nó tìm thấy và liệt kê danh sách máy chủ mới cũng như các lỗ hổng trong các máy chủ mới đó
Cách thức hoạt động của các
công cụ quét lỗ hổng bảo mật
Trang 201 Nessus
1.4 Cách thức hoạt động
1.4.3 Mô hình Nessus Knowledge Base
Ví dụ, chúng ta thực hiện quét kiểm tra lỗi bảo mật trên Server
DomainName.com, quá trình kiểm tra hoàn tất và không thấy một lỗi bảo mật nào có trên đó Nhưng lúc này Nessus Knowledge Base được tạo ra cho máy chủ này lại cho thấy khoảng 2000 lỗi Người ta phải nhớ rằng Nessus Knowledge Base cũng chỉ có khoảng 1725 lỗi đã được trusted Và những thông số đó được sử dụng cho những nghiên cứu sau này để đảm bảo rằng liên tục cập nhật những lỗi bảo mật mới nhất
Cách thức hoạt động của các
công cụ quét lỗ hổng bảo mật
Trang 212 Nmap
2.1 Giới thiệu về Nmap
Nmap ("Network Mapper" ) Là một tiện ích mã nguồn mở miễn phí cho thăm dò mạng và kiểm toán an ninh
Nmap cho phép bạn sử dụng các packet IP thô để thực hiện việc thăm dò trên các host sẵn có trong 1 mạng về các dịch vụ (các cổng đang mở), phiên bản hệ điều hành đang chạy, loại bộ lọc, tường lửa
sử dụng
Nó được thiết kế để nhanh chóng quét các mạng lớn, nhưng hoạt động tốt đối với host duy nhất.
Cách thức hoạt động của các công cụ quét lỗ hổng bảo mật
Trang 222 Nmap
2.2 Ưu điểm của Nmap
Linh hoạt : Hàng chục hỗ trợ kỹ thuật tiên tiến để lập bản đồ các
mạng với các bộ lọc IP, tường lửa, router, và những trở ngại khác Điều này bao gồm nhiều cớ chế quét cổng (cả TCP và UDP), phát hiện hệ điều hành , phát hiện phiên bản, ping sweep,
Mạnh mẽ : Nmap đã được sử dụng để quét mạng lưới rộng lớn của
hàng trăm ngàn máy tính.
Dễ dàng : Nmap cung cấp một tập hợp phong phú các tính năng tiên
tiến cho người dùng, Những chương trình có sẵn cho những người không muốn biên dịch Nmap từ mã nguồn
Cách thức hoạt động của các công cụ quét lỗ hổng bảo mật
Trang 232 Nmap
2.2 Ưu điểm của Nmap
Miễn phí : Nmap có sẵn để tải về miễn phí, và cũng đi kèm với mã
nguồn đầy đủ mà bạn có thể chỉnh sửa và phân phối lại theo các điều khoản của giấy phép
Hoan nghênh : Nmap đã giành được nhiều giải thưởng, trong đó có
"Sản phẩm An toàn thông tin của năm" do Tạp chí Linux, Thông tin Thế giới và Codetalker Digest Nó đã được đặc trưng trong hàng trăm bài báo tạp chí, một số bộ phim, hàng chục cuốn sách, và một loạt truyện tranh
Cách thức hoạt động của các công cụ quét lỗ hổng bảo mật
Trang 242.3 Các giai đoạn của Nmap Scan
Script pre-scanning (tập lệnh trước khi quét) : Các Nmap Scripting Engine (NSE) sử
dụng một tập hợp các tập lệnh với mục đích đặc biệt để biết được thêm thông tin về hệ thống từ xa
Target enumeration (liệt kê mục tiêu): Trong giai đoạn này, Nmap nghiên cứu specifiers
host được cung cấp bởi người sử dụng, mà có thể là một sự kết hợp của host DNS names,
IP addresses, ký hiệu mạng CIDR, giai đoạn này không thể bỏ qua vì nó là điều cần thiết
để quét
Host discovery (ping scanning): Scan Network thường bắt đầu bằng cách phát hiện các
mục tiêu trên mạng đang online và do đó có thể điều tra sâu hơn
Cách thức hoạt động của các
công cụ quét lỗ hổng bảo mật
Trang 252 Nmap
2.3 Các giai đoạn của Nmap Scan
Reverse-DNS resolution (phân giải ngược DNS): Khi Nmap đã xác
định host để quét, nó sẽ tra tên Reverse-DNS của tất cả các host tìm thấy đang online bằng cách quét ping, Bước này có thể bị bỏ qua với tùy chọn -n (không có phân giải)
Port scanning (Quét cổng): Probes (các đầu dò) được gửi đi và
những phản hồi với những các đầu dò được sử dụng để phân loại cổng từ xa với các trạng thái như open, closed, filtered Quét cổng được tiến hành mặc định, có thể bỏ qua với tùy chọn –sn
Versisdwerdfron detection (phát hiện phiên bản): Nếu có cổng
được tìm thấy là open, Nmap có thể xác định những phần mềm
Cách thức hoạt động của các công cụ quét lỗ hổng bảo mật
Trang 262 Nmap
2.3 Các giai đoạn của Nmap Scan
Traceroute: Nmap chứa một thực hiện traceroute tối ưu hóa, kích
hoạt bởi tùy chọn –traceroute, nó có thể tìm ra định tuyến mạng tới nhiều host tương đương
Script scanning (Tập lệnh quét): Hầu hết Nmap Scripting Engine
(NSE) chạy trong giai đoạn này chứ không phải là giai đoạn
pre-scanning và giai đoạn postscan
Output (Đầu ra): Cuối cùng, Nmap thu thập tất cả các thông tin đã
lấy được và đưa nó lên màn hình hoặc vào một tập tin
Script post-scanning (Tập lệnh post-scanning): Sau khi Nmap đã
hoàn thành scanning, tập lệnh ở giai đoạn này có thể xử lý kết quả
Cách thức hoạt động của các công cụ quét lỗ hổng bảo mật
Trang 272 Nmap
2.3 Hướng dẫn sử dụng Nmap
Cấu trúc lệnh của nmap :
nmap [Scan Type(s)] {host mục tiêu} [Options]
nmap :tên chương trình.
Scan Type(s) : loại quét , có thể kết hợp nhiều loại quét
trong một lần quét
Một số Scan Type:
-sT connect Scan là phương thức quét TCP đáng tin cậy, hệ
thống gọi hàm connect() để kết nối đến cổng đang mở trên 1 máy
Cách thức hoạt động của các công cụ quét lỗ hổng bảo mật
Trang 28mà ít bị cản trở , ngăn cản
-sP Ping scanning kỹ thuật này được dùng trong trường hợp bạn
chỉ muốn biết có bao nhiêu host hiện đang online trên một
Network nào đó.
-sU UDP Scan Kỹ thuật này được sử dụng để xác định xem Port
Cách thức hoạt động của các công cụ quét lỗ hổng bảo mật
Trang 29định xem các Firewall có phải là một Firewall theo đúng nghĩa hay
chỉ
là một bộ lọc Packet SYN từ bên ngoài.
Cách thức hoạt động của các công cụ quét lỗ hổng bảo mật
Trang 302 Nmap
2.3 Hướng dẫn sử dụng Nmap
Một số Option
- O sử dụng để biết hệ điều hành chạy trên máy chủ, ví dụ như ta dùng Nmap
sử dụng phương thức scan là XMAS Scan và đoán biết hệ điều hành của: www.gocthuthuat.net ta dùng câu lệnh: nmap – sX –o www.gocthuthuat.net
- P Giải port sử dụng để scan
- F Chỉ những port trong danh sách scan của Nmap
- V Sử dụng Scan hai lần nhằm tăng độ tin cậy và hiệu quả của phương thức
scan nào ta sử dụng.
- P0 không sử dụng ping để Scan nhằm mục đích giảm thiểu các quá trình
quét ngăn chặn scan trên các trang web hay máy chủ.
Cách thức hoạt động của các công cụ quét lỗ hổng bảo mật
Trang 312 Nmap
2.4 Một số ví dụ
Quét Port (Scan Port)
Mục đích: Xem port nào đang Open, từ đó chúng ta có thể biết
được Target đang run những Service gì
Code: nmap –sT www.target.com
Nếu thích kín đáo, có thể sử dụng tùy chọn Scan SYN
Code: nmap –sS www.target.com –o info.txt
Cách thức hoạt động của các công cụ quét lỗ hổng bảo mật
Trang 332 Nmap
2.4 Một số ví dụ
Quét Ping Mục đích: Quét phân lớp D của một hệ thống mạng nào đó từ đó
cho ta biết trong phân lớp đó hiện đang có bao nhiêu host đang online Lệnh sau sẽ Ping các host đang Open Port 80:
Code: nmap –sP –PT80 202.162.48.0/24
Cách thức hoạt động của các công cụ quét lỗ hổng bảo mật
Trang 342 Nmap
2.4 Một số ví dụ
Quét Ping Sau khi scan ta thấy:
TCP probe ports is 80 Starting nmap V 2.53 by Fyodor (fyodor@dhp.com, www.insecure.com/nmap) Host (202.162.48.0) appears to be up
Host (202.162.48.1) appears to be up Host (202.162.48.2) appears to be up
Cách thức hoạt động của các công cụ quét lỗ hổng bảo mật