Tải bản đầy đủ (.doc) (88 trang)

Xây dựng, quản lý, thực thi và cập nhật các tập luật

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (5.54 MB, 88 trang )

LỜI CẢM ƠN
Trước hết, chúng tôi xin chân thành cảm ơn sự giúp đỡ nhiệt tình của các
thầy cơ giáo trường Đại Học Công Nghệ - Đại Học Quốc Gia Hà Nội đã tận tình
dạy dỗ chỉ bảo chúng tơi trong suốt khóa học, cảm ơn tập thể lớp K47CA và đặc
biệt là thầy giáo, Thạc sỹ Nguyễn Hoàng Anh, người đã nhiệt tình hướng dẫn, giúp
đỡ chúng tơi trong st q trình học tập và nghiên cứu.
Cuối cùng chúng tơi muốn gửi lời cảm ơn tới gia đình và người thân đã
quan tâm, động viên, chăm lo chúng tôi trong suốt quá trình học tập.
Do thời gian và điều kiện thiết bị có hạn nên bản khóa luận này khơng tránh
khỏi những thiếu sót, chúng tơi rất mong muốn nhận được những ý kién đóng góp
của các thầy cơ và các bạn.
Hà nội, tháng 5 năm 2006

1


Tóm tắt khóa luận
Khóa luận được chia thành hai phần. Phần I giới thiệu về hệ thống phát
hiện xâm nhập (Intrusion detecsion system). Phần II trình bày cụ thể về hệ thống
phát hiện xâm nhập Snort. Phần I trình bày những khái niệm căn bản nhất của hệ
thống phát hiện xâm nhập (IDS), các loại IDS, các thành phần và nguyên lý hoạt
động của hệ thống IDS. Phần I cũng giới thiệu một số kiểu tấn công phổ biến trên
Internet. Phần II trình bày các bộ phận cấu thành Snort, nguyên lý hoạt động và sự
phối hợp của các bộ phận cấu thành Snort. Phần II đặc biệt đi sâu về cách xây
dựng, quản lý, thực thi và cập nhật các tập luật.

2


Mục lục:


Mở đầu
Theo Mạng An tồn thơng tin VSEC (The VietNamese security network),
70% website tại Việt Nam có thể bị xâm nhập, trên 80% hệ thống mạng có thể bị
hacker kiểm sốt. Điều này cho thấy chính sách về bảo mật của các hệ thống
thông tin của Việt Nam chưa được quan tâm và đầu tư đúng mức.
Khi một hệ thống thơng tin bị hacker kiểm sốt thì hậu quả khơng thể
lường trước được. Đặc biệt, nếu hệ thống đó là một trong những hệ thống xung
yếu của đất nước như hệ thống chính phủ, hệ thống ngân hàng, hệ thống viễn
thơng, hệ thống thương mại điện tử thì những thiệt hại về uy tín, kinh tế là rất lớn.
Trong bối cảnh đó, hệ thống phát hiện xâm nhập ngày càng trở nên phổ
biến và đóng vai trị quan trọng khơng thể thiếu trong bất kỳ chính sách bảo mật và
an tồn thơng tin của bất kỳ hệ thống thơng tin nào.
Các sản phẩm phát hiện xâm nhập hiện nay rất đa dạng và phong phú. Nó
có thể là phần cứng hoặc phần mềm. Trong số các sản phẩm phát hiện xâm nhập
mềm thì Snort ln là lựa chọn hàng đầu của những người làm về an tồn thơng
tin.
Với những lý do kể trên chúng tơi quyết định chọn khóa luận tốt nghiệp của
mình là “Xây dựng hệ thống phát hiện xâm nhập với Snort cho một hệ thống thông
tin”.

3


Phần I: Hệ thống phát hiện xâm nhập (Intrusion detecsion
system)
1. Tổng quan hệ thống phát hiện xâm nhập:
1.1. Định nghĩa hệ thống phát hiện xâm nhập
1.1.1. Khái niệm hệ thống phát hiện xâm nhập:
Instrusion: là sự xâm nhập vào hệ thống một cách trái phép. Ví dụ một
user truy cập vào hệ thống và thao tác như tài khoản root trong khi không được

phép.
Hệ thống IDS (Intrusion detection system): Là các công cụ, phương
thức để giúp nhận biết, đánh giá, và báo cáo những hành động trái phép trên
mạng.
Chúng ta có thể so sánh firewalls với khố cửa, intrusion detection với hệ
thống cảnh báo trong một ngôi nhà và intrusion prevention với những chú chó gác
cửa. Giả sử rằng chúng ta có một kho hàng với rất nhiều tài liệu bí mật và chúng
ta muốn bảo vệ với một hệ thống cảnh báo, cửa khoá, và hệ thống camera theo
rõi. Cửa có khố sẽ ngăn chặn cá nhân trái phép xâm nhập vào trong kho hàng
này. Bản thân chúng không cảnh báo chúng ta về một sự xâm nhập, nhưng chúng
ngăn cản không cho những truy nhập trái phép. Hệ thống cảnh báo sẽ cảnh báo
chúng ta trong trường hợp người xâm nhập tìm cách vào trong kho. Hệ thống
cảnh báo khơng làm gì để ngăn chặn sự xâm nhập này, nhưng chúng thơng báo
cho biết khả năng có xâm nhập. Trong một số trường hợp, Những chú chó bảo vệ
có khả năng ngăn chặn sự xâm nhập bằng việc tấn cơng người xâm nhập.
Khố cửa, hệ thống cảnh báo, và chó gác cửa hoạt động hoạt động độc
lập và bổ sung cho nhau nhằm mục đích bảo vệ kho hàng này. Thực tế Firewall,
IDS và IPS có cơng nghệ khác nhau nhưng chúng cùng phối hợp hoạt động để
đưa ra cảnh báo và ngăn chặn xâm nhập trái phép vào trong hệ thống mạng. Hơn
nữa, Thực thi các biện pháp trên làm tăng mức độ toàn cho nhà kho. Trong ví dụ
về nhà kho, hiệu quả nhất là đặt các chng cảnh báo và khố tất cả cửa chính và
cửa sổ, tốt hơn nữa là đặt máy phát hiện xâm nhập bên trong ngơi nhà. Tốt hơn
có chú chó ở bên ngồi để theo dõi và tấn cơng kẻ xâm nhập.
IDS là phương pháp thực hiện một lớp các chương trình an ninh. Sử dụng
cách tiếp cận lớp, hoặc phịng thủ theo độ sâu, dựa trên phân tích rủi ro là phương
pháp được sử dụng rộng rãi trong hầu hết các chương trình bảo vệ thơng tin. Có
nghĩa là một mạng lên có nhiều lớp bảo vệ, với mỗi một lớp riêng đó có những
chức năng riêng biệt, để bổ sung cho tất cả chiến lược bảo vệ của một tổ chức.
Hình sau miêu tả cách tiếp cận bảo mật theo độ sâu, bảo vệ trên nhiều mức.


4


Hình 1.1 Bảo mật theo độ sâu
IDS bao gồm sensor đặt ở các nút mạng. Chúng phân tích gói tin tìm các
đặc điểm bất thường. Nếu phát hiện điểm bất thường này trùng với một đặc điểm
trong một tập các kiểu tấn cơng đã biết, thì đưa ra cảnh báo, và ghi lại tấn cơng
đó. IDS tương tự như phần mềm chống virus, sử dụng dấu hiệu đã biết để nhận ra
traffic có mục đích tấn cơng.

1.1.2. Các khái niệm thường dùng trong hệ thống phát hiện xâm nhập:
1.1.2.1. Signature
Là một thành phần bên trong các gói dữ liệu. Một signature dùng để phát
hiện một hoặc nhiều dạng tấn công. Ví dụ như, khi một gói dữ liệu gởi đến
webserver mà trong đó có thành phần “scripts/iisadmin” thì sẽ cảnh báo rằng “Có
thể Web Server đang bị tấn cơng”.
Signature có thể hiện diện trong các gói tin theo những định dạng khác
nhau tùy vào các kiểu tấn công khác nhau. Ví dụ, nó có thể ở trong IP header,
transport layer header (TCP hay UDP header), application header, payload,…
IDS sẽ dựa vào các signature để phát hiện sự tấn công. Các nhà cung cấp
IDS sẽ phải cập nhập Signature khi một kiểu tấn cơng mới nào đó được phát hiện.
Đối với Snort ta có thể tự cập nhập signature.
1.1.2.2. Alert
Khi IDS nhận thấy sự tấn cơng, nó sẽ cảnh báo cho người quản trị bằng
nhiều cách khác nhau gọi là alert.

5


1.1.2.3. Log

“Log message” thông thường được lưu trữ trong file. Ví dụ trong Snort, thư
mục mặc định chứa file này là: /var/log/snort, nhưng cũng có thể thay đổi thư mục
mặc định này. File này có thể ở dạng text hay binary. Nếu ở dạng binary thì dùng
cơng cụ để xem như tcpdump.
1.1.2.4. False Alarm
Là một cảnh báo được tạo ra bởi một dấu hiệu không phải là một hành
động xâm nhập (ngồi ý muốn). Ví dụ, nếu một host bên trong hệ thống bị cấu
hình sai đơi khi sẽ dẫn đến việc tạo ra các cảnh báo sai. Để tránh nó, chúng ta cần
phải thay đổi và sử dụng một luật mặc định khác. Trong một vài trường hợp,
chúng ta phải disable một số luật để có thể tránh cảnh báo sai.
1.1.2.5. Sensor
Bất kỳ thiết bị nào trên đó IDS đang chạy gọi là sensor. Ví dụ một máy tính
hay một thiết bị nào đó có Snort đang chạy.

1.2. Phân loại hệ thống IDS
1.2.1. Phân loại IDS
Hệ thống phát hiện xâm nhập bao gồm hai loại:
Signature –based intrusion Detection system: Mỗi kẻ xâm nhập bất
hợp pháp vào hệ thống đều có một chữ ký xác nhận (signature) như virus máy
tính và sẽ bị phát hiện bởi các phần mềm. Bằng cách sử dụng tập hợp các
signatures và các luật định trước, IDS có khả năng tìm thấy và ghi nhận những
dấu hiệu khả nghi và đưa ra lời cảnh báo cần thiết.
Anomaly-based intrusion detection system: Kỹ thuật này dựa vào
header của các gói khả nghi. Trong một số trường hợp phương pháp này tỏ ra
hiệu quả hơn so với signature-based IDS.

1.2.2. Các hình thức của IDS
IDS chia làm 3 loại: host-based intrusion-detection system (HIDS),
network-based intrusion-detection system (NIDS), và lai của hai hệ thống trên
là distributed intrusion detection system (DIDS). Tùy vào mỗi loại mà chúng có

cách làm việc khác nhau.
Một hệ thống HIDS sẽ yêu cầu một số phần mềm chúng được cài đặt ngay
trên hệ thống đó và có thể quét tất cả tài nguyên; Quét log hệ thống (sys log) và
log sự kiện (event log). Ghi những hành động tấn cơng mà nó phát hiện ra vào
trong cơ sở dữ liệu được bảo vệ, và kiểm tra xem khi nào có những hành động so
sánh giống với những bản ghi hành động tấn công được lưu trong cơ sở tri thức,
thì chúng đưa ra cảnh báo.

6


HIDS khác với NIDS ở 2 điểm chính:
Một HIDS chỉ có thể bảo vệ cho duy nhất hệ thống chứa nó mà thơi chứ
khơng phải là tồn bộ phân đoạn mạng như NIDS.
Card giao tiếp mạng (NIC) của HIDS thường họat động ở chế độ
nonpromiscuous. Điều này đem lại nhiều thuận lợi bởi không phải card giao tiếp
mạng nào cũng có thể hoạt động ở chế độ promiscuous.
Ưu điểm của HIDS là cho phép cấu hình riêng biệt chặt chẽ cho từng host
khác nhau. Ví dụ chúng ta khơng cần phải cấu hình cho việc phát hiện Network
File System (NFS) cho host khơng sử dụng NFS.
Hình sau cho ta thấy hệ thống HIDS:

Hình 1.2 Host Intrusion Detection System
Hệ thống NIDS thì thường thường là hệ thống nội tuyến trên mạng, và
phân tích gói tin mạng để tìm những cuộc tấn cơng. NIDS nhận tất cả gói tin trên

7


phân đoạn mạng riêng biệt, bao gồm mạng chuyển mạch thông qua một vài

phương thức, như taps hoặc giám sát cổng (port mirroring). Nó xây dựng luồng
traffic để phân tích tìm ra hành động có tính phá hoại. Hầu hết NIDS được trang bị
những chức năng để ghi lại những hành động và báo cáo những cảnh báo. Hơn
nữa, một số router có khả năng là NIDS.

Hình 1.3 Network Intrusion Detection System
Trong hình thức này việc giám sát các hoạt động mạng được tiến hành
trên toàn bộ các phân đoạn mạng hay mạng con của toàn bộ hệ thống. Điều này
thực hiện bằng cách thay đổi chế độ hoạt động của card giao tiếp mạng NIDS.
Như ta biết, thông thường card giao tiếp mạng (NIC) ở chế độ nonpromiscuos,
nó chỉ cho phép các gói tin có địa chỉ MAC (Medium Access Control) đích là địa chỉ
MAC của nó đi qua, cịn các gói tin khác sẽ bị loại bỏ. Vì thế để có thể quan sát
tồn bộ các hoạt động trên mạng, NIDS NIC phải đặt ở chế độ promiscuous nhờ
vậy tất cả các gói tin có thể đi qua.

8


DIDS ( Distributed Intrusion Detection System) Là sự kết hợp các NIDS
sensors với nhau hoặc NIDS và HIDS sonsor. Mỗi sensor tạo ra các attack log và
uppload cho máy trung tâm nơi có chứa database server để xử lý .

Hình 1.4 Distributed Intrusion Detection System
Để thấy sự khác biệt giữa NIDS và HIDS ta xem bảng sau:
Bảng 1.1 So sánh NIDS và HIDS:
NIDS

HIDS

Hoạt động trong phạm vi rộng

(theo dõi các traffic trong mạng)

Hoạt động trong phạm vi hẹp
( theo dõi hoạt động của host)

Dễ cài đặt

Khó cài đặt

Khả năng phát hiện tấn công từ

Khả năng phát hiện tấn công từ

9


bên ngồi vào.

bên trong.

Chi phí cài đặt thấp
Phát hiện xâm nhập dựa trên
những bản ghi trên phạm vi toàn mạng

Chi phí cài đặt lớn
Phát hiện xâm nhập dựa trên
những bản ghi trên phạm vi host đơn
lẻ

Phân tích header gói tin


Khơng lấy được thơng tin
header gói tin

Tương tác gần như là thời gian

Chỉ tương tác khi những file log
đáng nghi được tạo

thực
Độc lập hệ điều hành
Phát hiện tấn công mạng khi
phân tích gói tin.

Phụ thuộc vào hệ điều hành
Phát hiện tấn công nội mạng
trước khi chúng tấn công mạng

Xử lý nền tảng cho IDS là cách NIDS hoặc HIDS tập hợp dữ liệu và tiền xử
lý và phân loại chúng. Thực thi những phân tích thống kê để xác định khi nào xảy
ra hành động khơng bình thường, và nếu phù hợp với cơ sở tri thức tức là phát
hiện một dấu hiệu tấn cơng thì cảnh báo được gửi đi.

1.3. Hoạt động của IDS
Hoạt động của IDS nói chung như sau:

Hình 1.5 Sơ đồ hoạt động IDS

10



Như ta đã biết IDS làm việc như sau: Collect data -> analyze(Thu thập
dữ liệu ->Phân tích). Nhưng có nhiều cách khác nhau để làm được điều này,
mỗi cách có ưu nhược điểm riêng và tùy vào từng trừơng hợp cụ thể mà ta áp
dụng cho phù hợp.

1.3.1. Các phương thức để thu thập dữ liệu
1.3.1.1. Bắt gói tin
Là một cách thức cổ điển của IDS. Như ta biết NIDS thiết lập interface của
chúng ở trạng thái chế độ promiscuous, và thực hiện thu thập gói tin trên giao diện
đó. Bằng cách này, nó có thể chụp lấy gói tin trong cùng subnet.
1.3.1.2. Phân tích log
Rất nhiều IDS sử dụng thông tin của file log và cảnh báo nếu chúng phát
hiện bất kỳ một sự bất thường nào.
1.3.1.3. Giám sát lời gọi hệ thống
Lời gọi hệ thống là một yêu cầu mà chương trình gởi cho nhân hệ điều
hành thực hiện. Nếu HIDS phát hiện thấy một lời gọi hệ thống nào là dị thường ví
dụ như thay đổi USER ID của tài khoản root, chúng sẽ tạo ra một cảnh báo hay
như trong trường hợp chạy trên Linux nó sẽ khơng cho phép thực thi lời gọi hệ
thống đó.
1.3.1.4. Theo dõi file hệ thống
HIDS cịn có một phương án khác là theo dõi kích thước và thuộc tính của
các file cốt lõi (crucial files) trong hệ thống. Nếu đột nhiên nhân hệ điều hành thay
đổi kích cỡ mà người quản trị khơng hề hay biết hay thuộc tính của file bị thay đổi
điều đó có nghĩa là có sự xâm nhập nào đó.

1.3.2. Phân tích dữ liệu
Có nhiều chiến lược phân tích dữ liệu cho một hệ thống. Xét q trình
phân tích xâm nhập có thể chia làm 4 pha:
1.


Tiền xử lý.

2.

Phân tích.

3.

Phản ứng lại.

4.

Cải tiến.

Tiền xử lý (Preprocessing ) là chức năng chính thực hiện tập hợp dữ liệu
từ IDS senser. Trong bước này, Tổ chức dữ liệu theo một kiểu nào đó nhằm mục
đích phân loại được tốt hơn. Tiền xử lý xác định định dạng cho dữ liệu vào, định
dạng này là hợp với quy tắc tiểu chuẩn hoặc là hợp với một cấu trúc cơ sở dữ
liệu. Khi dữ liệu được định dạng, ta lại phân loại dữ liệu tiếp.

11


Phân loại trên phụ thuộc vào chiến lược phân tích, ví dụ nếu sử dụng phát
hiện xâm nhập dựa trên cơ sở luật thì quá trình phân loại phải bao gồm các miêu
tả luật và mơ hình. Nếu sử dụng phương pháp phát hiện dị thường thì phải có
những mơ tả thống kê. Cả hai phương pháp này đều được xét đến ở phần sau.
Sau khi quá trình phân loại hoàn thành, dữ liệu được ràng buộc với nhau
và đưa ra những định nghĩa phiên bản hoặc mẫu phát hiện của một số cuộc tấn

công bằng thay thế biến bởi những giá trị xác định, Mẫu phát hiện được lưu ở cơ
sở tri thức (knowledgebase) lưu trên máy phân tích trung tâm:


Phát hiện sửa đổi file log hệ thống.



Phát hiện những thay đổi quyền khơng mong muốn



Phát hiện đường mạng cửa sau



Phát hiện SubSeven cửa sau



Quyền ORACLE

Khi hồn thành q trình tiền xử lý, tiếp theo sau đó là q trình phân tích.
Các bản ghi dữ liệu so sánh với cơ sở tri thức, và bản ghi dữ liệu hoặc là được ghi
lại khi đây là một cuộc tấn công hoặc là bị xóa. Sau đó bản ghi dữ liệu tiếp theo
được phân tích.
Bước tiếp theo, phản ứng lại, IDS khơng có thể ngăn chặn tấn cơng trái
phép mà chúng chỉ đưa ra thơng báo. Có một số cách thể hiện thông báo thứ nhất
là đưa ra thông báo bản chất của cuộc tấn cơng hoặc đưa ra phân tích âm mưu
của cuộc tấn công. Thông báo phản ứng lại tấn cơng có thể tự động được thiết lập

hoặc có thể cấu hình bình thường bởi người dùng. Ví dụ, Network Flight Recoder (
một loại IDS thương mại) gửi gói tin TCPRST và loại bỏ session.
Bước cuối cùng là bước cải tiến. Thực hiện điều chỉnh IDS sao cho phù
hợp nhất, bước này phụ thuộc vào bước trước và việc phát hiện xâm nhập. Đưa
ra nhận định bảo mật đúng nhất và làm giảm mức độ lỗi và đưa ra mức độ bảo
mật đúng đắn nhất. Có một cơng cụ, như Cisco Threat Response (CTR), cho phép
cải tiến phủ hợp đảm bảo một thông báo đưa ra là đúng bị tấn công hoặc không bị
tấn công
Để làm việc hiệu quả, IDS cần phải có một hoặc thậm chí nhiều chiến thuật
để đánh giá. Có hai chiến thuật cớ bản:
1.3.2.1. Biết hành động tốt (know good) và biết hành động xấu (know bad)
Tùy theo nhu cầu công việc hay đặc điểm cụ thể, người quản trị có thể
thiết lập policy cho mạng hoặc theo kiểu “Chỉ cho phép traffic nào được xem là
good –Known Good” hoặc “Chỉ ngăn cấm những traffic nào được xem là badKnown Bad”. Và yêu cầu đặt ra cho một IDS là làm thế nào để có thể định danh
được các lọai traffic khác nhau.

12


Mỗi hướng tiếp cận đều có những ưu nhược điểm riêng
Biết hành động tốt (Known Good):
Ưu: Quản lý được tòan bộ giao thơng trên mạng. Có policy ở cấp độ cao
hơn
Nhược: Khơng thích hợp trong trường hợp mạng thường xun có sự thay
đổi
Biết hành động xấu (Know Bad):
Ưu: Quản lý dễ dàng.
nhược: Khó nắm bắt được tất cả các trường hợp: Nếu có một attack traffic
nào đị khơng được bắt bởi bất cứ một luật nào ->??
Nói chung cách tốt nhất là tiếp cận cả hai cách thiết lập policy trên

1.3.2.2. Phân tích xâm nhập:
1.3.2.2.1. Tổng quan:
Signature Detection là cách tiếp cận thường dùng nhất hiện nay bởi chúng
dễ kiểm sóat, tiện lợi đồng thời rất tốt trong trường hợp ít kinh nghiệm hay thời
gian đào tạo ít. Khi một kiểu tấn công mới xuất hiện, một signature được đánh dấu
và tạo ra một hình thức cảnh báo mới tương ứng với signature đó.
Một cách tiếp cận phức tạp hơn của cơ sở luật là phân tích luật: Thay vì đề
ra các luật để nắm băt các trường hợp cụ thể, phân tích luật tạo ra các mơ tả cho
các loại hành động cụ thể, ví dụ như: Khi máy tính ta muốn tạo một kết nối TCP,
chúng sẽ gửi một gói tin SYN, các gói tin phúc đáp sẽ là RST/ACK hay SYN/ACK,
các trường hợp còn lại là vi phạm giao thức trên. Cách này sẽ tạo sự linh động
hơn so với Known-Bad. Thay vì đưa ra một luật:“ Nếu có một chuỗi lớn hơn 500
bytes, với các ký tự cụ thể, thì đó là một tấn cơng”, ta có thể nói “Tại điểm này của
kết nối, nếu một chuỗi lớn hơn 500 bytes, thì nó là tấn cơng. Nhưng tại các điểm
khác, nó khơng là attack”. Tuy nhiên nhược điểm của phương pháp này là : Trong
khi các giao thức được định nghĩa một cách rõ ràng và chặt chẽ thì các nhà sản
xuất khác nhau lại có khuynh hướng mô tả các giao thức theo các kiểu khác nhau
điều đó dẫn đến việc có thể một phân tích giao thức nào đó khơng phù hợp với
RFC nhưng là điều bình thường của một nhà sản xuât nào đó. Hơn nữa để có thể
tạo ra một giao thức cụ thể cần rất nhiều thời gian để viết và hiện thực chúng,
cũng như việc xem xét phải được thực hiện trên hệ thống có tốc độ cao.
Cách tiếp cận khác nữa là anomaly detection: Trong kỹ thuật này, việc
quan trọng định danh hai lọai traffic trong mạng “bình thường” và “dị thường” để có
thể cảnh báo hay khóa các lọai traffic bất bình thường qua hệ thống. Một số hệ
thống IDS sử dụng anomaly detection định dạng chuẩn loại traffic nào là “bình

13


thường”, số khác theo dõi toàn bộ traffic trên hệ thống và sử dụng một giải thuật

để phân loại.
1.3.2.2.2. Phát hiện xâm nhập dựa trên luật
Phát hiện xâm nhập dựa trên luật, hay còn gọi là phát hiện xâm nhập dựa
trên chữ ký, mơ hình đối chiếu mẫu, và phát hiện xâm nhập trái phép, là chiến
lược đầu tiên được đưa ra trong giai đoạn đầu của hệ thống phát hiện xâm nhập.
Phát hiện xâm nhập dựa trên luật sử dụng so sanh mẫu để phát hiện ra mẫu tấn
công đã biết.
Xem xét cách thức xử lý của bốn bước phân tích đối với hệ thống phát
hiện xâm nhập dựa trên luật:
1. Tiền xử lý: bước này tập hợp dữ liệu về cuộc xâm nhập, cuộc tấn công và
kế hoạch phân loại hoặc miêu tả mẫu này. Từ kế hoạch phân loại, đưa ra
mơ hình và đưa ra định dạng chung:


Tên chữ ký: đưa ra tên chữ ký.



ID chữ ký: một số ID duy nhất chữ ký



Miêu tả chữ ký: miêu tả chữ ký và những cái nó làm.



Miêu tả khả năng khẳng định sai: giải thích cho những khẳng định
sai mà chúng có thể xảy ra. Khi mà một hoạt động mạng bình
thường nhưng bị coi là một cuộc tấn cơng.




Thơng tin liên quan đến tổn thương: trường này đưa ra thơng tin liên
quan đến tổn thương.



Chú ý sử dụng: trường này cho phép chuyên gia bảo mật thêm chú ý
đặc biệt liên quan đến hệ thống mạng của họ

Chú ý rằng miêu tả mẫu có thể là miêu tả đơn hoặc miêu tả phức tạp. Miêu
tả đơn yêu cầu chỉ cần xem xét một gói tin là có thể nhận biết cảnh báo, trong khi
đó miêu tả phức tạp thì cần xem xét nhiều gói tin thì mới nhận biết được cảnh báo.
Những miêu tả mẫu này được lưu trong cơ sở tri thức.
2. Phân tích dữ liệu cuộc tấn công được định dạng và so sánh với cơ sở tri
thức sử dụng dụng cụ phân tích so sánh mẫu. Dụng cụ này tìm trong những
mẫu đã được định nghĩa (chính là các kiểu tấn cơng)
3. Phản ứng lại: Nếu trùng với mấu tấn công, Dụng cụ phân tích gửi cảnh
báo. Nếu chỉ trùng một phần thì sự kiện tiếp được phân tích. Sự phản ứng
là khác nhau phụ thuộc vào bản ghi sự kiện cụ thể.
4. Cải tiến: cải tiến phân tích mẫu có thể xảy ra nhằm cập nhật chữ ký bởi vì
một hệ thống IDS chỉ tốt nhất khi chữ ký cập nhật nhất. Đây chính là nhược

14


điểm của phân tích mẫu. Hầu hết các IDS cho phép cập nhật tự động hoặc
bằng thao tác thủ công các chữ ký.
1.3.2.2.3. Phát hiện xâm nhập dựa trên mô tả sơ lược
Một hành động dị thường có số khác biệt so với hành động bình thường và

do đó dễ dàng phân loại. phát hiện xâm nhập dị thường, hay cịn gọi là phát hiện
xâm nhập dựa trên mơ tả sơ lược, tạo một hệ thống mô tả sơ lược chúng đánh
dấu bằng cờ tất cả sự kiện dị thường và lưu thông tin này.
Đặc điểm khác nhau cơ bản giữa phân tích tấn cơng dị thường và phân
tích khác là phân tích này khơng định nghĩa các hành động mà hệ thống khơng
cho phép nhưng thay vào đó là định nghĩa hành động mà hệ thống cho phép. Hơn
nữa, phân tích này tập hợp hành động thống kê và hành động tiêu biểu. Thống kê
là xét về số lượng, tiêu biểu xét với số lượng lớn hơn. Ví dụ: “traffic UDP server
không bao giờ vượt quá 25% công suất” đây là một hành động thông kê, và
“UserStan321 không phải là file FTP bên ngồi cơng ty” đây là hành động tiêu
biểu.
Phân tích cơ sở hành động dị thường chia làm 3 loại: behavioral, traffic
pattern, và protocol. Phân tích Behavioral tìm những hành động bất thường. Phân
tích traffic-pattern tìm mẫu đặc biệt. Phân tích Protocol tìm những giao thức mạng
trái phép dựa trên hành động cơ sở RFC (Request for comment)
Xem xét 4 bước:
1.

Tiền xử lý: bước này tập hợp dữ liệu thơng thường trên mạng. Sau
đó dữ liệu được định dạng. Tiếp sau đó thơng tin được phân loại mơ
tả thống kê sơ lược phụ thuộc vào thuật tốn khác trong trong cơ sở
tri thức.

2.

Phân tích: dữ liệu sự kiện biến đổi thành vector mơ tả tóm tăt, và so
sánh với cơ sở tri thức. vector mơ tả tóm tắt này so sánh với bản ghi
đã được lưu. Hay tất cả dữ liệu nằm ngoài cơ sở hành động thông
thường.


3.

Sự đáp ứng: đưa ra cảnh báo.

4.

Sự cải tiến: bản ghi dữ liệu cần phải được cập nhật liên tục.

1.3.2.2.4. Ví dụ luật IDS
Chúng ta xem xét mẫu IDS và chiến lược phân tích. Cách tốt nhất để hiểu
những khái niệm trên là đi vào xem xét một vài luật IDS.
Đây là một luật IDS lấy từ Snort (IDS mã nguồn mở) phát hiện khi nào kiểu
tấn công cửa sau mạng đang chạy trên hệ thống.

15


alert tcp $HOME_NET 12345:12346 -> $EXTERNAL_NET any
(msg:"BACKDOOR netbus active"; flow:from_server,established;
content:"NetBus"; reference:arachnids,401; classtype:misc-activity; sid:109; rev:4;)
Từ luật trên, chúng ta thấy snort gửi thơng báo nếu thấy một gói tin TCP
trên cổng 12345:12346. Nếu điều này xảy ra, Snort gửi thông báo “BACKDOOR
netbus active” và thuôc loại hành động miscellaneous và ID chữ ký 109. Chữ ký
này xem xét 4 lần.

1.3.3. Phản ứng của khi có xâm nhập
Hầu hết các hệ thống IDS có khả năng phản ứng tự động khi bị tấn công
nhưng hạn chế. Tuy nhiên, chúng thường tập trung vào việc lọc, khóa, cắt kết nối.
Chúng ta co thể chia ra làm 2 lọai phản ứng như sau: phản ứng thụ động và phản
ứng chủ động

1.3.3.1. Phản ứng thụ động
Thông thường, các IDS theo dõi các họat động trên mạng và ghi vào log
file để cảnh báo cho người quản trị theo nhiều hình thức khác nhau như SNMPs
traps, e-mail, text message, phone call,.... Các quản trị thường cấu hình cho IDS
để chúng cảnh báo theo nhiều cách tùy vào tính chất nghiêm trọng của sự tấn
cơng và tần số xuất hiện của các cuộc tấn cơng đó.
Trong cách phản ứng này, IDS chỉ dừng ở đó, cơng việc còn lại dành cho
người quản trị.
1.3.3.2. Phản ứng chủ động
Trong cách này, IDS không chỉ cảnh báo cho người quản trị và chờ đợi sự
xử lý tiếp theo của người quản trị, mà cịn có khả năng tự động phản ứng như sau


Đánh dấu và loại bỏ các loại traffic nguy hiểm (malicious traffic)



Kết thúc TCP session nào mà chúng thấy có dấu hiệu của sự tấn
cơng



Gửi ICMP: Các unreachable message gửi đến source system khi
khơng thể có kết nối đến target system, các firware và router được
cấu hình trước nằm giữa target system và attacker sẽ ngăn cản các
traffic từ acttacker.



Một số hệ thống cịn có khả năng tìm kiếm thông tin của attacker

như tên, đường đi, hệ thống gì unix hay win, chỉ số cổng…

Rõ ràng là bằng cách này, người quản trị không nhất thiết phải luôn theo
dõi traffic trên mạng. Tuy nhiên nếu không được cấu hình một cách đầy đủ
phương án này để lại nhiều nguy hiểm.

16


1.4. Tán thành và phản đối IDS
Tán thành IDS vì nhứng lý do sau:


Có thể phát hiện tấn cơng của hacker từ bên ngồi cũng như bên
trong mạng



Bảo vệ tồn hệ thống mạng.



Khả năng quản lý tương quan các tấn cơng.



Khả năng phịng thủ theo chiều sâu.




Người quản trị hệ thống có khả năng xác định số lượng tấn cơng.



Khả năng bảo vệ nhiều lớp.

Phản đối IDS:


Tạo ra nhận định sai (Một hành động có thể là tấn cơng hoặc không
phải là tấn công, IDS nhận đinh sai hành động tấn cơng thì phát hiện
ra, cịn hành động khơng phải là tấn cơng thì lại nhận định đây là
hành động tấn cơng).



Tác động tấn cơng nhiều hơn là ngăn cản chúng.



Địi hỏi chế độ giám tồn full-time



Q trình xử lý phức tạp



Khơng thể kiểm sốt traffic tỷ lệ bps (bit trên giây) cao




Tạo ra một lượng lớn dữ liệu.



Yêu cầu có kĩ năng cao trong việc phân tích dữ liệu



Ảnh hưởng bởi tấn cơng “low and slow”



Khơng thể phân tích traffic mạng mà được mã hóa



Đắt

1.5. Một số kiểu tấn cơng
Một số kiểu tấn cơng có bản chất là dựa trên một số khuyết điểm khi thiết
kế internet. Ban đầu Internet ra đời thì chưa tính nhiều đến tính bảo mật.
Nói chung, có 2 kiểu tấn cơng chính: Thứ nhất, Tấn công thực hiện ở mức
mạng, tương ứng tầng phiên trở xuống của mơ hình OSI. Kiểu tấn cơng này làm
sai lệch, phá vỡ hoặt lấy cắp thông tin trên đường truyền từ địa chỉ nguồn đến địa
chỉ đích
Kiểu tấn công thứ 2, Tấn công ở mức ứng dụng, tương ứng từ tầng trình
diễn trở lên của mơ hình OSI. Trong kĩ thuật tấn công này, Chúng không làm sai


17


lệch dữ liệu trên đường truyền nhưng lại truyền dữ liệu tấn cơng tới đích cần tấn
cơng.

1.5.1. Tấn cơng dựa trên giới hạn tài nguyên.
Một số ứng dụng quan trọng đứng giữa tầng mạng và tầng ứng dụng. Đặc
biệt là ứng dụng IDS và Firewall, chúng có thể là những ứng dụng liên hệ mật thiết
với hoạt động mức thấp của giao thức mạng. Những ứng dụng quan trọng bảo vệ
thiết bị, khi chúng hoạt động tốt thì các ứng dụng khác trong hệ thống hoạt động
tốt hơn. Vì vậy chúng cần có khả năng chống lại tấn cơng dữ dội từ bên ngồi.
Một kiểu tấn cơng mà Firewall và IDS khơng có thể chống đỡ được đó là
tấn cơng vét cạn tài nguyên. Mọi hệ thống đều có bộ nhớ, CPU, có giới hạn về
băng thơng, tài ngun thì có giới hạn, tức là tài ngun hồn tồn có thể bị cạn
kiệt, khi tài nguyên bị cạn kiệt thì hoạt động của hệ thống bị giảm sút, và thậm chí
có thể ngừng hoạt động. Có hậu quả tàn phá hơn những tấn cơng bình thường.
Để lưu lại những kết nối, ứng dụng firewall và IDS cần phải tạo một bản
ghi kết nối cho mỗi kết nối được thực hiện. Nếu như có nhiều yêu cầu kết nối thừa
được thực hiện, dẫn tới giới hạn về tài nguyên ( bộ nhớ, CPU, hoặc băng thơng)
có thể hồn tồn bị phá hủy. Hacker sử dụng kĩ thuật tràn SYN để tạo một kiểu tấn
công từ chối dịch vụ.

1.5.2. Tấn công dựa trên khuyết điểm giao thức mạng
Tuy nhiên có một lớp tấn công dựa vào hành động giả mạo traffic (traffic
spoof) (sự lừa bịp, giả mạo, đúng luật). Trong một số tình huống, hệ thống tin rằng
traffic đó là hợp pháp, và hệ thống hành động không nghi ngờ đối với traffic đó mà
thực tế nó là hành động có ác tâm phá hại. Chúng ta xem xét tấn công và phá hại
khi chúng tác động vào phần lớn giao thức mạng: ARP, IP, UDP, TCP, and ICMP.
1.5.2.1. Lạm dụng ARP

Như đã nêu trong chương 2, Host sử dụng ARP (Address Resolution
Protocol) để xác định địa chỉ phần cứng tương ứng với địa chỉ IP để hệ thống có
thể thực hiện truyền dữ liệu. Khơng có tính xác thực của cả yêu cầu và sự trả lời,
may thay yêu cầu ARP là bị hạn chế trong mạng nội hạt. Tuy nhiên nếu kẻ xâm
nhập làm tổn thương hệ thống, chúng sẽ tàn phá trên hệ thống mạng con đó với
hàng loạt hành động trái phép, ví dụ như: Làm tràn ARP (ARP flooding), giả mạo
địa chỉ MAC (MAC spoofing), và giả mạo ARP (ARP spoofing).
1.5.2.1.1. Làm tràn mạng bằng các gói tin ARP (ARP Flooding):
Trước khi đi vào thảo luận là tại sao tấn công làm tràn mạng bằng cách sử
dụng gói tin ARP giả mạo lại có liên quan đến vấn đề bảo mật, ta nên bàn luận về
điểm khác nhau giữa mạng chuyển mạch và mạng không phải là mạng chuyển
mạch.

18


Unswitched networks, được xây dựng trên công nghệ Ethernet hub, việc
truyền tất cả các traffic tới tất cả các cổng trong một hub. Bản thân hub là một thiết
bị tương đối đơn giản nó chỉ đơn giản là tạo lại traffic tới tất cả cổng và giải quyết
vấn đề xung đột gói tin. Gói tin ARP sẽ đi tới tất cả các host được kết nối tới hub.
Switched network, tương phản với Unswitched network, sử dụng một
Ethernet switch, chúng thực hiện phân phát traffic chỉ tới các cổng nơi mà host
truyền thơng cư trú. Tất nhiên lợi thế của nó là làm giảm traffic mạng, bởi vì chúng
chỉ xem xét traffic gửi tới hệ thống trên cổng chuyển mạch. Host không xem xét tới
những traffic trên cổng chuyển mạch khác. Thực tiễn tất cả các ứng dụng, nó là
hoạt động thuần khiết. Chỉ những ứng dụng chúng có thể chịu đựng dưới một hệ
thống mong là thấy tất cả các traffic qua switch.
Phương thức mà switch sử dụng để định tuyến cho traffic là hồn tồn bị
động. Nó lưu giữ ARP responses, và nó định tuyến traffic gửi tới địa chỉ phần cứng
tới cổng mà chúng thấy ARP responses đến. Khi một switch đương đầu với một

một gói tin gửi tới địa chỉ phần cứng nào đó mà nó khơng được lưu trữ, nó phải
quay trở lại chế độ “hub” và gửi gói tin đó tới tất cả các cổng trên switch. Những
cổng đáp ứng đó sẽ được ghi lại trong ARP cache.
Với thiết bị, có giới hạn về số cổng đi vào mà một switch có thể lưu trữ đó
là ARP cache. Nếu cache đầy, và có một gói tin cần gửi tới một địa chỉ phần cứng
không biết, switch có một số chiến lược thực hiện chức năng, mặc dù mức thực
hiện bị giảm đi:


Switch dễ dàng chuyển sang chế độ hub cho tất cả địa chỉ phần
cứng mà nó khơng được lưu trữ trong cache. Traffic sẽ tiếp tục gửi
đi.



Switch có thể đơn giản là xố bộ đệm và phục hồi dữ liệu mới nhận
được. Dưới chế độ này, các gói tin sẽ được gửi đi cho đến khi lấy
lại được vị trí của cổng của host.

Trong cả hai tình huống trên, traffic tới cổng cụ thể sẽ bị tiết lộ và bị quan
sát thấy từ những cổng khác. Traffic đó là khả năng tiềm tàng cho những kẻ tấn
cơng, những kẻ có thể thi hành một số ứng dụng giúp ích cho chúng từ lỗ hổng
này chúng nghe ngóng traffic đã được chỉ định cho host khác. Một ứng dụng nghe
nén sẽ nghe tất cả gói tin và ghi chúng lại để phục vụ cho hacker, chẳng hạn như
password, thông tin mật hoặc những dữ liệu nhạy cảm khác có thể được ghi lại.
Rõ ràng đây là một vấn đề quan trọng, hacker vẫn còn trên hệ thống và ghi lại
những thông tin này trong chu kỳ dài mà khơng có sự bảo vệ.
Trong hệ thống switched network hacker có thể giành được quyền truy
nhập tới rất nhiều traffic mạng hơn là chúng ta nghĩ bằng cách làm tràn gói tin
ARP reply giả mạo, làm tràn ARP cache của switch.

1.5.2.1.2. Giả mạo địa chỉ MAC (MAC Spoofing):

19


Traffic có thể bị phá vỡ nếu có 2 Ethernet adapter có cùng một địa chỉ
phần cứng (Địa chỉ MAC- Media Access Control). Mỗi nhà sản xuất được chỉ định
một khối của địa chỉ MAC đó là một khối địa chỉ duy nhất cho mỗi nhà sản xuất.
Tuy nhiên có một số nhà sản xuất biết được điều này và chiếm được địa chỉ của
một nhà sản xuất khác.
Đa số mọi người ngạc nhiên khi biết rằng thực tế làm mọi Ethernet adapter
đều có thể lập trình lại để có một địa chỉ phần cứng mong muốn. Mặc dù việc lập
trình lại này là hiếm khi được thực hiện, ngoại trừ một số trường hợp software
license được gắn với Địa chỉ phần cứng, hacker có thể lập trình lại Ethernet
adapter trên một hệ thống để giả mạo của một hệ thống khác, Nó là hậu quả
khơng những trong hệ thống truyền thông. Mà nếu hacker chọn cùng một địa chỉ
phần cứng cho router, thì tất cả q trình truyền thơng với bên ngoài mạng cũng bị
phá vỡ.
1.5.2.1.3. Giả mạo ARP (ARP Spoofing)
Tương tự như việc giả mạo địa chỉ MAC, Gói tin ARP response có thể bị
giả mạo để gửi traffic một lần nữa hoặc phá vỡ nó. Ví dụ một hệ thống A muốn
truyền thông với hệ thống B, vì vậy nó gửi u cầu ARP request, có nội dung “Bất
cứ ai có địa chỉ IP của B, làm ơn gửi điạ chỉ MAC”. Hacker trên hệ thống C nhìn
thấy nhìn thấy u cầu này có thể giả mạo gói tin ARP response và thơng báo rằng
”Tơi là B và đây là địa chỉ MAC của tôi” nhưng thay vào đó là chèn địa chỉ MAC
của C. Tất nhiên, trừ khi nếu hệ thống B bị ngăn không nhận được yêu cầu từ A.
Thực tế hệ thống A kết thúc q trình truyền thơng phụ thuộc vào thời gian đáp
ứng của A.
Nhóm hacker chuyên nghiệp có thể kết hợp việc giả mạo ARP với tấn công
từ chối dịch vụ ( DOS) trên hệ thống B để ngăn không cho nó trả lời, có lẽ là sử

dụng làm tràn cờ SYN, làm tràn tài nguyên (cả hai phương pháp này sẽ được trình
bày ở phía sau). Bằng việc kết hợp một số kiểu tấn công, trong trường hợp này,
hacker trên hệ thống C có thể thuyết phục hệ thống A rằng hệ thống C là hệ thống
B, và do đó có thể phá hủy hệ thống A, hacker có thể gửi chuyển tiếp traffic tới hệ
thống B, vì vậy A và B không thấy được hoạt động trái phép nào. Có một số cơng
cụ nó giúp cho một số kiểu tấn công- một số công cụ tốt như: dsniff arpspoof được
viết bởi Dug Song.
1.5.2.2. Lạm dụng IP
IP là một giao thức không tin cậy được sử dụng mang những giao thức ở
mức cao hơn. IP cung cấp vận chuyển và phân phối các datagram nhưng không
cung cấp cơ chế thẩm định gói tin từ host mà thực tế nó có đúng là từ host đó
khơng. Hầu như tất cả các host đều có khả năng như một router, và do đó có thể
chuyển traffic cho bên kia router của hệ thống. Vì vậy mơ hình này cho phép khả
năng giả mạo địa chỉ nguồn và đích của gói tin.

20


1.5.2.2.1. Giả mạo địa chỉ IP (IP Address Spoofing)
Nếu tất cả các hệ thống đều được cấu hình chính xác sao cho các host
trong hệ thống không thể giả mạo địa chỉ IP. Tuy nhiên, trong thực tế rất nhiều hệ
thống được cấu hình thơng chuẩn dẫn đến có thể giả mạo địa chỉ IP của hệ thống
khác.
Lọc vào ra
Có một số địa chỉ IP khơng nên bị nhìn thấy khi qua vành đai có thể là đi
vào hoặc đi ra ngồi mạng internet. Lọc vào xem xét q trình xử lý lọc giả mạo
địa chỉ IP đi vào trong mạng. Trong khi đó lọc ra xem xét traffic đi ra ngồi mạng.
Một ví dụ đơn giản là một tổ chức với không gian địa chỉ IP công bố công cộng thì
nên loại bỏ tất cả traffic địi quyền từ khơng gian địa chỉ của họ, nhưng lại đến từ
ngồi mạng internet. Tương tự, một tổ chức nên lọc tất cả traffic ra ngoài mạng, và

chỉ cho phép traffic với địa chỉ nguồn nằm trong không gian địa chỉ của họ là vượt
qua biên giới. Nói chung RFC địa chỉ 1918 được lọc qua biên vào và ra.
Ví dụ, Tổ chức của chúng ta có miền địa chỉ 172.16.0.0 tới 172.16.255.255.
Do đó, router biên khơng nên cho phép những traffic đi vào bên trong mạng tới
bất kì địa chỉ nào trong mạng trừ subnet 172.16.0.0/ 16. Những traffic đi ra bên
ngoài mạng nên bị loại bỏ nếu địa nguồn là khơng có trong subnet 172.16.0.0/16.
Tấn cơng giả mạo địa chỉ IP bao gồm các gói tin được xen lẫn và đưa vào
mạng với một địa chỉ IP khác so với địa chỉ IP thực tế của hệ thống gửi gói tin. Lý
do cho việc sử dụng địa chỉ giả mạo rất rõ ràng. Tất nhiên gói tin được gửi trả lại
là được gửi lại cho người gửi có yêu cầu. Không phản hồi gửi tới người gửi. Hành
động này được ra lệnh bởi kẻ tấn cơng, gói tin trả về có thể được phân tích.
Nếu khơng kẻ tấn cơng cũng điểu khiển một điểm trên đường dẫn về tới
người gửi được vin vào, chúng không biết được thông tin quyết định để thiết lập
một kết nối TCP. Thực tế không biết số sequence trong gói tinh SYN/ACK gửi trả
lại, thì kết nối cũng không được thiết lập. Tuy nhiên kẻ tấn cơng có hệ thống có thể
nắng nghe hành trình của gói tin trở về, gói tin có thể được tổng hợp. Tuy nhiên
nhìn chung session TCP được tạo ra có thể được cân nhắc là hoạt động giữa các
host.
Có thêm một kiểu tấn công khác được tạo ra bằng việc gửi gói tin UDP giả
mạo tới cổng 7 (echo) hoặc cổng 19 (chargen). Tấn công này, được gọi là tấn
công Fraggle, được tạo bởi kẻ tấn công thiết lập cả cổng nguồn và cổng đích của
một host hoặc host kia những host mà kẻ tấn công đang nhắm mục tiêu. Một chuỗi
các gói tin vơ tận được truyền giữa hai hệ thống chúng đi rồi lại quay trở lại. Khi
chúng ta xem xét kĩ thuật khuếch đại theo số lượng trong section “khuếch đại
traffic” sau, chúng ta sẽ thấy cách thức mà kẻ tấn công sử dụng kiểu tấn cơng này
để tiến hành tàn phá tồn mạng con này. Thực tế đưa ra là những cổng đó và

21



những cổng khác không nên đưa ra mạng internet, Host thường không cần phải
đưa ra những cổng và thường nên disable chúng.
Ta xem xét kiểu tương tự được gọi là “land attack”. Trong cách tấn công
này, Địa chỉ IP nguồn và đích đều được thiết lập là địa chỉ của lạn nhân và cổng
được thiết lập là UDP 7 hoặc 19, như là cách tấn cơng fraggle attack. Tất nhiên,
gói tin này là ln ln được tạo ra, vì khơng có host nào gửi một gói tin cho chính
bản thân nó nhưng thay thế đường đi của dữ liệu bên trong. Trên những host dễ
bị tấn cơng, gói tin này là nguyên nhân dẫn đến gửi dữ liệu (ping-pong) với bản
thân nó, nguyên nhân sử dụng CPU tăng đến 100 phần trăm.
1.5.2.2.2. Khuếch đại traffic (Traffic Amplification)
Gói tin giả mạo có thể là nguyên nhân dẫn đến hiệu ứng khuếch đại nếu
chúng được gửi tới địa chỉ quảng bá. Ví dụ, một mạng có khơng gian địa chỉ từ
192.168.1.0 tới 192.168.1.255. Mặc dù có tổng 256 địa chỉ, 192.168.1.0 là địa chỉ
mạng 192.168.1.255 là địa chỉ quảng bá. Khi một gói tin gửi tới địa chỉ này, thì
chúng sẽ được gửi tới tất cả các host trong mạng, tất cả các host sẽ gửi phản hồi
cho gói tin này.
Vì một gói tin TCP khơng thể tạo kết nối tới địa chỉ quảng bá. Do đó bất kỳ
một kết nối TCP nào mà tới địa chỉ quảng bá là do cấu hình sai có ý đồ tấn cơng.
UDP và ICMP khơng phải là giao thức hướng kết nối, mỗi host đều có thể
trả lời. Trong kiểu tấn cơng smurf attack, kẻ tấn cơng giả mạo gói tin ICMP echo
request với địa chỉ nguồn chỉ đến địa chỉ của nạn nhân, và địa chỉ đích là một địa
chỉ truyền thơng của mạng. Khi gói tin echo request được xử lý bởi host trên
mạng, chúng sẽ gửi ICMP echo reply cho nạn nhân, điều đó có nghĩa là hàng
trăm, hoặc hàng ngàn gói tin gửi tới nạn nhân cùng một lúc. Kiểu tấn công này
không những là vấn đề về băng thông đối với host đích, mà cịn là vấn đề băng
thơng cho tồn mạng. Thậm chí xấu hơn, nếu như địa chỉ nạn nhân cũng là địa chỉ
quảng bá, thì tất cả host đều là nạn nhân.
Một tấn công UDP fraggle khác là có một hoặc cả hai địa chỉ là địa chỉ
quảng. Tất cả các host trong mạng đều có thể nhận message ping-pong với tất cả
các host trong mạng khác.

Để chống lại những kiểu tấn công khuếch đại tới địa chỉ quảng bá. Thì
router có thể cấu hình để loại bỏ traffic mà định hướng thẳng tới địa chỉ quảng bá
trong mạng, và host nói chung có thể thực hiện như tường lửa mức host để cung
cấp thêm mức độ bảo vệ. Nếu không chúng cần thêm các ứng dụng, hầu hết các
host có thể an tồn bằng tường lửa tắt địa chỉ quảng bá của mạng.
1.5.2.2.3. Gói tin IP bị phân mảnh
Tất cả các host đều chấp nhận gói tin có kích thước nhỏ nhất là 68 byte,
Trong đó kích thước IP header max là 60 byte và phần dữ liệu là 8 byte. Tuy

22


nhiên, điều đó khơng có nghĩa là phân mảnh có kích thước nhỏ hơn 68 byte. Kích
thước gói tin IP header min là 20 byte, và gói tin phân mảnh có kích thước là 1
byte. Do đó chúng ta có thể thấy kích thước gói tin IP là 21 byte.
Phân mảnh IP là một góc tối của kỹ thuật IP.
Có một số vấn đề với Fragment:
• 2 bản fragment Nếu có hai fragment được nhận với nội dung khác
nhau. Thì fragment nào được lưu lại? cái thứ nhất? cái thứ hai? Hay
là loại bỏ cả hai?
• Trồng phân đoạn
• Ping gây lỗi
• kích thước gói tin lẻ
• Sự lẩn tránh tường lửa
1.5.2.2.4. Cổng 0
Cả TCP và UDP thì cổng 0 là bất bình thường, nó là cồng dự trữ và không
được sử dụng trong truyền thông. Bất kỳ traffic cổng 0 đều là vi phạm, nói chung,
host và firewall cấu hình loại bỏ traffic TCP hoặc UDP cổng 0
1.5.2.3. Lạm dụng UDP
UDP header chứa địa chỉ cổng nguồn và địa chỉ cổng đích, kích thước gói

tin, bit checksum. Các trường trong header này rất rõ ràng dễ hiểu nên nó dễ bị giả
mạo. UDP sử dụng cho tấn công kiểu khuyếch đại traffic đã xem xét ở trên.
1.5.2.4. Lạm dụng TCP
Việc giả mạo kết nối TCP là rất khó, trừ khi hacker chiếm được quyền điều
khiển router giữa hai hệ thống, vì traffic thiết lập kết nối có thể coi như là dấu hiệu
kết nối giữa hai hệ thống. Điều đó có nghĩa là kẻ tấn cơng có thể nhận ra nếu như
có bất kỳ hành động sai nào xảy ra trong khi thiết lập kết nối TCP.
Khai thác những điểm yếu của giao thức TCP ở tầng mạng, hacker có thể
sử dụng TCP retransmission và TCP flags sử dụng với mục đích phát hoại, tấn
cơng SYN flood và backscatter làm treo host, gói tin SYN hoặc RST cũng có thể
khơng chứa dữ liệu, tấn cơng đốn số sequence number.
Truyền lại TCP
TCP truyền lại gói tin để đảm bảo sự tin cậy cho kĩ thuật truyền tin IP
không tin cậy. Khi TCP truyền lại gói tin, gói tin được truyền lại giống với gói tin đã
truyền trước đó. Tất nhiên nó có thể bị phân mảnh trong q trình truyền đi, nhưng
phần dữ liệu đó được ghép lại thành gói tin ban đầu. Nếu IDS thấy được gói tin

23


truyền lại ( với giá trị checksum đúng) mà có nội dung khác với gói tin ban đầu, thì
đưa ra giả định hoặc sự thi hành TCP/IP đã dính virus hoặc có tấn cơng phá hoại.
Cờ TCP
Một số cờ trong gói tin TCP khơng bao giờ được thiết lập trong cùng một
gói tin. Ví dụ cờ SYN khơng bao giờ kết hợp cờ FIN hoặc cờ RST trong cùng một
gói tin, nếu các cờ này kết hợp với nhau thì đây chính là hành động trái phép.
Làm tràn SYN
Lợi dụng cách thức hoạt động của kết nối TCP/IP, hacker bắt đầu quá trình
thiết lập một kết nối TPC/IP tới mục tiêu muốn tấn cơng mà khơng gửi trả gói tin
ACK, khiến cho mục tiêu luôn rơi vào trạng thái chờ (đợi gói tin ACK từ phía u

cầu thiết lập kết nối) và liên tục gửi gói tin SYN ACK để thiết lập kết nối. Một cách
khác là giả mạo địa chỉ IP nguồn của gói tin yêu cầu thiết lập kết nối SYN và cũng
như trường hợp trên, máy tính đích cũng rơi vào trạng thái chờ vì các gói tin SYN
ACK khơng thể đi đến đích do địa chỉ IP nguồn là khơng có thật. Kiểu tấn cơng
SYN flood được các hacker áp dụng để tấn công một hệ thống mạng có băng
thơng lớn hơn hệ thống của hacker.
1.5.2.5. Lạm dụng ICMP
Giả mạo gói tin ICMP được sử dụng tạo tấn công từ chối dịch vụ bằng
cách tạo rất nhiều gói tin lỗi. Kiểu tấn cơng này cần một hệ thống rất quan trọng,
đó là mạng khuyếch đại. Hacker dùng địa chỉ của máy tính cần tấn cơng bằng
cách gửi gói tin ICMP echo cho tồn bộ mạng (broadcast). Các máy tính trong
mạng sẽ đồng loạt gửi gói tin ICMP reply cho máy tính mà hacker muốn tấn cơng.
Kết quả là máy tính này sẽ khơng thể xử lý kịp thời một lượng lớn thông tin và dẫn
tới bị treo máy.

1.5.3. Một số lỗi có thể khai thác:
1.5.3.1. Tràn bộ nhớ (Memory Buffer Overflow)
Hầu hết lỗ hổng bảo mật đều liên quan đến việc làm tràn bộ đệm bộ nhớ.
Bộ đệm là một vùng bộ nhớ liên tiếp định vị trong bộ nhớ chính, trong một số
trường hợp là stack hoặc memory heap. Vì bộ đệm có kích thước, nếu bộ nhớ bộ
đệm vượt q giới hạn, thì nó bị ghi đè. Hacker phát hiện ra lỗ hổng này.
Một đoạn chương trình C đơn giản làm tràn bộ nhớ:
main()
{
char buff[10];
strcpy(buff, "This string overflows the buffer"};
}
Không gian bộ nhớ (Memory Address Space)

24



Vùng bộ nhớ để chạy chương trình gọi khơng gian bộ nhớ (address
space). Trong hệ điều hành hiện đại, nó được chia ra thành những section bộ nhớ:
• Text: mã nhị phân được chương trình thực thi load, đánh dấu là chỉ đọc
(read- only). Trong một số kiến trúc, mã tự sửa đổi (self- modifying
code) được hỗ trợ bởi tạo mã máy động trong stack hoặc heap và
phân nhánh chúng.
• Initialized data: vùng dữ liệu mà chương trình thực thi copy vào. Nó
chứa giá trị biến mà giá trị biến được khởi đầu với một giá trị nào đó
nhưng được đánh dấu là read-write.
• Bss: là vùng cho dữ liệu phát sinh (không phải là dữ liệu ban đầu), mặc
dù thực tế vùng dữ liệu này có giá trị khởi đầu là 0. Vùng này chỉ tồn
tại với hệ điều hành cổ.
• Heap: Vùng bộ nhớ này biến động sự tồn tại của chúng phụ thuộc vào
hàm có được gọi hay khơng. Vùng bộ nhớ này cũng có khả năng
mở rộng hoặc thu hep lại phụ thuộc vào yêu cầu bộ nhớ của
chương trình. Nó có cấu trúc khác với cấu trúc của vùng stack, Vì
bộ nhớ được chỉ định nếu cần mà khơng quan tâm đến trạng thái
của stack.
• Stack: Vùng stack được so sánh với stack của đĩa thức ăn tại quán ăn
tự phục vụ, Đĩa cuối cùng đẩy vào stack là đĩa đầu tiên được lấy ra.
Hệ thống máy tính hiện đại, stack được định vị tại đỉnh của bộ nhớ
và kéo dài xuống dưới, vì vậy dữ liệu tại đỉnh của stack có địa chỉ
thấp nhất.

1.5.4. Giao thức và chương trình khai thác lỗi
Mặc dù phạm vi tấn cơng nhanh chóng được mở rộng. Những lỗi trong một
chương trình thường xảy ra vào giai đoạn đầu của Internet, trước khi vấn đề an
ninh trở thành vấn đề quan trọng; Lối khác là do những thiếu sót trong thiết kê

hoặc trong q trình thực thi.
Truyền thơng khơng mã hóa
Một số giao thức phát triển trong giai đoạn đầu của internet ngày nay vẫn
còn tồn tại. Tất nhiên những ngày đó chủ yếu xem xét chức năng của cơ sở hạ
tầng chứ không xem xét tới vấn đề bảo mật. Một số tùy chọn IP option gắn vào gói
tin với mức độ bảo mật, nhưng khơng có sự mã hóa cho phần nội dung của gói tin.
Điều này dẫn tới việc phát triển của giao thức cleartext, phổ biến như Telnet,
Rlogin và FTP.
Các giao thức cleartext là trong suốt. Nghĩa là dữ liệu khơng được mã hóa.
Khơng chỉ những người có quyền mới có thể thấy nội dung mà kể cả những kẻ tấn
cơng bắt gói tin trên đường truyền cũng có thể thấy được nội dung. Trong thời

25


×