LỜI CẢM ƠN
Trước tiên em xin gửi lời cảm ơn chân thành và sâu sắc nhất tới các thầy cô
giáo trong trường Đại học Duy Tân nói chung và các thầy cô giáo trong khoa Công
nghệ thông tin, bộ môn Kỹ thuật mạng nói riêng đã tận tình giảng dạy, truyền đạt
cho em những kiến thức, kinh nghiệm quý báu trong suốt thời gian qua.
Đặc biệt, em xin gửi lời cảm ơn đến thầy giáo Nguyễn Gia Như, thầy đã tận
tình giúp đỡ, trực tiếp chỉ bảo, hướng dẫn em trong suốt quá trình làm khóa luận tốt
nghiệp này. Trong thời gian làm việc với thầy, em không ngừng tiếp thu thêm nhiều
kiến thức bổ ích mà còn học tập được tinh thần làm việc, thái độ nghiên cứu nghiêm
túc, hiệu quả, đây là những điều rất cần thiết cho em trong quá trình học tập và công
tác sau này.
Sau cùng xin gửi lời cảm ơn chân thành tới gia đình, bạn bè đã động viên,
đóng góp ý kiến và giúp đỡ trong quá trình học tập, nghiên cứu và hoàn thành đồ án
tốt nghiệp này.
Mặc dù đã rất cố gắng, nhưng trong một khoảng thời gian cho phép, cũng
như hạn chế về mặt kiến thức của bản thân, cuốn đồ án này không thể tránh khỏi
nhiều thiếu sót. Chính vì vậy, em rất mong nhận được sự góp ý của các thầy giáo,
cô giáo cũng như của bạn bè và những người có quan tâm đến lĩnh vực mà cuốn đồ
án này đã được trình bày.
Đà Nẵng, tháng 5 năm 2014
NGUYỄN HỮU NGUYÊN TÂM
1
MỤC LỤC
2
DANH MỤC HÌNH VẺ
3
Hình 2.1: Cơ chế thiết lập kết nối trước khi truyền số
liệu 26
Hình 2.2: Tấn công DoS truyền thống 26
Hình 2.3. Kiểu tấn công DoS vào băng thông 28
Hình 2.4. Tiến trình Scanning 30
Hình 2.5. IRC bot Scanning 32
Hình 2.6. Kiến trúc tổng quan của DDos attack-network 33
Hình 2.7. Kiến trúc attack-network kiểu Agent – Handler 34
Hình 2.8. Kiến trúc attack-network của kiểu IRC-
Base 35
Hình 2.9. Những kiểu tấn công
DDoS 37
Hình 2.10. Amplification
Attack 39
Hình 2.11. Protocol Exploit Attack(1) 40
Hình 2.12. Protocol Exploit Attack (2) 41
Hình 2.13. Protocol Exploit Attack (3) 41
Hình 2.14. Mô hình kiến trúc phát hiện xâm nhập 44
Hình 2.15. Mô Hình NIDS 46
Hình 2.16 . Cơ chế hoạt động của IDS 50
Hình 2.17. Cấu trúc Rule 52
Hình 3.1. Mô hình triển khai demo 63
Hình 3.2. Kiểm tra môi trường cài đặt Snort 66
Hình 3.3. Biên dịch
Snort 67
Hình 3.4. Đưa cấu hình Snort vào các thư mục cần thiết cấu hình Snort 67
Hình 3.5. Bảng Tables trong mysql 70
Hình 3.6. Giao diện Base trước khi tiến hành ping 73
4
Hình 3.7. Ping đến máy
192.168.1.10 73
Hình 3.8. Giao diện Base sau khi ping 74
Hình 3.9. Bảng hiển thị cảnh báo 75
Hình 3.10. Giao diện ping không thành công 76
Hình 3.11. Giao diện của base sau khi ping không thành công 76
Hình 3.12. Tool tấn công DDoS(1) 77
Hình 3.13. Tool tấn công DDoS(2) 77
Hình 3.14. Giao diện của base sau khi ping không thành công 78
Hình 3.15. Giao diện khi truy cập web
test.html 78
Hình 3.16. Giao diện Base sau khi có người truy cập
web 79
Hình 3.17. Thông báo khi phát hiện có người truy cập
web 79
Hình 3.18. Giao diện base thông báo truy cập web đã bị
chặn 80
Hình 3.19. Giao diện khi truy cập web test.html không thành công 80
5
THUẬT NGỮ, TỪ VIẾT TẮT
Scanning, là tiến trình “quét”, trước đây được attacker thực hiện bằng
tay, sử dụng những công cụ “thô”. Qua thời gian, những công cụ scanning
được cải thiện và những chức năng của nó đã tích hợp và tự động. Như
chúng ta từng nghe nói đến về worm, một trong những hình thức tự động
scanning.
Blended threat đầu tiên cũng là những chương trình đơn thuần hoặc
một nhóm các chương trình cung cấp nhiều dịch vụ, nó là những tập lệnh và điều
khiển sử dụng một IRC bot và scanning lỗ hổng.
Flooding thường được dùng trong cuộc tấn công từ chối dịch vụ (DoS). Nó
6
tạo ra một số lượng rất lớn các gói tin vào hệ thống mục tiêu, khiến hệ thống bị sụp
đỗ.
ODBC cung cấp một chuẩn bằng phương thức client kết nối vào một CSDL.
Để biết nhiều thông tin về ODBC, vào http://odb c .o r g .
Cleartext là dạng thông điệp chứa những ký tự mà khi nhìn vào nó, ta có
thể hiểu đầy đủ ý nghĩa của những chuỗi ký tự này.
Attacker: người tấn công vào hệ thống máy tính, đồng nghĩa với intruder,
craker, hacker.
Master: cũng thường gọi là handler,client là hệ thống bị cài phần mềm xâm
nhập, chịu sự quản lý của attacker.
Daemon: hay còn gọi là agent, bcast (broadcast) program, hay zombie. Là
hệ thống bị cài đặt phần mềm giúp attacker tấn công. Nó chịu sự quản lý của master.
Victim: nạn nhân bị tấn công.
Signature: dấu hiệu. Mỗi một cuộc tấn công hay xâm nhập vào tổ chức
mạng đều mang một dấu hiệu đặc trưng. Nhờ đó, người ta mới rút ra được những
luật định và xây dựng thành những tập luật riêng.
Rule hay Ruleset: tập luật luôn được sử dụng trong các hệ thống phát hiện
xâm nhập (IDS) hay các hệ thống ngăn chặn xâm nhập (IPS, Firewall) nhằm phát
hiện và ngăn chặn các hành động hay dấu hiệu xâm phạm vào hệ thống.
False Posities: khi nhận ra những định dạng xuất loại này, tức là hệ thống
IDS đã sinh ra những cảnh báo mà thực chất lưu lượng nó “bắt được” là những
lưu lượng “bình thường” (không phải lưu lượng nguy hiểm).
Tcpdump là một chương trình, tiện ích tích hợp sẵn trên các hệ thống Linux,
Unix. Sử dụng tcpdump cũng giống như các chương trình bắt gói tin.
C ác t ừ ng ữ vi ế t t ắ t:
- IDS - Intrusion Detection System: Hệ thống phát hiện xâm nhập.
- IPS – Intrusion Prevention System: Hệ thống ngăn chặn xâm nhập.
- Snort: là một chương trình IDS.
- Firewall: tường lửa.
7
- DoS - Denial of Service. Từ chối dịch vụ.
- DDoS - Distribute Denial of Service. Từ chối dịch vụ phân tán.
- IRC – Internet Relay Chat.
- ISP - Internet Service Provider. Nhà cung cấp dịch vụ internet.
- DNS - Domain Name Service. Dịch vụ tên miền.
- TFN - Tribe Flood Network. Một công cụ tấn công DDoS.
- TFN2K - Tribe Flood Network 2000.
- FTP- File Transfer Protocol. Giao thức truyền tập tin.
- SNMP - Simple Network Managerment Protocol.
- TCP – Transfer Control Protocol: giao thức điều khiển truyền vận.
- UDP – User Datagram Protocol: giao thức dữ liệu người dùng.
- ICMP – Internet Control Message Protocol: giao thức thông điệp điều
khiển internet.
- IP – Internet Protocol: giao thức internet.
- TTL – Time To Live.
- ToS – Time of Service.
- ACID - Analysis Console for Intrusion Databases.
- BASE – Basic Analysis and Security Engine.
- HTTP – HyperText Trasfer Protocol.
- HTML – HyperText Mark Language.
8
Nghiên cứu và xây dựng mô hình phòng chống tấn công từ chối dịch vụ ứng dụng Snort
MỞ ĐẦU
1. LÝ DO CHỌN ĐỀ TÀI
Việc tin tặc tấn công các trang web đã xẩy ra từ nhiều năm nay. Trong đó có các thủ
thuật như: lợi dụng các lỗ thủng của software quản lý server hay database,… để phá
từ bên trong máy chủ, gửi spam làm tràn ngập hộp thư điện tử (e-mail), dùng DoS
hay DDoS,… để tấn công từ bên ngoài, ăn cắp mật khẩu (bằng cách cài một phần
mềm gián điệp vào máy PC cá nhân), tên miền, chiếm đoạt hộp thư,…
Website có lượt truy cập cao là mong muốn của hầu hết những khách hàng thiết kế
website. Tuy nhiên, có đôi lúc con số thống kê số lượng truy cập không chính xác
bởi sự tấn công của những kẻ phá hoại. Sự tấn công này làm giảm khả năng đáp ứng
yêu cầu từ người dùng và làm ngập lụt hệ thống, khiến website không thể trả lại
thông tin theo truy vấn của khách hàng và rõ ràng đây là việc mà không nhà quản trị
website nào mong muốn.
Và một trong những cách mà tin tặc dùng để tấn công các trang web là Dos hay
DDos. Trong bài viết này tôi sẽ trình bày một cách tổng quát nhất có thể, về cách
thức tấn công các trang web của hình thức này. Từ đó đưa ra những giải pháp tốt
nhất để phòng chống cách thức tấn công này. Và đó cũng chính là lý do tôi chọn để
tài “ Nghiên cứu và xây dựng mô hình phòng chống tấn công từ chối dịch
vụ ứng dụng Snort” làm hướng nghiên cứu trong báo cáo khóa luận.
2. MỤC TIÊU VÀ NHIỆM VỤ
- Hiểu rõ đặc điểm và cách thức tấn công của DoS & DDoS.
- Nắm vững các lỗ hổng mà DoS & DDoS dựa vào để tấn công.
- Cách thức phòng chống thông qua IDS.
3. ĐỐI TƯỢNG NGHIÊN CỨU
Nghiên cứu lý thuyết về DoS & DDoS, tìm hiểu cách thức phòng chống của hệ
thống IDS ứng dụng Snort, từ đó đưa ra các giải pháp phòng thủ trước các cuộc tấn
công của DoS & DDoS.
4. PHẠM VI NGHIÊN CỨU
- Tìm hiểu về đặc điểm và cách thức tấn công của DoS & DDoS.
- Tìm hiểu các thành phần chức năng của IDS và đưa ra giải pháp phòng thủ.
SVTH: Nguyễn Hữu Nguyên Tâm 9
Nghiên cứu và xây dựng mô hình phòng chống tấn công từ chối dịch vụ ứng dụng Snort
5. Ý NGHĨA KHOA HỌC VÀ THỰC TIỄN
Hiện nay, bất kỳ một nhà quảng trị mạng nào cũng phải luôn đề cao cảnh giác với
các loại hình tấn công các trang web do mình quảng trị. Mà loại hình tấn công nguy
hiểm nhất là dùng Dos (tấn công từ chối dịch vụ) hay Ddos (phân bố tấn công từ
chối dịch vụ).
Để thuận lợi cho công việc sau này, tôi muốn đi sâu tìm hiểu về cách thức tấn công
của loại này từ đó có những giải pháp khả dỉ nhất để phòng chống.
Thông qua bài viết này, tôi cũng muốn những ai chưa biết nhiều về sự nguy hiểm
cũng như nguy cơ tiềm ẩn của hệ thống có thể bị tấn công Dos hay Ddos sẽ có sự
chuẩn bị tốt nhất cho hệ thống, giảm tối thiểu các ảnh hưởng của các cuộc tấn công.
6. BỐ CỤC
- CHƯƠNG 1: TỔNG QUAN AN TOÀN MẠNG
- CHƯƠNG 2: KỸ THUẬT TẤN CÔNG DOS /DDOS VÀ HỆ THỐNG IDS
- CHƯƠNG 3: MÔ PHỎNG TẤN CÔNG VÀ PHÒNG THỦ
- KẾT LUẬN
CHƯƠNG 1: TỔNG QUAN AN TOÀN MẠNG
Trong bối cảnh tiến trình hội nhập, vấn đề an ninh mạng và bảo mật dữ liệu
đang trở nên rất được quan tâm. Khi cơ sở hạ tầng và các công nghê mạng đã đáp
SVTH: Nguyễn Hữu Nguyên Tâm 10
Nghiên cứu và xây dựng mô hình phòng chống tấn công từ chối dịch vụ ứng dụng Snort
ứng các yêu cầu về băng thông, chất lượng dịch vụ, đồng thời thực trạng tấn công
trên mạng đang ngày một gia tăng thì vấn đề bảo mật càng được chú trọng hơn.
Không chỉ các nhà cung cấp dịch vụ Internet, các cơ quan chính phủ mà các doanh
nghiệp, tổ chức cũng có ý thức hơn về an toàn thông tin.
1.1. NGUY CƠ ẢNH HƯỞNG ĐẾN AN TOÀN MẠNG
1.1.1. Lổ hổng
Các lỗ hổng bảo mật trên một hệ thống là các điểm yếu có thể tạo ra sự
ngưng trệ của dịch vụ, thêm quyền đối với người sử dụng hoặc cho phép các truy
nhập không hợp pháp vào hệ thống. Các lỗ hổng cũng có thể nằm ngay các dịch vụ
cung cấp như sendmail, web, ftp Ngoài ra các lỗ hổng còn tồn tại ngay chính tại
hệ điều hành như trong Windows NT, Windows 95, UNIX; hoặc trong các ứng dụng
mà người sử dụng thương xuyên sử dụng như Word processing, các hệ thống
databases
Phân loại lỗ hổng bảo mật :
Có nhiều tổ chức khác nhau tiến hành phân loại các dạng lỗ hổng đặc biêt.
Theo cách phân loại của Bộ quốc phòng Mỹ, các loại lỗ hổng bảo mật trên một hệ
thống được chia như sau:
- Lỗ hổng loại C: các lỗ hổng loại này cho phép thực hiện các phương thức
tấn công theo DoS (Dinal of Services - Từ chối dịch vụ). Mức độ nguy hiểm thấp,
chỉ ảnh hưởng tới chất lượng dịch vụ, có thể làm ngưng trệ, gián đoạn hệ thống,
không làm phá hỏng dữ liệu hoặc đạt được quyền truy nhập bất hợp pháp .
- Lổ hổng loại B: Các lỗ hổng cho phép người sử dụng có thêm các quyền
trên hệ thống mà không cần thực hiện kiểm tra tính hợp lệ. Mức độ nguy hiểm trung
bình, những lỗ hổng này thường có trong các ứng dụng trên hệ thống, có thể dẫn
đến mất hoặc lộ thông tin yêu cầu bảo mật.
- Lỗ hổng loại A: Các lỗ hổng này cho phép người sử dụng ở ngoài có thể
truy nhập vào hệ thống bất hợp pháp. Lỗ hổng rất nguy hiểm, có thể làm phá hủy
toàn bộ hệ thống.
SVTH: Nguyễn Hữu Nguyên Tâm 11
Nghiên cứu và xây dựng mô hình phòng chống tấn công từ chối dịch vụ ứng dụng Snort
1.1.2. Các kỹ thuật tấn công trên mạng
• Tấn công trực tiếp
Những cuộc tấn công trực tiếp thông thường được sử dụng trong giai đoạn
đầu để chiếm được quyền truy nhập hệ thống mạng bên trong.
• Nghe trộm trên mạng
Thông tin gởi đi trên mạng thường được luân chuyển từ máy tính này qua
các máy tính khác, điều đó khiến cho thong tin của ta có thể bị kẻ khác nghe trộm.
Việc nghe trộm thường được các Hacker tiến hành khi đã chiếm được quyền truy
nhập vào hệ thống hoặc kiểm soát đường truyền.
• Giả mạo địa chỉ
Giả mạo địa chỉ có thể được thực hiện thông qua sử dụng khả năng dẫn
đường trực tiếp. Với cách tấn công này kẻ tấn công gửi các gói tin tới mạng khác
với một địa chỉ giả mạo, đồng thời chỉ rõ đường dẫn mà các gói tin phải đi. Thí dụ
người nào đó có thể giả mạo địa chỉ của bạn để gửi đi những thông tin có thể làm
ảnh hưởng xấu tới bạn.
• Vô hiệu hoá các chức năng của hệ thống
Đây là kiểu tấn công làm tê liệt hệ thống, làm mất khả năng cung cấp dịch vụ
(Denial of Service - DoS) không cho hệ thống thực hiện được các chức năng mà nó
được thiết kế. Kiểu tấn công này rất khó ngăn chặn bởi chính những phương tiện
dùng để tổ chức tấn công lại chính là những phương tiện dùng để làm việc và truy
cập thông tin trên mạng. Một thí dụ về trường hợp có thể xảy ra là một người trên
mạng sử dụng chương trình đẩy ra những gói tin yêu cầu về một trạm nào đó. Khi
nhận được gói tin, trạm luôn luôn phải xử lý và tiếp tục thu các gói tin đến sau cho
đến khi bộ đệm đầy, dẫn tới tình trạng những nhu cầu cung cấp dịch vụ của các máy
khác đến trạm không được phục vụ.
Điều đáng sợ là các kiểu tấn công DoS chỉ cần sử dụng những tài nguyên
giới hạn mà vẫn có thể làm ngưng trệ dịch vụ của các site lớn và phức tạp. Do vậy
loại hình tấn công này còn được gọi là kiểu tấn công không cân xứng (asymmetric
attack). Chẳng hạn như kẻ tấn công chỉ cần một máy tính PC thông thường với một
SVTH: Nguyễn Hữu Nguyên Tâm 12
Nghiên cứu và xây dựng mô hình phòng chống tấn công từ chối dịch vụ ứng dụng Snort
modem tốc độ chậm vẫn có thể tấn công làm ngưng trệ các máy tính mạnh hay
những mạng có cấu hình phức tạp.
• Tấn công vào các yếu tố con người
Đây là một hình thức tấn công nguy hiểm nhất nó có thể dẫn tới những tổn
thất hết sức khó lường. Kẻ tấn công có thể liên lạc với người quản trị hệ thống thay
đổi một số thông tin nhằm tạo điều kiện cho các phương thức tấn công khác.
Ngoài ra, điểm mấu chốt của vấn đề an toàn, an ninh trên mạng chính là người sử
dụng. Họ là điểm yếu nhất trong toàn bộ hệ thống do kỹ năng, trình độ sử dụng máy
tính, bảo mật dữ liệu không cao. Chính họ đã tạo điều kiện cho những kẻ phá hoại
xâm nhập được vào hệ thống thông qua nhiều hình thức khác nhau như qua email
hoặc sử dụng những chương trình không rõ nguồn gốc, thiếu độ an toàn.
Với kiểu tấn công như vậy sẽ không có bất cứ một thiết bị nào có thể ngăn
chặn một cách hữu hiệu chỉ có phương pháp duy nhất là hướng dẫn người sử dụng
mạng về những yêu cầu bảo mật để nâng cao cảnh giác. Nói chung yếu tố con người
là một điểm yếu trong bất kỳ một hệ thống bảo vệ nào và chỉ có sự hướng dẫn của
người quản trị mạng cùng với tinh thần hợp tác từ phía người sử dụng mới có thể
nâng cao độ an toàn của hệ thống bảo vệ.
1.1.3. Các hình thức tấn công trên mạng
Có thể phân thành các dạng như sau:
1.1.3.1. Reconnaissance attacks
Bước đầu hacker ping đến tầm nhắm để xác định địa chỉ IP đích. Sau đó,
hacker xác định những port cũng như những dịch vụ đang “sống” trên địa chỉ IP đó.
Từ những thông tin này, hacker bắt đầu xác định được dạng và phiên bản của hệ
điều hành. Hacker tiến hành đánh cắp dữ liệu hoặc phá huỷ hệ điều hành của mạng.
Các hình thức tấn công dạng này bao gồm: packet sniffers, port scans, ping sweeps,
internet information queries.
Packet sniffers:
Là phần mềm ứng dụng dùng một card adapter với promiseous mode để bắt
giữ tất cả các gói tin gởi xuyên qua một mạng LAN. Kỹ thuật này chỉ thực hiện
SVTH: Nguyễn Hữu Nguyên Tâm 13
Nghiên cứu và xây dựng mô hình phòng chống tấn công từ chối dịch vụ ứng dụng Snort
được trên cùng một collision domain.
Packet sniffers sẽ khai thác những thông tin được truyền ở dạng clear text.
Những giao thức truyền ở dạng clear text bao gồm: Telnet, FTP, SNMP, POP,
HTTP…
Một vd như sau:
Code:
TCP - Transport Control Protocol
Source Port: 3207
Destination Port: 110 pop3
Sequence Number: 1904801188
Ack Number: 1883396256
Offset: 5 (20 bytes)
Reserved: %000000
Flags: %011000
0. (No Urgent pointer)
.1 Ack
1 Push
.0 (No Reset)
0. (No SYN)
0 (No FIN)
Window: 64161
Checksum: 0x078F
Urgent Pointer: 0
No TCP Options
POP - Post Office Protocol
Line 1: PASS secretpass
Ta nhận thấy password được truyền đi ở dạng clear text là secrectpass.
Bởi vì packet được truyền đi không được mã hoá như trên, nó có thể bị xử lý
bởi bất kỳ ai sử dụng kỹ thuật packet sniffers.
Những công cụ sau được dùng ngăn cản packet sniffers gồm: authentication,
SVTH: Nguyễn Hữu Nguyên Tâm 14
Nghiên cứu và xây dựng mô hình phòng chống tấn công từ chối dịch vụ ứng dụng Snort
switched infrastrutured, antisniffer và cryptography.
Authentication:
Kỹ thuật xác thực này được thực hiện phổ biến như one-type password
(OTPs). Kỹ thuật này được thực hiện bao gồm hai yếu tố: personal identification
number ( PIN ) và token card để xác thực một thiết bị hoặc một phần mềm ứng
dụng.
Token card là thiết bị phần cứng hoặc phần mềm sản sinh ra thông tin một cách
ngẫu nhiên ( password ) tai một thời điểm, thường là 60 giây.
Khách hàng sẽ kết nối password đó với một PIN để tạo ra một password duy
nhất. Giả sử một hacker học được password đó bằng kỹ thuật packet sniffers, thông
tin đó cũng không có giá trị vì nó đã hết hạn.
Switched infrastructured:
Kỹ thuật này có thể dùng để ngăn chặn packet sniffers trong môi trường
mạng. Vd: nếu toàn bộ hệ thống sử dụng switch ethernet, hacker chỉ có thể xâm
nhập vào luồng traffic đang lưu thông tại một host mà hacker kết nối đến. Kỹ thuật
này không làm ngăn chặn hoàn toàn packet sniffer nhưng nó có thể giảm được tầm
ảnh hưởng của nó.
Antisniffer tools:
Là những phần mềm và phần cứng được thiết kế để ngăn chặn sniffer. Thật
sự những ứng dụng này không ngăn chặn được hoàn toàn nguy cơ bị sniffer nhưng
cũng giống như những công cụ khác, nó là một phần của toàn bộ hệ thống.
Cryptography:
Kỹ thuật mã hoá này giúp cho dữ liệu được truyền đi qua mạng mà không ở
dạng clear text. Giả sử hacker có bắt được dữ liệu thì cũng không thể giải mã được
thông tin.
Phương pháp này có hiệu lực hơn so với việc dò tìm và ngăn cản sniffer.
Nếu như một kênh truyền được mã hoá, dữ liệu mà packet sniffer dò tìm được cũng
không có giá trị và không phải là thông tin chính xác ban đầu.
Hệ thống mã hóa của Cisco dựa trên kỹ thuật IPSec, giao thức mã hóa “
SVTH: Nguyễn Hữu Nguyên Tâm 15
Nghiên cứu và xây dựng mô hình phòng chống tấn công từ chối dịch vụ ứng dụng Snort
đường hầm” dựa trên địa chỉ IP. Những giao thức gồm: Secure Sell Protocol ( SSH )
và Secure Socket Layer ( SSL ).
Port scans and ping sweeps:
Kỹ thuật này được tiến hành nhằm những mục đích như sau:
Xác định những dịch vụ trong mạng .
Xác định các host và thiết bị đang vận hành trong mạng .
Xác định hệ điều hành trong hệ thống .
Xác định tất cả các điểm yếu trong mạng, từ đó tiến hành những mục đích
khác.
Với kỹ thuật ping sweeps, hacker có thể xác định một danh sách các host
đang sống trong một môi trường. Từ đó, hacker sử dụng công cụ port scans xoay
vòng qua tất cả các port và cung cấp một danh sách đầy đủ các dịch vụ đang chạy
trên host đã tìm thấy bởi ping sweeps. Công viêc tiếp theo là hacker xác định những
dịch vụ có điểm yếu và bắt đầu tấn công vào điểm yếu này.
Kỹ thuật IDS được dùng để cảnh báo cho nhà quản trị khi có reconnaissance
attacks như là port scans và ping sweeps. IDS giúp nhà quản trị có sự chuẩn bị tốt
nhằm ngăn cản hacker.
Internet information queries:
DNS queries có thể chỉ ra nhiều thông tin như là người sở hữu một domain
nào đó và range địa chỉ nào được ấn định cho domain đó.
Hacker sử dụng công cụ này để “ trinh sát” tìm ra các thông tin trên mạng.
Cùng với port scans và ping sweeps, sau khi tìm ra được những thông tin đầy
đủ như các port active, các giao thức chạy trên port đó, hacker tiến hành kiểm tra
những đặc trưng của các ứng dụng này để tìm ra điểm yếu và bắt đầu tấn công.
1.1.3.2. Access attacks
Trong phương pháp này, kẻ xâm nhập điển hình tấn công vào mạng nhằm:
đánh cắp dữ liệu, giành lấy quyền access, và giành lấy những đặc quyền access sau
này.
Access attacks có thể bao gồm:
Password attack
Trust exploitation
SVTH: Nguyễn Hữu Nguyên Tâm 16
Nghiên cứu và xây dựng mô hình phòng chống tấn công từ chối dịch vụ ứng dụng Snort
Port redirection
Man in the middle attack
a) Password attack:
Hacker có thế xâm nhập hệ thống dùng các kỹ thuật brute-force attacks,
trojan horce, IP spoofing và packet sniffer.
Thường một cuộc tấn công brute-force attack được thực hiện dùng 1 chu
trình chạy xuyên qua mạng và cố gắng xen vào chia sẻ môi trường. Khi hacker
giành được quyền access đến một nguồn tài nguyên, hacker cùng với user cùng chia
sẻ quyền lợi. Nếu như có đủ tài nguyên thì hacker sẽ tạo ra một cửa sổ kín cho lần
access sau.
Hacker có thể làm thay đổi bảng định tuyến trong mạng. Điều đó sẽ làm chắc
chắn rằng tất cả các gói tin sẽ được gởi đến hacker trước khi được gởi đến đích
cuối cùng.
Trong một vài trường hợp, hacker có thể giám sát tất cả các traffic, thật sự trở
thành một man in the middle.
Ta có thể hạn chế password attack bằng những cách sau:
Không cho phép user dùng cùng password trên các hệ thống.
Làm mất hiệu lực account sau một vài lần login không thành công. Bước kiểm tra
này giúp ngăn chặn việc rà soát password nhiều lần.
Không dùng passwords dạng clear text: dùng kỹ thuật OTP hoặc mã hoá password
như đã trình bày phần trên.
Dùng “strong” passwords: Dạng password này dùng ít nhất 8 ký tự, chứa các
uppercase letters, lowercase letters, những con số và những ký tự đặc biệt.
b) Trust exploitation:
Đây là phương pháp “ khai thác tin cậy “, nó dựa vào các mối quan hệ tin cậy
bên trong mạng.
Bình thường, nếu hai domain có mối quan hệ tin cậy với nhau thì cho phép
thiết bị domain này có thể access vào domain kia.
Hacker sẽ lợi dụng sơ hở trong mối quan hệ tin cậy nhằm khai thác các sai sót
SVTH: Nguyễn Hữu Nguyên Tâm 17
Nghiên cứu và xây dựng mô hình phòng chống tấn công từ chối dịch vụ ứng dụng Snort
trong mối quan hệ này để thoả hiệp, tức là để kiểm soát.
Hệ thống bên ngoài firewall sẽ có mối quan hệ hoàn toàn không tin cậy với hệ
thống bên trong firewall.
c) Port redirection:
Là một dạng khác của trust exploitation attack mà nó sử dụng một host thoả
hiệp nhằm lấy giấy phép ra vào firewall.
Ta có thể tưởng tượng như là một firewall với 3 interface và mỗi interface kết
nối với 1 host. Host ở bên ngoài có thể hướng đến host ở public services ( thường
được gọi là demilitanized zone- DMZ ). Và host ở public services có thể hướng tới
cả host ở bên trong hay bên ngoài firewall. Hacker làm cho host ở public service trở
thành 1 host thoả hiệp. Hacker đặt một phần mềm tại host này nhằm tạo ra một
traffic trực tiếp từ host outside đến host inside. Kết nối này sẽ ko thực hiện thông
qua firewall. Như vậy, host bên ngoài giành được quyền kết nối với host bên trong
thông qua qui trình port redirection tại host trung tâm ( public services host ).
d) Man in the middle attack:
Kỹ thuật man in the middle được thực hịên bao gồm:
Netword packet sniffers .
Giao thức routing và transport.
Tấn công man in the middle nhằm mục đích:
Đánh cắp dữ liệu.
Giành lấy một phiên giao dịch.
Phân tích traffic trong mạng.
DoS.
Phá hỏng dữ liệu được truyền.
Một ví dụ của man in the middle attack đó là: một người làm việc cho ISP và
cố gắng access đến tất cả các gói dữ liệu vận chuyển giữa ISP và bất kỳ một mạng
nào khác.
Ta có thể ngăn chặn hình thức tấn công này bằng kỹ thuật mã hoá: mã hoá
traffic trong một đường hầm IPSec, hacker sẽ chỉ nhìn thấy những thông tin không
có giá trị.
1.2. CÁC DỊCH VỤ CƠ CHẾ BẢO MẬT VÀ TẤN CÔNG
1.2.1. Dịch vụ bảo mật ( Security service)
SVTH: Nguyễn Hữu Nguyên Tâm 18
Nghiên cứu và xây dựng mô hình phòng chống tấn công từ chối dịch vụ ứng dụng Snort
Là thông qua việc đánh giá các thành phần hê thống phần trong hệ thống của
khách hàng về khía cạnh bảo mật, bao gồm:
1. Hệ thống mạng/ cơ sở dữ liệu liên quan ứng dụng.
2. Các máy chủ ứng dụng.
3. Các ứng dụng, đặc biệt là các ứng dụng trên nền web/ ứng dụng cho phép giao
dịch trực tuyến như e-banking, các trang web thương mại điện tử.
1.2.2. Cơ chế bảo mật (Security Mechanish)
Phần trên đã trình bày các hình thức tấn công, một hệ truyền tin được gọi là
an toàn và bảo mật thì phải có khả năng chống lại được các hình thức tấn công trên.
Như vậy hệ truyền tin phải có các đặt tính sau:
1) Tính bảo mật (Confidentiality): Ngăn chặn được vấn đề xem trộm thông điệp.
2) Tính chứng thực (Authentication): Nhằm đảm bảo cho B rằng thông điệp mà B
nhận được thực sự được gửi đi từ A, và không bị thay đổi trong quá trình truyền tin.
Như vậy tính chứng thực ngăn chặn các hình thức tấn công sửa thông điệp, mạo
danh, và phát lại thông điệp.
3) Tính không từ chối (Nonrepudiation): Ngăn chặn hiện tượng người gửi hoặc
người nhận từ chối một thông điệp đã được (họ) chuyển đi.
1.3.3. Tấn công bảo mật (Security Attack)
Security Attack – Tấn công bảo mật: Đây là hành động nhằm tiết lộ bí mật
thông tin.
• Security Attacks
• Interruption: Tấn công vào availability – Sự khả dụng của dịch vụ.
• Interception: Tấn công vào confidentiality – Thông tin không bị tiết lộ.
• Modification: Tấn công vào integrity – Sự bảo toàn của thông tin, không bị thay
đổi.
• Fabrication: Tấn công vào authenticity – Xác thực.
SVTH: Nguyễn Hữu Nguyên Tâm 19
Nghiên cứu và xây dựng mô hình phòng chống tấn công từ chối dịch vụ ứng dụng Snort
CHƯƠNG 2: KỸ THUẬT TẤN CÔNG DOS /DDOS VÀ HỆ
THỐNG IDS
GIỚI THIỆU CHUNG VỀ DOS/DDOS
Ngày 7/3/2000, yahoo.com đã phải ngưng phục vụ hàng trăm triệu user trên
toàn thế giới nhiều giờ liền. Vài giờ sau, Yahoo đã tìm ra nguyên nhân gây nên tình
trạng này, họ đang phải gánh chịu một đợt tấn công DDoS với quy mô vài ngàn máy
SVTH: Nguyễn Hữu Nguyên Tâm 20
Nghiên cứu và xây dựng mô hình phòng chống tấn công từ chối dịch vụ ứng dụng Snort
tính liên tục gửi hàng triệu request đến các server dịch vụ làm các server này không
thể phục vụ các user thông thường khác.
Vài ngày sau, một sự kiện tương tự diễn ra nhưng có phần “ồn ào” hơn do
một trong các nạn nhân mới là hãng tin CNN, amazon.com, buy.com, Zdnet.com, E-
trade.com, Ebay.com. Tất cả các nạn nhân là những gã khổng lồ trên internet thuộc
nhiều lĩnh vực khác nhau. Theo Yankke Group, tổng thiệt hại do cuộc tấn công lên
đến 1.2 triệu USD, nhưng không đáng kể bằng sự mất mát về lòng tin của khách
hàng, uy tín của các công ty là không thể tính được.
Làm đảo lộn mọi dự tính, thủ phạm là một cậu bé 15 tuổi người Canada, với
nickname “mafiaboy”. Lại là một thiên tài bẩm sinh như Kevin Mitnick xuất hiện?
Không. Mafiaboy chỉ tìm tòi và download về một số chương trình công cụ của các
hacker. Cậu đã dùng một công cụ DDos có tên là TrinOO để gây nên các cuộc tấn
công kiểu DDoS khủng khiếp trên. Một điểm đáng lưu ý khác là Mafiaboy bị bắt do
tự khoe khoang trên các chatroom công cộng, không ai tự truy tìm được dấu vết của
cậu bé này.
Mới đay nhất, ngày 19/3/2013 tổ chức Spamhaus hứng chịu cuộc tấn công
Ddos lớn nhất trong lịch sử Internet, tổ chức Spamhaus vốn chịu trách nhiệm duy trì
danh sách blacklist các máy chủ đang gửi thư spam trên toàn phải hứng chịu một
cuộc tấn công DDoS với lưu lượng lớn nhất lịch sử Internet, lưu lượng hiện đã đạt
đỉnh 300 Gbps ( tương đương 37 GB/s ). Cũng nên nhắc bạn rằng tổng lưu lượng
internet của Việt Nam chỉ khoảng 361 Gbps, tức là nếu cuộc tấn công này nhắm vào
hạ tầng internet Việt Nam thì chúng ta sẽ nhanh chóng bị bão hoà đường truyền và
Việt Nam sẽ sớm bị cách ly hoàn toàn với internet thế giới. Các cuộc tấn công
DDoS thông thường trên thế giới gần đây chỉ đạt khoảng 50 Gbps là đã đủ làm tê
liệt cơ sở hạ tầng của một tổ chức bị nhắm tới. Rất may Spamhaus hiện đang được
chống lưng bởi rất nhiều tập đoàn công nghệ lớn của thế giới như Google,
Microsoft, Yahoo, Amazon,… do đó các hãng này chia sẻ tài nguyên khổng lồ của
họ nhằm giúp hấp thụ lưu lượng khổng lồ trên. Nguyên nhân dẫn đến cuộc tấn công
là từ một cuộc tranh cãi giữa tổ chức Spamhaus và một công ty dịch vụ hosting của
Đức tên Cyberbunker khi tổ chức Spamhaus liệt kê các máy chủ của công ty này
vào danh sách Blacklist, danh sách này sẽ giúp các nhà cung cấp dịch vụ mail toàn
SVTH: Nguyễn Hữu Nguyên Tâm 21
Nghiên cứu và xây dựng mô hình phòng chống tấn công từ chối dịch vụ ứng dụng Snort
cầu chặn đứng các spam mail đến từ công ty Cyberbunker. Nhiều quan điểm cho
rằng DDoS không chỉ là phá hoại hay đánh cắp dữ liệu mà nó mang một ý nghĩa
tích cực hơn. Cuộc tranh cãi này nhanh chóng leo theo thành các lời đe doạ tấn công
và cuối cùng, công ty này đã kết hợp với nhiều tổ chức tin tặc tại Châu Âu để điều
hướng một lượng khổng lồ gồm nhiều mạng máy tính ma ( botnets ) với nhiều triệu
máy tính đã bị thâm nhập trước đó, tập trung tấn công các máy chủ DNS của
Spamhaus. Điều đáng ngại là cuộc tấn công này đã tạo nên một kỷ lục mới về lưu
lượng tấn công, nó đánh dấu một thời kì khó khăn sắp tới của internet khi mà các
chính phủ có vẻ đang bất lực trước các tổ chức tin tặc.
Còn rất nhiều gã khổng lồ khác đã gục ngã dưới các cuộc tấn công kiểu
DDoS sau đó, trong đó có cả Microsodt. Tuy nhiên hai cuộc tấn công trên là điển
hình nhất về DDoS, nó nói lên một đặc điểm chết người của DDoS: “Rất dễ thực
hiện, hầu như không thể tránh, hậu quả rất nặng nề”.
2.1 KHÁI NIỆM DOS (DENIAL OF SERVICE)
DoS (Denial of Service) có thể mô tả như hành động ngăn cản những người
dùng hợp pháp của một dịch vụ nào đó truy cập và sử dụng dịch vụ đó. Nó bao gồm
cả việc làm tràn ngập mạng, làm mất kết nối với dịch vụ… mà mục đích cuối cùng
là làm cho server không thể đáp ứng được các yêu cầu sử dụng dịch vụ từ các client.
DoS có thể làm ngưng hoạt động của một máy tính, một mạng nội bộ, thậm chí cả
một hệ thống mạng rất lớn. Thực chất của DoS là kẻ tấn công sẽ chiếm dụng một
lượng lớn tài nguyên mạng như băng thông, bộ nhớ… và làm mất khả năng xử lý
các yêu cầu dịch vụ đến từ các client khác.
Những khả năng bị tấn công bằng Dos:
• Tấn công trên SWAPSPACE
Hầu hết các hệ thống đều có vài trăm MB không gian chuyển đổi (swap
space) để phục vụ cho những yêu cầu từ máy khách. Swap space thường dung cho
các tiến trình con có thời gian ngắn nên DoS có thể được dựa trên phương thức làm
tràn đầy swap space.
• Tấn công trên BANDWIDTH
SVTH: Nguyễn Hữu Nguyên Tâm 22
Nghiên cứu và xây dựng mô hình phòng chống tấn công từ chối dịch vụ ứng dụng Snort
Phần băng thông dành cho mỗi hệ thống là giới hạn, vì thế nếu hacker cùng
lúc gửi nhiều yêu cầu đến hệ thống thì phần băng thông không đủ đáp ứng cho một
khối lượng dữ liệu lớn đó và dẫn đến hệ thống bị phá vỡ.
• Tấn công vào RAM
Tấn công Dos chiếm 1 khoảng lớn của RAM cũng có thể gây ra các vấn đề
phá hủy hệ thống. Kiểu tấn công BufferOverflow là một ví dụ cho cách phá hủy.
• Tấn công vào DISKS
Một kiểu tấn công cổ điển là làm đầy đĩa cứng. Đĩa cứng có thể bị tràn và
không thể được sử dụng nữa.
2.2. CÁC KỸ THUẬT TẤN CÔNG
2.2.1. Khái niệm TCP bắt tay ba chiều
Đầu tiên, để tìm hiểu phương pháp tấn công DoS , luận văn sẽ trình bày cơ
chế làm việc “tcp bắt tay ba chiều”.
Gói dữ liệu TCP chứa flag bits (cờ) để mô tả nội dung và mục đích của gói dữ liệu .
Ví dụ 1-1:
• Gói dữ liệu TCP với cờ SYN (synchoronize) dùng để bắt đầu 1 kết nối
• ACK (acknowledgement)
• FIN (finish) dùng để cắt 1 kết nối
Cách hoạt động của gói TCP:
Hình 2.1. Cơ chế thiết lập kết nối trước khi truyền số liệu
SVTH: Nguyễn Hữu Nguyên Tâm 23
Nghiên cứu và xây dựng mô hình phòng chống tấn công từ chối dịch vụ ứng dụng Snort
Buớc 1: Máy con gửi gói tin SYN yêu cầu kết nối
Bước 2: Nếu máy chủ chấp nhận kết nối, máy chủ sẽ gửi gói tin SYN/ACK Server
bắt buộc phải gửi thông báo lại bởi vì TCP là chuẩn tin cậy nên nếu máy con không
nhận được thông báo thì sẽ nghĩ rằng packet đã bị lạc và gửi lại một packet mới.
Bước 3: Máy con gửi hồi đáp bằng gói tin ACK Báo cho máy chủ biết rằng máy con
đã nhận được SYN/ACK packet và lúc này kết nối đã được thiết lập.
2.2.2. Lợi dụng TCP thực hiện phương pháp SYN flood truyền thống
Hình 2.2. Tấn công DoS truyền thống
Như đã đề cập về vấn đề thiết lập kết nối trong phần trên, bất cứ 1 gói tin
SYN, máy chủ cũng phải để 1 phần tài nguyên của hệ thống như bộ nhớ đệm để
nhận và truyền dữ liệu cho đường truyền đó. Tuy nhiên, tài nguyên của hệ thống là
có hạn và hacker sẽ tìm mọi cách để hệ thống tràn qua giới hạn đó.
Nếu máy chủ sau khi gửi trả một gói tin SYN/ACK để thông báo chấp nhận
kết nối cho máy yêu cầu nhưng nếu địa chỉ IP của máy yêu cầu này là giả mạo thì
gói tin không thể đến được đích, nên máy chủ vẫn phải dành tài nguyên cho yêu cầu
đó. Sau một thời gian không nhận được phản hồi từ máy khách, máy chủ lại tiếp tục
gửi một gói tin SYN/ACK để xác nhận lần nữa và cứ như vậy, kết nối vẫn tiếp tục
mở.
Nếu như hacker gửi nhiều gói tin SYN đến máy chủ đến khi máy chủ không
thể tiếp nhận thêm 1 kết nối nào nữa thì lúc này hệ thống đã bị phá vỡ.
SVTH: Nguyễn Hữu Nguyên Tâm 24
Nghiên cứu và xây dựng mô hình phòng chống tấn công từ chối dịch vụ ứng dụng Snort
Kết luận: Chỉ với một đường truyền băng thông nhỏ, hacker đã có thể phá vỡ
một hệ thống. Thêm vào đó, địa chỉ IP của hacker có thể được sửa đổi nên việc xác
định thủ phạm là một vấn đề hết sức khó khăn.
2.2.3. Tấn công vào băng thông
• Kiểu tấn công thứ 1
Hacker hoàn toàn có khả năng làm ngập hệ thống vì băng thông của hacker
lớn hơn băng thông của máy đích. Kiểu tấn công này không bị hạn chế bởi tốc độ
truyền mạng.
• Kiểu tấn công thứ 2
Kiểu tấn công này được sử dụng khi đường truyền mạng của hacker là quá
thấp so với đường truyền của máy đích.
Không giống như kiểu tấn công DoS truyền thống, kiểu tấn công vào băng
thông lớn hơn sẽ lợi dụng những gói tin từ những hệ thống khác nhau cùng một lúc
tiến đến hệ thống đích khiến cho đường truyền của hệ thống đích không còn khả
năng đáp ứng, máy chủ không còn khả năng nhận một gói tin nào nữa.
Hình 2.3. Kiểu tấn công DoS vào băng thông
SVTH: Nguyễn Hữu Nguyên Tâm 25