1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tích hợp các công cụ quyét lỗ hổng bảo mật

56 739 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 56
Dung lượng 3,25 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Điều này dẫn đến một yêu cầu cần phải tích hợp các công cụ quét lại để tạo thành một bộ công cụ có thể tập hợp được các điểm mạnh của từng công cụ riêng biệt.. Mục tiêu của đề tài là tíc

Trang 1

TRƯỜNG ĐẠI HỌC CẦN THƠ

KHOA CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC

TÍCH HỢP CÁC CÔNG CỤ QUÉT LỖ HỔNG BẢO MẬT

Sinh viên thực hiện Cán bộ hướng dẫn

Trang 2

TRƯỜNG ĐẠI HỌC CẦN THƠ

KHOA CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC

TÍCH HỢP CÁC CÔNG CỤ QUÉT LỖ HỔNG BẢO MẬT

Huỳnh Duy Khiêm Ths Phạm Hữu Tài

Có thể tìm hiểu luận văn tại:

 Thư viện Khoa Công nghệ Thông tin, Trường Đại học Cần Thơ

 Website: http://www.cit.ctu.edu.vn/

Trang 3

LỜI CẢM ƠN

Đầu tiên em xin gửi lời cảm ơn chân thành đến thầy Phạm Hữu Tài người đã hướng dẫn cũng như giúp đỡ em rất nhiệt tình trong suốt quá trình thực hiện luận văn vừa qua Nhờ sự tận tình và qua tâm của thầy em mới có đủ kiến thức và kinh nghiệm

để hoàn thành tốt luận văn tốt nghiệp này Đồng thời, em cũng xin gửi lời cảm ơn đến thầy Lâm Chí Nguyện đã giúp đỡ em rất tận tình trong việc lập trình và vẽ các giao diện điều khiển cho bộ công cụ

Em cũng xin gửi lời cảm ơn đến tất cả thầy cô khoa Công nghệ thông tin & Truyền thông, trường Đại học Cần Thơ Thầy cô đã tận tình giảng dạy và truyền đạt những kiến thức bổ ích cho em trong suốt những năm học qua, giúp em có được những kiến thức cần thiết cho việc thực hiện bài luận văn cũng như những tri thức làm hành trang cho em vào đời

Cuối cùng xin dành lời cám ơn cho ba mẹ, bạn bè những người đã ủng hộ em thực hiện luận văn này

Cần Thơ, ngày 05 tháng 04 năm 2011

Huỳnh Duy Khiêm

Trang 4

NHẬN XÉT CỦA CÁN BỘ HƯỚNG DẪN

Cần Thơ, ngày …… tháng …… năm 2011

Cán bộ hướng dẫn

Ths Phạm Hữu Tài

Trang 5

NHẬN XÉT CỦA CÁN BỘ HƯỚNG DẪN

Cần Thơ, ngày …… tháng …… năm 2011

Cán bộ hướng dẫn

Ths Lâm Chí Nguyện

Trang 6

NHẬN XÉT CỦA CÁN BỘ PHẢN BIỆN

Cần Thơ, ngày …… tháng …… năm 2011

Cán bộ phản biện

Ths Nguyễn Công Huy

Trang 7

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang i

NHẬN XÉT CỦA CÁN BỘ PHẢN BIỆN

Cần Thơ, ngày …… tháng …… năm 2011

Cán bộ phản biện

Ths Lâm Nhựt Khang

Trang 8

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang ii

MỤC LỤC

MỤC LỤC 1

TÓM TẮT iv

ABSTRACT v

TỪ KHÓA v

CHƯƠNG 1: TỔNG QUAN 1

1.1 ĐẶT VẤN ĐỀ 1

1.2 LỊCH SỬ GIẢI QUYẾT VẤN ĐỀ 1

1.3 PHẠM VI ĐỀ TÀI 2

1.4 PHƯƠNG PHÁP NGHIÊN CỨU / HƯỚNG GIẢI QUYẾT 2

1.4.1 Phương pháp nghiên cứu 2

1.4.2 Hướng giải quyết 2

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 4

2.1 TẤN CÔNG MẠNG 4

2.1.1 Các kiểu tấn công mạng 4

2.1.2 Các bước tấn công mạng 4

2.2 GIỚI THIỆU KỸ THUẬT QUÉT 5

2.2.1 Quá trình thực hiện việc tấn công 7

2.2.2 Kiểm tra hệ thống đang hoạt động 8

2.2.3 Kiểm tra các cổng đang mở 8

2.2.4 Xác định hệ điều hành (OS Fingerprinting)/ Lấy banner 15

2.2.5 Quét lỗ hổng, điểm yếu của hệ thống: 16

CHƯƠNG 3: NỘI DUNG VÀ KẾT QUẢ NGHIÊN CỨU 17

3.1 NỘI DUNG THỰC HIỆN 17

Trang 9

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang iii

3.2 GIỚI THIỆU CÁC CHƯƠNG TRÌNH ĐƯỢC SỬ DỤNG 19

3.2.1 Nmap 19

3.2.2 Nikto 21

3.2.3 Sqlmap 23

3.2.4 W3af 25

3.2.5 P0f 26

3.3 GIỚI THIỆU CÁC GIAO DIỆN ĐƯỢC VIẾT CHO CÁC CHƯƠNG TRÌNH DÒNG LỆNH 26

3.3.1 Giao diện Nmap 27

3.3.2 Giao diện Nikto 29

3.3.3 Giao diện Sqlmap 30

3.4 MÔ TẢ CÁC CHỨC NĂNG CỦA BỘ CÔNG CỤ 31

Chương 4: KẾT LUẬN VÀ ĐỀ NGHỊ 33

4.1 KẾT LUẬN 33

4.2 ĐỀ NGHỊ 33

PHỤ LỤC 34

TÀI LIỆU THAM KHẢO 45

Trang 10

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang iv

TÓM TẮT

Ngày nay, có rất nhiều công cụ quét hệ thống mạng Mỗi công cụ đều có các điểm mạnh, yếu riêng biệt Thêm vào đó, các công cụ lại có giao diện hoặc cấu trúc câu lệnh khác nhau Điều này dẫn đến một yêu cầu cần phải tích hợp các công cụ quét lại để tạo thành một bộ công cụ có thể tập hợp được các điểm mạnh của từng công cụ riêng biệt

Đề tài: “TÍCH HỢP CÁC CÔNG CỤ QUÉT LỖ HỔNG BẢO MẬT” được đưa ra nghiên cứu để giải quyết vấn đề này

Đề tài được nghiên cứu theo phương pháp nghiên cứu ứng dụng Mục tiêu của đề tài là tích hợp một bộ công cụ có thể quét lỗ hổng cũng như thu thập thông tin của một hệ thống mạng Nhằm hỗ trợ các nhà quản trị có bộ công cụ quét để tìm ra các lỗ hổng của

hệ thống Từ đó có thể khắc phục các lỗ hổng hay điểm yếu của hệ thống

Trang 11

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang v

ABSTRACT

Today, there are many network scanning tools Each tool has strengths, weak individually In addition, tools have interfaces or command structures differently This lead to a requirement what integrate a lot of scanning tools into a toolkit Thesis :

“INTEGRATING SCANNING TOOLS VULNERABILITIES” are made to resolve this problem

The objective of the project built a toolkit that can scan vulnerabilities as well as collect information of a network This toolkid can support administrator to find vulnerabilities of network So that, they can overcome vulnerabilities of network

TỪ KHÓA

Công cụ quét

An ninh mạng

Lỗ hổng mạng

Trang 12

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang 1

CHƯƠNG 1: TỔNG QUAN 1.1 ĐẶT VẤN ĐỀ

Khi khoa học máy tính và Internet ngày càng phát triển, thì các vấn đề về an ninh mạng ngày càng được chú trọng Do các hacker (kẻ xâm nhập) luôn tìm cách đột nhập vào các hệ thống máy nhằm phá hoại hay trộm cấp các thông tin quan trọng trong hệ thống máy tính đó Một vấn đề được đặt ra đối vối mọi hacker dù mũ đen hay mũ trắng

là khi đối mặt với một hệ thống máy tính, họ phải biết hệ thống đó hoạt động như thế nào để từ đó đưa ra những phương pháp tấn công hay phòng thủ một cách hữu hiệu

Các thông tin như các dịch vụ, hệ điều hành, webserver… sẽ chỉ ra cho hacker biết hệ thống hoạt động như thế nào và có những lỗ hổng gì Và kỹ thuật quét (scanning) có thể giúp họ có được các thông tin ấy

Hiện nay có rất nhiều chương trình hỗ trợ cho việc quét (scanning) nhưng mỗi chương trình có những chức năng cũng như các ưu, nhược điểm riêng Dựa trên thực tế

là mỗi khi muốn thực hiện việc quét một hệ thống máy tính chúng ta cần tìm những chương trình phù hợp với mục đích quét của mình và thử nghiệm xem các chương trình

đó có hoạt động hiệu quả hay không Dẫn đến việc rất mất thời gian và công sức của người sử dụng Điều này dẫn đến một nhu cầu cần phải có một bộ cộng cụ tích hợp nhiều công quét có thể thực hiện được hầu hết các loại quét một cách hiệu quả

1.2 LỊCH SỬ GIẢI QUYẾT VẤN ĐỀ

Hiện tại đã có một số công cụ quét tích hợp nhiều loại quét khác nhau vào trong chương trình của mình nhưng vẫn chưa có công cụ nào có thể thực hiện được hầu hết các loại quét Vì vậy đây là một đề tài mới cần được nghiên cứu và giải quyết

Trang 13

CHƯƠNG 1: TỔNG QUAN

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang 2

1.3 PHẠM VI ĐỀ TÀI

Đề tài phải thực hiện được một bộ công cụ tích hợp có các chức năng chính sau:

 Kiểm tra các host nào đang hoạt động

1.4 PHƯƠNG PHÁP NGHIÊN CỨU / HƯỚNG GIẢI QUYẾT

1.4.1 Phương pháp nghiên cứu

Phương pháp nghiên cứu ứng dụng: là loại hình nghiên cứu tìm ra những quy trình vận dụng các kết quả nghiên cứu cơ bản vào thực tiễn nhằm tạo ra các quy trình công nghệ mới, các nguyên lý quản lý xã hội…

1.4.2 Hướng giải quyết

- Tìm kiếm và thử nghiệm các công cụ quét:

Hiện tại, có rất nhiều công cụ quét nhưng không phải công cụ nào cũng hiệu quả, dễ sử dụng và có thể chạy trên Linux Để có thể tìm được những công cụ quét hữu hiệu ta phải tiến hành cài đặt và thử nghiệm các công cụ đó để kiểm tra độ chính xác của việc quét Từ đó chọn ra những công cụ quét phù hợp nhất để tích hợp vào bộ công

cụ

- Viết các giao diện người dùng cho bộ công cụ:

Cần phải có một giao diện để người dùng có thể chon lựa các công cụ trong bộ công cụ một cách dễ dàng Đồng thời, đối với các công cụ chạy trên dòng lệnh có cú

Trang 14

CHƯƠNG 1: TỔNG QUAN

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang 3

pháp câu lệnh phức tạp cũng cần phải có một giao diện người dùng với các tùy chọn tương ứng với các chức năng của công cụ để người dùng có thể dễ sử dụng

-Chọn công nghệ thực hiện:

+Nền tảng: hệ điều hành Ubuntu

Các năm gần đây, hệ điều hành Linux ngày càng phát triển và hoàn thiện đặc biệt là Ubuntu Đây cũng là một hệ điều hành có một cộng đồng người sử dụng khá đông đúc Chính vì tính phổ biến này nên nó sẽ được nhiều nhà phát triển lựa chọn làm nền tảng cho nhiều ứng dụng nói chung và các công cụ quét nói riêng Việc lựa chọn một hệ điều hành mã nguồn mở cũng nhằm mục đích an toàn cho người sử dụng, bởi các công cụ quét đôi khi cũng chính là con dao hai lưỡi khi bản thân nó cũng là một Trojan

+Ngôn ngữ: Java

Việc sử dụng một ngôn ngữ mở cho một hệ điều hành mã nguồn mở là phù hợp Hơn thế nữa, java có một bộ thư viện đồ sộ cho phép gọi và thực thi các chương trình cũng như xử lý việc hiển thị một cách hoàn hảo Và sử dụng java sẽ dễ tìm kiếm sự hỗ trợ do có một cộng đồng người sử dụng đông đảo

Trang 15

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang 4

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

2.1 TẤN CÔNG MẠNG

2.1.1 Các kiểu tấn công mạng

Có rất nhiều cách để một hacker có thể tiếp cận được với một hệ thống Tuy nhiên, hacker phải tìm được các điểm yếu hoặc lỗ hổng bảo mật của hệ thống đó Sau đây là cách mà hacker sử dụng để xâm nhập hoặc tấn công các hệ thống:

_Tấn công hệ điều hành: Các hệ điều hành ngày nay thường rất phức tạp, có

thể chạy rất nhiều dịch vụ và các phương thức để truy cập Ở chế độ mặc định, các hệ điều hành thường cho phép chạy một lượng lớn các dịch vụ cũng như mở rất nhiều cổng không cần thiết Các hacker có thể tìm kiếm các lỗ hổng trên hệ điều hành để từ

đó tiếp cận đến các hệ thống mạng

_Tấn công tầng ứng dụng: Đây là nơi giao tiếp trực tiếp với các ứng dụng

Các hacker sẽ lợi dụng các lỗ hổng của các ứng dụng này (như lỗi tràn bộ đệm…) để tiếp cận đến hệ thống

_Tấn công thư viện người dùng: các framework thường sử dụng chung một

số thư viện người dùng (như dll trong Window) phổ biến Bằng cách tấn công vào các thư viện này các hacker sẽ có thể tấn công vào các framework chạy trên hệ thống

_Tấn công dựa vào lỗi cấu hình: Do hệ thống quá lớn hay do người quản trị

không có các kiến thức cần thiết để cấu hình một cách chính xác dẫn đến các lỗi cấu hình cho hệ thống Từ đó các hacker có thể lợi dụng các lỗi cấu hình này để tấn công

hệ thống.[1]

2.1.2 Các bước tấn công mạng

Theo Certified Ethical Hacker (CEH) các bước tấn công một hệ thống sẽ bao gồm các bước sau:

Trang 16

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang 5

-Bước 1: Thăm dò

Đây là bước thuộc giai đoạn chuẩn bị Hacker sẽ cố gắng thu thập càng nhiều thông tin càng tốt về một hệ thống trước khi thực hiện việc tấn công Các thông tin được thu thập có thể là tên miền của website thuộc hệ thống hay email của người quản trị hệ thống…

-Bước 2: Quét hệ thống

Đây là giai đoạn trước khi tiến hành tấn công một hệ thống Hacker tiến hành quét hệ thống mạng để xác định các thông tin cụ thể của một hệ thống mạng Đây cũng là bước mà luận văn thực hiện

-Bước 3: Truy cập thành công

Hacker thâm nhập thành công vào hệ thống do lợi dụng các điểm yếu hoặc

lỗ hổng trên hệ thống mà hacker đã thu thập được ở hai bước trên

-Bước 4: Duy trì truy cập

Đây là giai đoạn hacker cố gắng giữ lại quyền truy cập hay sở hữu hệ thống

đã xâm nhập bằng cách tạo các backdoor, trojan, rookit… trên các hệ thống đó Và cố gắng đảm bảo quyền độc quyền sở hữu hệ thống của mình đối với các hacker khác

-Bước 5: Xóa dấu vết

Sau khi đã thực hiện thành công việc tấn công một hệ thống, hacker sẽ che dấu các hành động trong quá trình tấn công của mình, để kéo dài thời gian cho một cuộc tấn công khác, tiếp tục sử dụng các tài nguyên hoặc xóa các bằng chứng của việc tấn công nhằm loại bỏ trách nhiệm của mình với pháp luật

2.2 GIỚI THIỆU KỸ THUẬT QUÉT

Quét là một trong ba kĩ thuật thu thập thông tin (sau In dấu ấn_Footprintting và Liệt kê mạng_ Network Enumeration) của một hacker Những kẻ xâm nhập thường phải tốn đến 90% thời gian để thu thập thông tin và chỉ có 10% thời gian cho cuộc

Trang 17

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang 6

các nhà quản trị mạng Và phạm vi thực hiện của luận văn cũng sẽ thực hiện trong bước này Qua việc quét một hệ thống, hacker hay các nhà quản trị mạng có thể có được các thông tin sau:

 Địa chỉ IP

 Hệ điều hành

 Cấu trúc hệ thống

 Các chương trình, dịch vụ nào đang chạy trên máy tính

Có ba loại quét khác nhau:

1 Quét cổng (Port scanning): Các gói tin được gửi đến các cổng máy mục tiêu để tìm hiểu về các dịch vụ mạng của máy tính đó Nếu các liên kết có thể thực hiện chứng tỏ cổng đó đang hoạt động Từ đó có thể tiếp tục xác định dịch vụ đang chạy trên cổng đó

2 Quét hệ thống mạng (Network scanning): Sử dụng các kỹ thuật quét để xác định thông tin của các host đang hoạt động trên một hệ thống mạng Loại quét này có thể phục vụ cho tấn công hay đánh giá tính bảo mật của

Trang 18

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang 7

2.2.1 Quá trình thực hiện việc tấn công

Hình 2.1-Các bước thực hiện việc tấn công [1]

Do phạm vi đề tài chỉ thực hiện trong bước quét nên ta chỉ tiến hành nghiên cứu

ở 5 bước đầu tiên đó là:

1 Kiểm tra hệ thống đang hoạt động: Bước này nhằm xác định máy mục tiêu hiện đang hoạt trên hệ thống mạng hay không

2 Kiểm tra cổng đang mở: Xác định các cổng mà máy mục tiêu mở nhằm khám phá các dịch vụ chạy trên máy mục tiêu ở bước tiếp theo

3 Xác định dịch vụ: Dựa vào bước thứ hai ta có tiếp tục thực hiện việc quét

để xác định được các dịch đang chạy trên các cổng đó

4 Lấy banner/ Xác định hệ điều hành: Thu thập các banner và các thông tin

mà máy mục tiêu tiết lộ để xác định hệ điều hành hay các webserver, các hệ quản trị cơ sở dữ liệu được sử dụng

5 Quét lỗ hổng: Dựa vào các thông tin thu thập được, tiếp tục thực hiện việc quét để tìm kiếm các thông tin nhạy cảm Từ đó xác định các lỗ hổng của

hệ thống

Trang 19

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang 8

2.2.2 Kiểm tra hệ thống đang hoạt động

Kiểm tra một hệ thống có hoạt động hay không bằng cách gửi một gói ICMP (Internetwork Control Message Protocol) ECHO request đến nó Nếu hệ thống đó hoạt động nó sẽ phản hồi bằng một gói ICMP ECHO reply Chúng ta cũng có thể gửi cùng lúc đến nhiều host để xác định một dãi IP có hoạt động hay không (kỹ thuật ping sweep)

2.2.3 Kiểm tra các cổng đang mở

 Giới thiệu

Để đơn giản trong việc tiếp cận các kỹ thuật quét ta sẽ làm quen với một số khái niệm sau:

Hình 2.2-Cấu trúc của một gói TCP [1]

-Các cờ (flag) của gói TCP:

1 Synchronize: viết tắt là "SYN", khởi tạo một kết nối giữa các host

2 Acknowledgment: viết tắt là "ACK", thiết lập kết nối giữa các host

3 Push: viết tắt là "PSH", hệ thống đang chuyển tiếp dữ liệu từ bộ nhớ đệm

4 Urgent: viết tắt là "URG", được dùng trong ngữ cảnh các dữ liệu trong gói tin cần được xử lí trực tiếp, xử lí nhanh

Trang 20

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang 9

5 Reset: viết tắt là "RST", tái kết nối

6 Finish: viết tắt là "FIN", thông báo kết thúc một nối kết

- Ba bước thực hiện nối kết (Three Way Handshake):

1 Client gửi cho server một gói với cờ SYN được thiết lập

2 Server nếu đồng ý kết nói sẽ gửi cho client một gói với cờ SYN/ACK được thiết lập

3 Cuối cùng client gửi cho server một gói với cờ ACK được thiết lập Nếu không có biến chứng nào xảy ra, kết nối sẽ được thiết lập giữ hai bên

Sau đây chúng ta sẽ đi vào chi tiết các kỹ thuật quét cổng

 SYN Stealth / Quét một nữa (Half Open Scan):

Đây là kiểu quét một nữa vì nó không phải là một kết nối TCP hoàn chỉnh Đầu tiên Client sẽ gửi một gói TCP có cờ SYN (yêu cầu nối kết) đến một cổng của server Nếu server phản hồi bằng một gói TCP có cờ SYN/ACK chứng tỏ cổng đó đang mở Tuy nhiên, thay vì phản hồi lại bằng một gói có cờ là ACK thì client sẽ gửi một gói có cờ RST để kết thúc việc nối kết Ngược lại nếu server gửi trả một gói có cờ RST chứng tỏ cổng đó không hoạt động

Hình 2.3-Minh họa ba bước kết nối giữa máy A(192.168.1.2) kết nối đến

máy B(192.168.1.3) [1]

Trang 21

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang 10

Hình 2.4-Minh họa kỹ thuật quét SYN Stealth [1]

Thuận lợi của kỹ thuật này là một số server sẽ không ghi lại các kết nối chưa hoàn thành Vì thế quá trình quét này sẽ không được ghi lại

 Quét Xmas:

Xmas là một gói với các cờ FIN/URG/PSH được thiết lập Gói này chỉ hoạt động trên các hệ điều hành hỗ trợ đầy đủ giao thức TCP/IP hay RFC 793 RFC

(Request For Comment) là tập hợp những tài liệu về kiến nghị, đề xuất và những lời

bình luận liên quan trực tiếp hoặc gián tiếp đến công nghệ, giao thức mạng

INTERNET Tuy nhiên Xmas sẽ không hoạt động trên bất kỳ phiên bản nào của

Microsoft Nếu Xmas quét nhằm vào hệ thống nào của Microsoft sẽ cho kết quả là tất

cả các cổng đều đóng

Hình 2.5-Minh họa kỹ thuật quét Xmas với máy B là máy cần thăm dò [1]

Thuận lợi của kỹ thuật này là một số Firewall chỉ kiểm tra các gói có cờ

SYN (có nghĩa là, các gói dữ liệu bắt đầu kết nối theo tiêu chuẩn) Gói Xmas không có

cờ SYN nên đi qua tường lửa dễ dàng và đến được hệ thống đích

Trang 22

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang 11

như quét Xmas và FIN là không hoạt động trên các phiên bản của Microsoft và các hệ

thống không theo chuẩn RFC 793

Hình 2.7-Minh họa quét NULL với máy B là máy cần thăm dò [1]

 Quét IDLE:

Như ta đã biết để thực hiện một kết nối client gửi đến server một gói có cờ

SYN Nếu như client đến server một gói có cờ SYN/ACK trong khi server không yêu

cầu thì server sẽ trả về một gói có cờ RST được thiết lập

Trang 23

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang 12

Mỗi gói IP trên mạng đều có một số chứng minh thư khung (fragment

identification) Một số hệ đều hành đơn giản là chỉ tăng số này lên đơn vị cho mỗi gói

họ gửi đi Vì thế kỹ thuật thăm dò này sẽ nói cho hacker biết những gói tin đã được gửi

đi như thế nào từ lần thăm dò trước

Có 3 bước cơ bản trong kỹ thuật này

Hình 2.8-Minh họa bước 1 của kỹ thuật quét IDLE [1]

Hình 2.9-Minh họa bước 2 của kỹ thuật quét IDLE nếu cổng máy mục tiêu là mở [1]

Trang 24

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang 13

Hình 2.10-Minh họa bước 2 của kỹ thuật quét IDLE nếu cổng máy mục tiêu là đóng [1]

Hình 2.11-Minh họa bước 3 của kỹ thuật quét IDLE nếu cổng máy mục tiêu là mở [1]

- Bước 3 của kỹ thuật quét IDLE nếu cổng máy mục tiêu là đóng thì IPID vẫn

không tăng so với bước 1

Trang 25

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang 14

 Kết nối TCP/ Quét mở hoàn toàn (Full Open Scan):

Khác với quét một nữa thì kỹ thuật này tạo ra một kết nối thực sự giữa 2 máy bằng cách gọi hàm hệ thống connect() được cung cấp bởi hệ đều hành Nếu cổng

mở, hàm connect() sẽ thành công Ngược lại, nếu cổng đóng thì không thể truy cập

vào máy kia Đây là kỹ thuật có độ chính xác cao nhất vì có thể xác định chắc chắn

cổng đã mở khi kết nối thành công

 SYN/FIN Quét sử dụng các khung IP:

Đây là kỹ thuật được kế thừa từ các kỹ thuật trước Các header của TCP được chia ra làm nhiều gói để các bộ lọc gói không xác định được các gói có ý định

làm gì

 Quét UDP:

Đây là phương thức quét sử dụng giao thức UDP thay vì giao thức TCP

UDP thì đơn giản hơn TCP nhưng quét thì lại khó khăn hơn Quét UDP sẽ gửi một gói

UDP rỗng vào cổng mục tiêu Mục tiêu phản hồi lại một lỗi không thể kết nối nếu

cổng đóng Nếu cổng mở sẽ trả lời bằng một gói UDP

 Quét ACK:

Kỹ thuật này không phải để xác định các cổng có mở hay không mà xem các công có đươc lọc bởi tường lửa hay không Nó cho phép xác nhận sự có mặt của

tường lửa và phát họa nên các quy luật của tường lửa

Một gói tin chỉ với cờ ACK được thiết lập sẽ gửi đến hệ thống đích Nếu

hệ thống đó không lọc (không có tường lửa hoặc không lọc trên những cổng đó) thì dù

là cổng đóng hay mở cũng trả về 1 gói RST Nếu hệ thống có lọc trên cổng đó thì hoặc

là không trả lời hoặc là trả về một thông điệp lỗi ICMP

Trang 26

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang 15

2.2.4 Xác định hệ điều hành (OS Fingerprinting)/ Lấy banner

 Giới thiệu OS Fingerprinting

Có 2 cách để xác định hệ điều hành:

1 Xác định chủ động (Active stack fingerprinting)

2 Xác định bị động (Passive fingerprinting)

 Xác định chủ động (Active stack fingerprinting):

Dựa trên thực tế rằng các hệ điều hành sẽ phản ứng khác nhau với các gói TCP khác nhau Ta có thể gửi đến hế thống muốn thăm dò một nhóm các gói TCP với

các cờ khác nhau và xem cách mà hệ thống mục tiêu phản hồi lại các gói này Đem kết

quả so sánh với cơ sở dữ liệu có sẵn ta có thể biết được hệ thống mục tiêu đang sử

dụng hệ điều hành nào Tuy nhiên tường lửa sẽ ghi lại việc quét này

 Xác định bị động (Passive stack fingerprinting):

Kỹ thuật gián tiếp quét một hệ thống để nó thiết lộ thông tin hệ điều hành của server Cũng dựa vào các phản ứng khác nhau với những gói TCP khác nhau của

từng hệ điều hành như nhưng sử dụng kỹ thuật nghe lén (sniffer) Tuy nhiên kỹ thuật

này ít chính xác hơn xác định chủ động

 Lấy banner:

Người ta có thể thu thập banner của của một website nhằm xác định web

server của nó Một số hệ thống có thể lấy được thông tin web server chỉ bằng câu lệnh

telnet Tuy nhiên, các banner cũng có thể bị làm rối bằng cách thay đổi chuỗi banner

hay các công cụ bảo mật như servermask

Trang 27

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang 16

Hình 2.12-Thực hiện lệnh telnet

2.2.5 Quét lỗ hổng, điểm yếu của hệ thống:

Sử dụng các kỹ thuật quét để thu thập các thông tin của hệ thống từ hệ điều

hành, các dịch vụ, webserver cho đến các thông tin “nhạy cảm” mà hệ thống đó vô

tình tiết lộ để phân tích và tìm ra các lỗ hổng của hệ thống hay các ứng dụng chạy trên

hệ thống

Trang 28

GVHD: Th.S Phạm Hữu Tài, Th.S Lâm Chí Nguyện | SVTH: Huỳnh Duy Khiêm | Trang 17

CHƯƠNG 3: NỘI DUNG VÀ KẾT QUẢ NGHIÊN CỨU

3.1 NỘI DUNG THỰC HIỆN

Để có thể tích hợp được một bộ công cụ hoàn chỉnh việc đầu tiên là chọn các

công cụ phù hợp với mục tiêu đề tài Hiện nay có rất nhiều công cụ quét hệ thống

mạng Tuy nhiên, không phải công cụ nào cũng hiệu quả và mã nguồn mở (hay miễn

phí) Do đó việc chọn lựa các công cụ là một bước quan trọng để có thể có được một

bộ công cụ hiệu quả Vì vậy các công cụ cần phải đạt được những tiêu chí cơ bản sau:

1 Mã nguồn mở hoặc miễn phí

2 Quét chính xác

3 Thời gian quét không quá lâu

4 Có nhiều tùy chọn hiệu quả

5 Không tốn quá nhiều tài nguyên khi quét

Ngoài ra, một trong các mục đích chính của bộ công cụ đó là người dùng không

phải mất quá nhiều thời gian để tìm hiểu các công cụ quét như: công cụ có khả năng

gì, cách thức thực hiện việc quét như thế nào… Việc này là rất khó khăn đối với những

công cụ quét chạy trên dòng lệnh Do cấu trúc cũng như cú pháp của từng công cụ là

khác nhau, nên để có thể tạo được một câu lệnh với các tùy chọn quét phù hợp và hữu

hiệu người dùng phải tìm hiểu các cú pháp và ý nghĩa của nó Dẫn đến một yêu cầu

nữa đó là viết các giao diện điều khiển cho các công cụ chạy trên dòng lệnh Và giao

diện này cũng phải thỏa mãn những điều kiện cơ bản sau:

1 Đơn giản, dễ hiểu

2 Thao tác nhanh gọn

3 Hiển thị nhiều tùy chọn của chương trình

4 Hiển thị rõ ràng, bắc mắt hơn dòng lệnh

Ngày đăng: 24/08/2016, 21:06

HÌNH ẢNH LIÊN QUAN

Hình 2.12-Thực hiện lệnh telnet. - Tích hợp các công cụ quyét lỗ hổng bảo mật
Hình 2.12 Thực hiện lệnh telnet (Trang 27)
Hình 3.4 -Giao diện dòng lệnh W3af. - Tích hợp các công cụ quyét lỗ hổng bảo mật
Hình 3.4 Giao diện dòng lệnh W3af (Trang 36)
Hình 3.5 - Giao diện đồ họa W3af. - Tích hợp các công cụ quyét lỗ hổng bảo mật
Hình 3.5 Giao diện đồ họa W3af (Trang 37)
Hình 3.6  Giao diện Zenmap - Tích hợp các công cụ quyét lỗ hổng bảo mật
Hình 3.6 Giao diện Zenmap (Trang 39)
Hình 3.8-Giao diện Nikto. Ngoài các thông tin cơ bản, các thông tin khác đươc đưa - Tích hợp các công cụ quyét lỗ hổng bảo mật
Hình 3.8 Giao diện Nikto. Ngoài các thông tin cơ bản, các thông tin khác đươc đưa (Trang 40)
Hình 3.9-Giao diện chương trình Sqlmap - Tích hợp các công cụ quyét lỗ hổng bảo mật
Hình 3.9 Giao diện chương trình Sqlmap (Trang 41)
Hình 1 Giao diện chính của bộ công cụ - Tích hợp các công cụ quyét lỗ hổng bảo mật
Hình 1 Giao diện chính của bộ công cụ (Trang 45)
Hình 2-Giao diện Nmap - Tích hợp các công cụ quyét lỗ hổng bảo mật
Hình 2 Giao diện Nmap (Trang 46)
Hình 5-Giao diện của Nikto - Tích hợp các công cụ quyét lỗ hổng bảo mật
Hình 5 Giao diện của Nikto (Trang 47)
Hình 8-Chứng thực và tùy chỉnh chỉnh thời gian chờ - Tích hợp các công cụ quyét lỗ hổng bảo mật
Hình 8 Chứng thực và tùy chỉnh chỉnh thời gian chờ (Trang 49)
Hình 9-Giao diện chính của chương trình - Tích hợp các công cụ quyét lỗ hổng bảo mật
Hình 9 Giao diện chính của chương trình (Trang 50)
Hình 10-Các tùy chọn để truy xuất trực tiếp đến cơ sở dữ liệu - Tích hợp các công cụ quyét lỗ hổng bảo mật
Hình 10 Các tùy chọn để truy xuất trực tiếp đến cơ sở dữ liệu (Trang 51)
Hình 11-Tùy chọn kỹ thuật sử dụng và các tùy chỉnh khác - Tích hợp các công cụ quyét lỗ hổng bảo mật
Hình 11 Tùy chọn kỹ thuật sử dụng và các tùy chỉnh khác (Trang 52)
Hình 14- Hiển thị kết quả quét. - Tích hợp các công cụ quyét lỗ hổng bảo mật
Hình 14 Hiển thị kết quả quét (Trang 54)
Hình 15-Chương trình p0f. - Tích hợp các công cụ quyét lỗ hổng bảo mật
Hình 15 Chương trình p0f (Trang 55)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w