Nếu máy tính của bạn không có dữ liệu quan trọng thì bạn cũng đừng nghĩ rằng nó không cần được bảo vệ, Tin tặc có thể đột nhập và sử dụng nó làm bàn đạp cho các cuộc tấn công khác, lúc đ
Trang 1LỜI CẢM ƠN
Em xin gửi lời cảm ơn chân thành nhất tới ThS.Nguyễn Thanh Sơn,người thầy đã hướng dẫn em trong quá trình nghiên cứu về giao thức trao đổikhóa Internet Key Exchange(IKE) và cho em những định hướng nghiêncứu,giúp đỡ em về những kiến thức liên quan tới mật mã
Em cũng xin tỏ lòng biết ơn sâu sắc tới thầy cô, bạn bè cùng khóa đãgiúp đỡ em học tập và rèn luyện trong suốt những năm học vừa qua
Em xin cảm ơn gia đình và bạn bè, những người luôn khuyến khích vàtạo mọi điều kiện hỗ trợ tốt nhất cho em trong mọi hoàn cảnh
Em xin chân thành cảm ơn trường Học viện Kỹ thuật Mật Mã đã cho em mộtmôi trường học tập lành mạnh và vững chắc, tạo cho em những điều kiện tốtnhất trong quá trình học tập và làm đồ án này
Do thời gian hoàn thành đồ án có hạn cho nên em không tránh khỏinhững khiếm khuyết, em rất mong có được những góp ý và giúp đỡ của cácthầy cô giáo để em có thể tiếp tục đồ án này ở mức ứng dụng cao hơn trongtương lai
Em xin chân thành cảm ơn!
Hà Nội, tháng 5 năm 2011
Sinh viên thực hiện
Lê Thị Thanh
Trang 2MỤC LỤC
LỜI CẢM ƠN 1
MỤC LỤC 2
DANH MỤC TỪ VIẾT TẮT 3
DANH MỤC HÌNH VẼ VÀ BẢNG 5
KÍ HIỆU 7
LỜI NÓI ĐẦU 8
Chương 1 TỔNG QUAN VỀ AN TOÀN BẢO MẬT THÔNG TIN TRÊN MẠNG 10
1.1 Mở đầu 10
1.2 Chúng ta cần bảo vệ những gì ? 12
1.3 Nguy cơ ảnh hưởng đến an toàn mạng 12
1.3.1 Các hình thức tấn công trên mạng 12
1.3.2 Các kỹ thuật tấn công trên mạng 13
1.4 Một số kiểu tấn công điển hình 18
1.4.1 Định nghĩa về tấn công từ chối dich vụ-Denial Of Service (DoS) 18 1.4.2 Các dạng tấn công DoS 19
1.4.3 Các cách phòng chống tấn công DoS 23
1.4.4 Tấn công từ chối dịch vụ phân tán-Distributed Denial Of Service (DDoS) 24
1.4.5 Phân loại tấn công DDoS 28
1.4.6 Một số kỹ thuật phòng chống tấn công từ chối dịch vụ phân tán(DDoS) 34
Chương 2 GIAO THỨC TRAO ĐỔI KHÓA IKE (Internet Key Exchange) 37 2.1 Giới thiệu về IKE 37
2.1.1 Lịch sử 37
2.1.2 Giao thức trao đổi khóa-Internet Key Exchange (IKE) 38
Những ưu điểm chính của IKE 40
IKE có các đặc trưng sau 40
2.1.3 Giao thức quản trị khóa và liên kết an toàn Internet – Internet Security Association and Key Management Protocol(ISAKMP) 41
2.1.3.1 Trao đổi cơ sở(Base Exchanges) 42
2.1.3.2 Bảo vệ trao đổi tính danh(Identity Protection Exchange) 42
2.1.3.4 Trao đổi linh hoạt(Aggressive Exchange) 42
2.1.3.5 Trao đổi thông tin(Informational Exchange) 42
2.2 Các pha trao đổi của IKE(IKE Phases) 43
2.2.1 Giai đoạn I của IKE(Pha 1) 43
2.2.2 Giai đoạn II của IKE(Pha 2) 46
2.3 Các chế độ hoạt động trong IKE(IKE Modes) 47
2.3.1 Chế độ chính-Main mode 47
2.3.2 Chế độ linh hoạt-Aggressive Mode 49
Trang 32.3.3 Chế độ nhanh-Quick Mode 50
2.3.4 Chế độ nhóm-New Group Mode 51
2.4 Các phương pháp xác thực trong IKE 51
2.4.1 Xác thực với chữ ký 51
2.4.2 Xác thực với mã hóa khóa công khai(Authenticated With Public Key Encryption) 53
2.4.3 Xác thực với chế độ sửa đổi của mã hóa khóa công khai 54
(Authenticated With a Revised Mode of Public Key Encryption) 54
2.4.4 Xác thực với khóa trước khi chia sẻ- tiền chia sẻ(Pre-Shared Key) (Authenticated With a Pre-Shared Key) 57
2.5 Oakley Groups 58
2.6.1 IKE có thể bảo vệ khỏi các tấn công 58
2.6.1.1 Tấn công người ở giữa(Man-In-The-Middle) 58
2.6.1.2 Từ chối dịch vụ 58
2.6.1.3 Replay / Reflection 59
2.6.1.4 Chặn cướp kết nối(Hijacking) 59
2.6.2 Chuyển tiếp an toàn-Perfect Forward Secrecy 59
2.7 IKE phiên bản 2-IKEv2 60
2.8 Triển khai 61
Chương 3 ỨNG DỤNG IKE TRONG BẢO MẬT THÔNG TIN MẠNG 63
3.1 Ứng dụng IKE 63
Lợi ích 63
3.2.1 IPsec(IPsec cho IP-VPNs) 64
3.2.1.1 Khái niệm về Ipsec 64
3.2.1.2 Đóng gói thông tin của IPSec 67
3.2.1.3 Kết hợp an ninh SA và giao thức trao đổi khóa IKE 83
a Kết hợp an ninh SA 84
b Giao thức trao đổi khóa IKE 87
3.2.2 FreeS/WAN 95
KẾT LUẬN 100
TÀI LIỆU THAM KHẢO 102
Phụ lục 1: Diffie-Hellman 103
Phụ lục 2: Cấu hình giao thức IKE trong Windows 105
Trang 4DANH MỤC TỪ VIẾT TẮT
API Application Programming
Interface
Giao diện lập trình ứng dụng
DOI Domain of Interpretation Miền của Giải thích
GPL GNU Public License Giấy phép Công cộng GNUIKE Internet Key Exchange Giao thức trao đổi khóa
IP Internet Protocol Giao thức Internet
IPsec Internet Security Protocol Giao thức Internet Security
ISAKMP Internet Security Association
and Key Management Protocol
Giao thức quản trị khóa và liên kết an toàn Internet
MODP Modular exponentiation group Modular nhóm lũy thừa
PFS Perfect Forward Secrecy Chuyển tiếp an toàn
PKI Public Key Infrastructure Cơ sở hạ tầng khóa công khai
SA Security Association Liên kết an toàn
TLS Transport Layer Security Giao thức bảo mật trên đường
truyền
UDP User Datagram Protocol Giao thức truyền dữ liệu không
qua xác thựcIETF Internet Engineering Task Force
AH Authentication Header Giao thức xác thực tiêu đề
ESP Encapsulating Security Payload Giao thức đóng gói tập tin an
toàn
KE Key exchange Tải trọng trao đổi khóa
Trang 5CA Certification Authority Cơ quan cấp giấy chứng nhận
SHA Secure Hash Algorithm Là một thuật toán băm được sử
dụng để xác thực dữ liệu gói
MD5 Message Digest 5 Là một thuật toán băm được sử
dụng để xác thực dữ liệu gói
DES Data Encryption Standard Là thuật toán mã hóa được
dùng để mã hóa dữ liệu gói.VPN Virtual Private Network Mạng riêng ảo
DoS Denial Of Service (Tấn công)Từ chối dịch vụACL Access Control List Danh sách điều khiển truy cập
TCP Transmission Control Protocol Giao thức điều khiển truyền
SPI Serial Peripheral Interface Giao diện nối tiếp ngoại vi
SCTP Stream Control Transmission
Trang 6Hình 1.5: Mô hình Agent-Handler
Hình 1.6: Mô hình IRC – Based
Hình 1.7: Sơ đồ mô tả sự phân loại các kiểu tấn công DdoS
Hình 1.8: Amplification Attack
Hình 1.9: Quá trình bắt tay 3 bước
Hình 1.10: Gói tin SYN với địa chỉ giả mạo
Hình 2.1: Các pha trao đổi của IKE
Hình 2-9 : New Group Mode
Hình 2-10: Sự tích hợp của IKE để hệ điều hành
Bảng 3.1: Các RFC đưa ra có liên quan đến IPSec
Hình3-1 : Gói tin IP ở kiểu Transport
Hình3-2: Gói tin IP ở kiểu Tunnel
Hình3-3: Thiết bị mạng thực hiện IPSec kiểu Tunnel
Hình3-4: Cấu trúc tiêu đề AH cho IPSec Datagram
Hình 3.5: Khuôn dạng IPv4 trước và sau khi xử lý AH ở kiểu TransportHình 3.6: Khuôn dạng IPv6 trước và sau khi xử lý AH ở kiểu Traport
Hình 3.7: Khuôn dạng gói tin đã xử lý AH ở kiểu Tunnel
Hình 3.8: Xử lý đóng gói ESP
Hình 3.9: Khuôn dạng gói ESP
Hình 3.10: Khuôn dạng IPv4 trước và sau khi xử lý ESP ở kiểu TransportHình 3.11: Khuôn dạng IPv6 trước và sau khi xử lý ESP ở kiểu TransportHình 3.12: Khuôn dạng gói tin đã xử lý ESP ở kiểu Tunnel
Hình 3.13: Kết hợp SA kiểu Tunnel khi 2 điểm cuối trùng nhau
Hình 3.14: Kết hợp SA kiểu Tunnel khi một điểm cuối trùng nhau
Hình 3.15: Kết hợp SA kiểu Tunnel khi không có điểm cuối trùng nhau
Trang 7Hình 3.16: Các chế độ chính, chế độ tấn công, chế độ nhanh của IKE
Hình 3.17: Danh sách bí mật ACL
Bảng 3.2: Kết quả khi kết hợp lệnh permit và deny
Hình 3.18: IKE pha thứ nhất sử dụng chế độ chính (Main Mode)
Hình 3.19: Các tập chuyển đổi IPSec
Bảng pl-a: Các bước thực hiện để trao đổi khóa Diffie Hellman
Nonce : tải trong nonce
KE : KE là trọng tải trao đổi khóa trong đó có các thông tin trao đổicông khai trong một trao đổi Diffie-Hellman Không có mã hóa cụ được sửdụng cho dữ liệu của một tải trọng KE
IDii : Định nghĩa tải trọng, khởi tạo giai đoạn I
IDci : Định nghĩa tải trọng, khởi tạo giai đoạn II
IDir : Định nghĩa tải trọng, đáp trả giai đoạn I
IDcr : Định nghĩa tải trọng, đáp trả giai đoạn II
Auth : Một cơ chế xác thực chung chung, chẳng hạn như băm hoặc tảitrọng chữ ký
SIG : là tải trọng chữ ký Các dữ liệu đăng nhập được trao đổi cụ thể.Cert: là giấy chứng nhận
CERTREQ : Certificate Request
HASH : tải trọng hàm băm
PRF (key, msg) là chứcnăng khóa giả ngẫunhiên - thường là
mộthàm băm có khóa - được sử dụng để tạo ra một sản lượng tính quyếtđịnh xuất hiện giả ngẫu nhiên
SKEYID là một chuỗi dẫn xuất từ vật liệu bí mật
Trang 8SKEYID_e là vật liệu được sử dụng bởi keying ISAKMP SA để bảo
vệ các bí mật của các thông điệp của nó
SKEYID_a là vật liệu được sử dụng bởi keying ISAKMP SA để xác thực thông điệp của nó
SKEYID_d là vật liệu keying sử dụng để lấy chìa khóa cho các security
associations phi ISAKMP
<x> y chỉ ra rằng "x" được mã hóa với khóa "y"
-> nghĩa là "khởi xướng để đáp trả" truyền thông (yêu cầu)
<- nghĩa là "đáp trả cho người khởi" truyền thông (trả lời)
| nghĩa nối thông tin
[x] chỉ ra rằng x là tuỳ chọn
Trang 9LỜI NÓI ĐẦU
Ngày nay, Internet đã phát triển mạnh về mặt mô hình cho đến côngnghệ, đáp ứng các nhu cầu của người sử dụng Internet đã được thiết kế để kếtnối nhiều mạng khác nhau và cho phép thông tin chuyển đến người sử dụngmột cách thuận tiện Điều mà kỹ thuật còn tiếp tục phải giải quyết là năng lựctruyền thông của các mạng viễn thông công cộng Với Internet, những dịch vụnhư giáo dục từ xa, mua hàng trực tuyến, tư vấn y tế, và rất nhiều điều khác
cỡ quốc gia Chính vì vậy đảm bảo an toàn thông tin là là một nhu cầu đượcđặt lên hàng đầu Nhu cầu này không chỉ có ở các bộ máy an ninh, quốcphòng, quản lý nhà nước mà đã trở thành cấp thiết trong các hoạt động kinh tế
xã hội: tài chính, ngân hàng, thương mại…thậm chí trong cả các hoạt độngthường ngày như thư điện tử, thanh toán thẻ tín dụng…Do đó mà những nămgần đây công nghệ mật mã và an toàn thông tin có những bước tiến vượt bậc
và đang được quan tâm nghiên cứu
Trong mã hóa hiện đại người ta luôn giả thiết rằng phương pháp mãhóa thông tin là không thể giữ bí mật, chúng sẽ được công khai, còn việc thựchiện thì cho phép thay đổi theo một tham số do từng người sử dụng tự ấnđịnh(mỗi giá trị của tham số sẽ xác định một cách mã hóa riêng), việc lập mã
và giải mã chỉ được thực hiện khi biết tham số đó Tham số như vậy được gọi
là “khóa”-key và đó là thông tin duy nhất cần giữ bí mật Chốt tính bảo mật làkhóa mật mã(tham số khóa) chứ không phải thuật toán Vì vậy nên an toàntrong trao đổi khóa là vô cùng quan trọng Một giao thức hiện nay đang được
sử dụng trong nhiều ứng dụng bảo mật đó là giao thức trao đổi khóa
Trang 10IKE(Internet Key Exchange) Internet Key Exchange giúp các bên giao tiếpcác tham số bảo mật và xác nhận khóa
IKE được sử dụng trong nhiều ứng dụng bảo mật hiện nay nhất là trong
công nghệ VPN Vì vậy em đã chọn đề tài “Nghiên cứu cơ chế hoạt động của giao thức trao đổi khóa IKE(Internet Key Exchange) và ứng dụng trong bảo mật thông tin mạng” làm đồ án tốt nghiệp Đồ án bao gồm 3
chương :
Chương 1 : Tổng quan về an toàn, bảo mật thông tin trên mạng máy tính.
Chương này nêu lên một số vấn đề về mất an toàn thông tin, các nguy cơ ảnhhưởng, các hình thức tấn công trên mạng và nêu rõ một số tấn công điển hình
mà máy tính tham gia internet hay bị tấn công
Chương 2: Giao thức trao đổi khóa IKE Chương 2 giới thiệu về IKE, lịch sử,
cơ chế hoạt động, các hàm, các phương pháp xác thức trong giao thức mộtcách cụ thể
Chương 3 : Ứng dụng IKE trong bảo mật thông tin trên mạng Chương 3 nêu
lên ứng dụng của IKE và tìm hiểu một số sản phẩm an toàn bảo mật có sửdụng IKE, trong đó tập trung vào giao thức IPsec ứng dụng trong VPNs
Em xin được gửi lời cảm ơn đến các thầy cô giáo trong trường, đặc biệt
là giáo viên hướng dẫn trực tiếp thầy giáo ThS Nguyễn Thanh Sơn-công táctại khoa Mật Mã, Học Viện Kỹ Thuật Mật Mã đã tận tình hướng dẫn và giúp
đỡ em trong suốt quá trình làm đồ án
Do thời gian có hạn và trình độ hạn chế nên đồ án của em không tránhkhỏi thiếu sót Em rất mong nhận được sự góp ý của các thầy cô và các bạn đểhoàn hiện hơn
Em xin chân thành cảm ơn !
Hà Nội, tháng 5 năm 2011
Sinh viên : Lê Thị Thanh
Trang 11Chương 1 TỔNG QUAN VỀ AN TOÀN BẢO MẬT THÔNG
TIN TRÊN MẠNG
1.1 Mở đầu
Mục tiêu của việc chúng ta nối mạng là để nhiều người có thể dùngchung tài nguyên từ những vị trí địa lý khác nhau, chính vì thế mà các tàinguyên sẽ rất phân tán, dẫn đến một điều tất yếu là dễ bị xâm phạm gây mấtmát dữ liệu, thông tin Càng giao thiệp rộng thì càng dễ bị tấn công, đó là quyluật Mọi nguy cơ trên mạng đều có thể nguy hiểm: Một lỗi nhỏ của các hệthống sẽ được lợi dụng với tần xuất cao, lỗi lớn thì thiệt hại lớn ngay lập tức,tóm lại trên một quy mô rộng lớn như Internet thì mọi khe hở hay lỗi hệ thốngđều có nguy cơ gây ra thiệt hại như nhau
Như vậy số vụ tấn công ngày càng tăng, mặt khác các kỹ thuật ngàycàng mới Điều này cũng dễ hiểu, một vấn đề luôn luôn có hai mặt đối lập.Công nghệ Thông tin, mạng Internet phát triển như vũ bão thì tất yếu cũngkéo theo nạn trộm cắp, tấn công, phá hoại thông tin trên mạng Internet ngàynay không còn nghi ngờ gì nữa, đã trở thành mạng dữ liệu công cộng làm choviệc liên lạc cá nhân, công việc trở nên thuận tiện hơn nhiều Khối lượng traođổi qua Internet được tăng theo số mũ mỗi ngày Ngày càng nhiều các công
ty, các chi nhánh ngân hàng thông qua mạng Internet để liên lạc với nhau
Rõ ràng rằng mạng Internet đã làm thay đổi cuộc sống của con người,làm thay đổi công việc kinh doanh làm cho nó trở nên dễ dàng hơn Nhưngđồng thời với lợi ích to lớn của nó, mạng Internet cùng với các công nghệ liênquan đã mở ra một cánh cửa làm tăng số lượng các vụ tấn công vào nhữngcông ty , cơ quan và cả những cá nhân, nơi lưu giữ những dữ liệu nhạy cảmnhư bí mật Quốc gia, số liệu tài chính, số liệu cá nhân Hậu quả của các cuộctấn công này có thể chỉ là phiền phức nhỏ, nhưng cũng có thể làm suy yếuhoàn toàn, các dữ liệu quan trọng bị xóa, sự riêng tư bị xâm phạm, và chỉ sauvài ngày, thậm chí vài giờ sau, toàn bộ hệ thống có thể bị tê liệt hoàn toàn
Quả thực có thể nói rằng, không đâu lại mất an toàn như trên Internet,
Trang 12bạn có thể hình dung như thế này, Internet giúp cho bạn "nói một câu" ở nơinày thì ngay lập tức ở một nới khác cách đó hàng chục ngàn cây số có thể
"nghe" được (nghe và nói ở đây chính là việc trao đổi thông tin giữa các máytính nối mạng) Hay nói cách khác là, có thể ví những người đang nối mạngInternet giống như những người đang cùng ngồi với nhau trong một phònghọp, chỉ có khác một điều là họ không nhìn thấy nhau bằng xương, bằng thịt
mà thôi Điều này có nghĩa là mỗi hành động của bạn sẽ có thể "đập vào mắt"của hàng triệu người khác, điều này là sự thực xét trên khía cạnh kỹ thuậtchuyên môn, nhưng bạn, tôi, chúng ta không hề nhìn thấy gì cả bằng mắtthường, những điều đó chỉ diễn ra trong một thế giới ảo của 0 và 1, chỉ bằngnhững công cụ kỹ thuật chúng ta mới có thể nhìn thấy được
Có lẽ nếu có cặp kính "số" thì tôi chắc rằng đa số chúng ta sẽ giật mìnhkhi nhìn thấy một sự thật, Internet quả thực quá mất an toàn! Bạn sẽ thấy vô
số những người "đi ra khỏi nhà mà không khoá cửa, sổ tiết kiệm để trên bậucửa sổ và chưa biết chừng sẽ gặp khối người đại loại như đi chân đất tới dựnhững bữa tiệc quan trọng " những người đó có cả tôi, cả bạn, chúng ta cónhìn thấy gì đâu? và tưởng rằng người khác cũng không thấy gì cả Tuy vậy,không thể vì những mặt trái kể trên mà chúng ta quay lưng lại với Internet,những lợi ích mà nó đem lại còn to lớn hơn nhiều, ngày nay không có Internetcon người sẽ khó mà phát triển hơn được
1.2 Chúng ta cần bảo vệ những gì ?
a Dữ liệu
Đối với dữ liệu chúng ta phải lưu ý những yếu tố sau:
Tính bảo mật: Chỉ người có quyền mới được truy nhập
Tính toàn vẹn: Không bị sửa đổi, bị hỏng
Tính sẵn sàng: Sẵn sàng bất cứ lúc nào
b Tài nguyên:
Tài nguyên máy có thể bị lợi dụng bởi Tin tặc Nếu máy tính của bạn không có dữ liệu quan trọng thì bạn cũng đừng nghĩ rằng nó không cần được bảo vệ, Tin tặc có thể đột nhập và sử dụng nó làm bàn đạp cho các cuộc tấn công khác, lúc đó thì bạn sẽ lãnh trách nhiệm là thủ phạm!
Trang 13a Ngăn chặn thông tin
Tài nguyên thông tin bị phá hủy, không sãn sàng phục vụ hoặc không sử dụngđược Đây là hình thức tấn công làm mất khả năng sẵn sàng phục vụ
VD: Hủy đĩa cứng, cắt đứt đường truyền tin, vô hiệu hóa hệ thống quản lýtệp
c Sửa đổi thông tin
Kẻ tấn công truy nhập, chỉnh sửa thông tin trên mạng, là hình thức tấn cônglên tính toàn vẹn của thông tin Nó có thể thay đổi giá trị trong tập dữ liệu,sửa đổi một số chương trình để nó vận hành khác đi và sửa đổi nộ dung cácthông báo truyền trên mạng
d Chèn thông tin giả
Kẻ tấn công chèn các thông tin và dữ liệu giả và hệ thống, là kiểu tấn côngvào tính xác thực của thông tin Có thể là chèn các thông báo giả mạo vàomạng hoặc thêm các bảng ghi vào tệp
Chia làm hai lớp cơ bản là: chủ động và bị động
Bị động - Chặn bắt thông tin như nghe trộm và quan sát truyền tinMục đích: Biết được thông tin truyền trên mạng
Chia làm 2 loại: khám phá nội dung thông báo và phân tích luồng thôngtin
Trang 14 Chủ động-Là các tấn công sửa đổi luồng dữ liệu tạo ra luồng số liệugiả.
Có thể chia làm 4 loại: Đóng giả
Dùng lại(Replay)Sửa đổi thông báo
Từ chối dịch vụ
1.3.2 Các kỹ thuật tấn công trên mạng
Có những kiểu tấn công nào ?
Có rất nhiều cách tấn công đã biết cũng như chưa biết, tuy nhiên hiện nay có thể chia làm 4 loại chính:
• Dùng chương trình để giải mã các file chứa mật khẩu trên máy để tìm
ra mật khẩu, thường những mật khẩu đặt quá ngắn sẽ bị phát hiện bằng cáchnày Bạn nên đặt mật khẩu của mình tối thiểu là 6 ký tự, càng dài càng tốt
• Dùng lỗi của chương trình ứng dụng hay hệ điều hành để làm cho cácứng dụng hay hệ điều hành đó bị tê liệt Điều này cũng giống như gót chân a-sin của con người vậy, rõ ràng đó có thể coi là điểm yếu của cơ thể con người,nếu bị lợi dụng nó sẽ gây ra những tác hại khôn lường Phần mềm cũng thế,cũng có những điểm yếu có thể là vô tình hay hữu ý, nơi Tin tặc có thể lợidụng để tấn công
b Nghe trộm
Không dùng máy trực tiếp mà thông qua các dịch vụ mạng, bằng cách này Tin tặc có thể nghe được những thông tin được truyền qua lại trên mạng, như phần giới thiệu đã đề cập, nếu có cặp kính "số" thì bạn sẽ thấy việc nghe
Trang 15trộm như thế quả là rất dễ dàng Hãy hạn chế "nói" những gì quan trọng đối với bạn trên mạng.
Nghe trộm password Cũng với cách như trên, Tin tặc có thể lấy đượcmật khẩu của người sử dụng, sau đó chúng truy nhập một cách chính quy vào
hệ thống, nó cũng giống như là lấy được chìa khoá, sau đó đàng hoàng mởcửa và khuân đồ ra
c Giả mạo địa chỉ
Thường thì các mạng máy tính nối với Internet đều được bảo vệ bởiBức tường lửa, Bức tường lửa có thể coi như cái cửa duy nhất mà người đivào nhà hay đi ra khỏi cũng đều bắt buộc phải qua đó (như cửa khẩu ở sânbay) Như vậy những người trong nhà (trong mạng) sẽ có sự tin tưởng lẫnnhau, tức là được phép dùng tất cả mọi thứ trong nhà (dùng mọi dịch vụ trongmạng) Còn những người bên ngoài sẽ bị hạn chế tối đa việc sử dụng đồ đạctrong nhà đó Việc này làm được nhờ Bức tường lửa
Giả mạo địa chỉ là người bên ngoài (máy tính của tin tặc) sẽ giả mạomình là một người ở trong nhà (tự đặt địa chỉ IP của mình trùng với một địachỉ nào đó ở mạng bên trong) Nếu làm được điều đó thì nó sẽ được đối xửnhư một người (máy) bên trong, tức là được làm mọi thứ, để từ đó tấn cống,lấy trộm, phá huỷ thông tin
Kiểu mò mẫm (blind spoofing)
Để tìm hiểu cách thức truyền tải dữ liệu trong mạng, hacker sẽ gửinhiều gói dữ liệu đến một máy nào đó để nhận lại những thông điệp xác nhận.Bằng cách phân tích những thông điệp này, chúng có thể biết được quy tắcgán chỉ số thứ tự cho từng gói dữ liệu của hệ thống mạng Kiểu tấn công nàyhiện nay ít được áp dụng vì các hệ điều hành mới ứng dụng phương pháp gánchỉ số thứ tự một cách ngẫu nhiên, khiến chúng khó có thể lần ra
Kiểu ẩn mình (nonblind spoofing)
Trong kiểu tấn công này, hacker tìm cách ẩn mình trong cùng mạngphụ với máy tính sẽ bị tấn công Từ đó, chúng có thể nắm được toàn bộ chutrình gửi tin và trả lời tín hiệu giữa máy bị tấn công với các máy tính kháctrong mạng Bằng cách đó, hacker biết đượccác chỉ số thứ tự của gói dữ liệu
Trang 16và có thể chiếm quyền điều khiển các phiene trao đổi thông tin, vượt qua chutrình xác nhận đã được lập trước đó.
Chèn giữa các máy tính (Man in the Middle)
Trong kiểu tấn công này, khi 2 máy tính đang truyền tin với nhau mộtcách bình thường, hacker sẽ chặn các gói dữ liệu gửi đi từ 2 máy đó, thay thếbằng những gói dữ liệu khác và gửi chúng đi Khi đó, 2 máy tính bị giả mạođều không hay biết gì về việc dữ liệu của chúng bị thay đổi Kiểu tấn côngnày thường được dùng để lấy những thông tin bảo mật của máy tính
Tuy nhiên, đánh lừa IP cũng có một số ứng dụng hợp pháp Ví dụ:trong việc truy cập Internet vệ tinh, nhà cung cấp dịch vụ có thể can thiệp vàonhững giao thức để các gói dữ liệu có thể đến được nơi nhận nhanh chónghơn Việc này cũng có thể áp dụng trong mạng riêng ảo VPN để tránh sựchậm trễ trong việc xác nhận các kết nối
Cài đặt bộ lọc dữ liệu đi vào và đi ra khỏi hệ thống mạng
Cấu hình các bộ chuyển mạch và bộ định tuyến để loại trừ những gói
dữ liệu từ bên ngoài vào hệ thống mạng nhưng lại khai báo là có nguồn gốc từmột máy tính nằm trong hệ thống
Kích hoạt các quy trình mã hóa trong bộ định tuyến để những máy tính
đã được xác nhận nhưng nằm ngoài hệ thống mạng có thể liên lạc một cách
an toàn với các máy tính trong hệ thống
d Vô hiệu hoá các dịch vụ - từ chối dịch vụ
Làm tê liệt một số dịch vụ nào đó Thường cách tấn công này được gọi
là DoS (Denial of Service) hay "từ chối dịch vụ" Cách tấn công này lợi dụngmột số lỗi của phần mềm, Tin tặc ra lệnh cho máy tính của chúng đưa nhữngyêu cầu "dị dạng" tới những máy server trên mạng Với yêu cầu "dị dạng"như vậy các server tiếp nhận yêu cầu sẽ bị tê liệt Có thể ví như việc bọn Mẹmìn lừa trẻ con bằng những lời ngon ngọt, còn nạn nhân thì chưa đủ lớn để
Trang 17hiểu những thủ đoạn đó và tự nguyện đi theo chúng Nếu các cháu nhỏ đãđược người lớn chỉ cho biết những thủ đoạn đó thì chắc chúng sẽ được bảo
vệ, điều này cũng như việc dùng Bức tường lửa để bảo vệ mạng máy tính
Tấn công từ chối dịch vụ cũng có thể hoàn toàn là những yêu cầu hợplện Ví dụ như virus máy tính được cài đặt chức năng tấn công như đã nói tớitrong phần về virus, tại một thời điểm từ hàng triệu máy tính trên mạng, tất cảđồng thời yêu cầu một server phục vụ, ví dụ cùng vào trang web của NhàTrắng Những yêu cầu này là hoàn toàn hợp lệ, nhưng tại cùng một thời điểm
có quá nhiều yêu cầu như vậy, thì server không thể phục vụ được nữa và dẫnđến không thể tiếp nhận các yêu cầu tiếp theo -> từ chối dịch vụ
e Yếu tố con người
Kẻ tấn công giả vờ liên lạc với người quản trị mạng yêu cầu đổi mậtkhẩu của User nào đó, nếu người quản trị mạng làm theo thì vô tình đã tiếptay cho tin tặc (vì không nhìn thấy mặt, nên anh ta cứ tưởng đấy chính làngười sử dụng hợp pháp) Vì vậy nếu bạn là quản trị mạng phải tuyệt đối cẩnthận, không nhận các yêu cầu qua điện thoại
Tương tự kẻ tấn công có thể yêu cầu quản trị mạng thay đổi cấu hình
hệ thống để tiếp đó chúng có thể tiến hành được các cuộc tấn công
Máy móc không thể chống được kiểu tấn công này, chỉ có sự cảnh giác
và biện pháp giáo dục mới có thể giải quyết được
Như vậy yếu tố con người luôn là điểm yếu nhất trong các hệ thốngbảo mật
Những kẻ tấn công là ai ? Hacker hay Tin tặc
Có rất nhiều kẻ tấn công trên mạng Internet, khó mà phân loại đầy đủđược, tuy nhiên có thể chia ra như sau:
Người qua đường
• Những kẻ buồn chán với công việc hàng ngày, muốn giải trí bằng cáchđột nhập vào các hệ thống mạng
• Chúng thích thú khi đột nhập được vào máy tính của người khác màkhông được phép
Trang 18• Bọn này không chủ định phá hoại, nhưng những hành vi xâm nhập vàviệc chúng xoá dấu vết khi rút lui có thể vô tình làm cho hệ thống bị trụctrặc
Kẻ phá hoại
• Chúng chủ định phá hoại hệ thống, vui thú khi phá hoại người khác
• Gây ra những tác hại lớn, rất may trên thế giới không nhiều kẻ như thế
1.4 Một số kiểu tấn công điển hình
DoS và DDoS là một trong những dạng tấn công nguy hiểm nhất đốivới một hệ thống mạng.Vì vậy trong bài em chỉ nêu về các dạng tấn công dos
và ddos
Trang 191.4.1 Định nghĩa về tấn công từ chối dich vụ-Denial Of Service (DoS)
Tấn công từ chối dịch vụ (DoS) là một kiểu tấn công mà một người làmcho một hệ thống không thể sử dụng, hoặc làm cho hệ thống đó chậm đi mộtcách đáng kể với người dùng bình thường, bằng cách làm quá tải tài nguyêncủa hệ thống
Nếu kẻ tấn công không có khả năng thâm nhập được vào hệ thống, thìchúng cố gắng tìm cách làm cho hệ thống đó sụp đổ và không có khả năngphục vụ người dùng bình thường đó là tấn công Denial of Service (DoS)
Mặc dù tấn công DoS không có khả năng truy cập vào dữ liệu thực của
hệ thống nhưng nó có thể làm gián đoạn các dịch vụ mà hệ thống đó cungcấp Như định nghĩa trên DoS khi tấn công vào một hệ thống sẽ khai thácnhững cái yếu nhất của hệ thống để tấn công, những mục đích của tấn côngDoS:
a Các mục đích của tấn công DoS
- Cố gắng chiếm băng thông mạng và làm hệ thống mạng bị ngập (flood), khi
đó hệ thống mạng sẽ không có khả năng đáp ứng những dịch vụ khác chongười dùng bình thường
- Cố gắng làm ngắt kết nối giữa hai máy, và ngăn chặn quá trình truy cập vàodịch vụ
- Cố gắng ngăn chặn những người dùng cụ thể vào một dịch vụ nào đó
- Cố gắng ngăn chặn các dịch vụ không cho người khác có khả năng truy cậpvào
- Khi tấn công DoS xảy ra người dùng có cảm giác khi truy cập vào dịch vụ
đó như bị:
+ Disable Network - Tắt mạng+ Disable Organization - Tổ chức không hoạt động+ Financial Loss – Tài chính bị mất
b Mục tiêu mà kẻ tấn công thường sử dụng tấn công DoS
Như chúng ta biết ở bên trên tấn công DoS xảy ra khi kẻ tấn công sử dụng hếttài nguyên của hệ thống và hệ thống không thể đáp ứng cho người dùng bìnhthường được vậy các tài nguyên chúng thường sử dụng để tấn công là gì:
- Tạo ra sự khan hiếm, những giới hạn và không đổi mới tài nguyên
Trang 20- Băng thông của hệ thống mạng (Network Bandwidth), bộ nhớ, ổ đĩa, vàCPU Time hay cấu trúc dữ liệu đều là mục tiêu của tấn công DoS.
- Tấn công vào hệ thống khác phục vụ cho mạng máy tính như: hệ thống điềuhoà, hệ thống điện, hệt hống làm mát và nhiều tài nguyên khác của doanhnghiệp Bạn thử tưởng tượng khi nguồn điện vào máy chủ web bị ngắt thìngười dùng có thể truy cập vào máy chủ đó không
- Phá hoại hoặc thay đổi các thông tin cấu hình
- Phá hoại tầng vật lý hoặc các thiết bị mạng như nguồn điện, điều hoà…
Chúng ta cần lưu ý là : Khi ping tới một địa chỉ là quá trình hai chiều – Khi
máy A ping tới máy B máy B reply lại hoàn tất quá trình Khi tôi ping tới địachỉ Broadcast của mạng nào đó thì toàn bộ các máy tính trong mạng đó sẽReply lại tôi Nhưng giờ tôi thay đổi địa chỉ nguồn, thay địa chỉ nguồn là máy
C và tôi ping tới địa chỉ Broadcast của một mạng nào đó, thì toàn bộ các máytính trong mạng đó sẽ reply lại vào máy C chứ không phải tôi và đó là tấncông Smurf
- Kết quả đích tấn công sẽ phải chịu nhận một đợt Reply gói ICMP cực lớn vàlàm cho mạng bị dớt hoặc bị chậm lại không có khả năng đáp ứng các dịch vụkhác
- Quá trình này được khuyếch đại khi có luồng ping reply từ một mạng đượckết nối với nhau (mạng BOT)
- tấn công Fraggle, chúng sử dụng UDP echo và tương tự như tấn côngSmurf
Trang 21Hình 1.1: Tấn công Smurf
Hình hiển thị tấn công DoS - dạng tấn công Smurf sử dụng gói ICMP làmngập các giao tiếp khác
b Tấn công lỗi tràn bộ đệm-Buffer overflow.
- Buffer Overflow xảy ra tại bất kỳ thời điểm nào có chương trình ghi lượngthông tin lớn hơn dung lượng của bộ nhớ đệm trong bộ nhớ
- Kẻ tấn công có thể ghi đè lên dữ liệu và điều khiển chạy các chương trình vàđánh cắp quyền điều khiển của một số chương trình nhằm thực thi các đoạn
mã nguy hiểm
- Quá trình gửi một bức thư điện tử mà file đính kèm dài quá 256 ký tự có thể
sẽ xảy ra quá trình tràn bộ nhớ đệm
c Tấn công Ping of Death
- Kẻ tấn công gửi những gói tin IP lớn hơn số lương bytes cho phép của tin
IP là 65.536 bytes
- Quá trình chia nhỏ gói tin IP thành những phần nhỏ được thực hiện ở layerII
- Quá trình chia nhỏ có thể thực hiện với gói IP lớn hơn 65.536 bytes Nhưng
hệ điều hành không thể nhận biết được độ lớn của gói tin này và sẽ bị khởiđộng lại, hay đơn giản là sẽ bị gián đoạn giao tiếp
Trang 22- Để nhận biết kẻ tấn công gửi gói tin lớn hơn gói tin cho phép thì tương đối
dễ dàng
d Tấn công Teardrop
- Gói tin IP rất lớn khi đến Router sẽ bị chia nhỏ làm nhiều phần nhỏ
- Kẻ tấn công sử dụng sử dụng gói IP với các thông số rất khó hiểu để chia racác phần nhỏ (fragment)
- Nếu hệ điều hành nhận được các gói tin đã được chia nhỏ và không hiểuđược, hệ thống cố gắng build lại gói tin và điều đó chiếm một phần tàinguyên hệ thống, nếu quá trình đó liên tục xảy ra hệ thống không còn tàinguyên cho các ứng dụng khác, phục vụ các user khác
e Tấn công SYN
Hình 1.2: SYN attack
- Kẻ tấn công gửi các yêu cầu (request ảo) TCP SYN tới máy chủ bị tấn công
Để xử lý lượng gói tin SYN này hệ thống cần tốn một lượng bộ nhớ cho kếtnối
- Khi có rất nhiều gói SYN ảo tới máy chủ và chiếm hết các yêu cầu xử lý củamáy chủ Một người dùng bình thường kết nối tới máy chủ ban đầu thực hiện
Trang 23Request TCP SYN và lúc này máy chủ không còn khả năng đáp lại - kết nốikhông được thực hiện.
- Đây là kiểu tấn công mà kẻ tấn công lợi dụng quá trình giao tiếp của TCP
- Quá trình TCP Three-way handshake được thực hiện: Khi máy A muốn giaotiếp với máy B (1) máy A bắn ra một gói TCP SYN tới máy B – (2) máy Bkhi nhận được gói SYN từ A sẽ gửi lại máy A gói ACK đồng ý kết nối – (3)máy A gửi lại máy B gói ACK và bắt đầu các giao tiếp dữ liệu
- Máy A và máy B sẽ dữ kết nối ít nhất là 75 giây, sau đó lại thực hiện mộtquá trình TCP Three-way handshake lần nữa để thực hiện phiên kết nối tiếptheo để trao đổi dữ liệu
- Thật không may kẻ tấn công đã lợi dụng kẽ hở này để thực hiện hành vi tấncông nhằm sử dụng hết tài nguyên của hệ thống bằng cách giảm thời gian yêucầu Three-way handshake xuống rất nhỏ và không gửi lại gói ACK, cứ bắngói SYN ra liên tục trong một thời gian nhất định và không bao giờ trả lời lạigói SYN&ACK từ máy bị tấn công
- Với nguyên tắc chỉ chấp nhận gói SYN từ một máy tới hệ thống sau mỗi 75giây nếu địa chỉ IP nào vi phạm sẽ chuyển vào Rule deny access sẽ ngăn cảntấn công này
1.4.3 Các cách phòng chống tấn công DoS
Hậu quả mà DoS gây ra không chỉ tiêu tốn nhiều tiền bạc, và công sức
mà còn mất rất nhiều thời gian để khắc phục Vì vậy, hãy sử dụng các biệnpháp sau để phòng chống DoS:
Trang 24 Mô hình hệ thống cần phải được xây dựng hợp lý, tránh phụ thuộc lẫnnhau quá mức Bởi khi một bộ phận gặp sự cố sẽ làm ảnh hưởng tớitoàn bộ hệ thống.
Thiết lập mật khẩu mạnh (strong password) để bảo vệ các thiết bị mạng
và các nguồn tài nguyên quan trọng khác
Thiết lập các mức xác thực đối với người sử dụng cũng như các nguồntin trên mạng Đặc biệt, nên thiết lập chế độ xác thực khi cập nhật cácthông tin định tuyến giữa các router
Xây dựng hệ thống lọc thông tin trên router, firewall… và hệ thống bảo
vệ chống lại SYN flood
Chỉ kích hoạt các dịch vụ cần thiết, tạm thời vô hiệu hoá và dừng cácdịch vụ chưa có yêu cầu hoặc không sử dụng
Xây dựng hệ thống định mức, giới hạn cho người sử dụng, nhằm mụcđích ngăn ngừa trường hợp người sử dụng ác ý muốn lợi dụng các tàinguyên trên server để tấn công chính server hoặc mạng và server khác
Liên tục cập nhật, nghiên cứu, kiểm tra để phát hiện các lỗ hổng bảomật và có biện pháp khắc phục kịp thời
Sử dụng các biện pháp kiểm tra hoạt động của hệ thống một cách liêntục để phát hiện ngay những hành động bất bình thường
Xây dựng và triển khai hệ thống dự phòng
1.4.4 Tấn công từ chối dịch vụ phân tán-Distributed Denial Of Service (DDoS)
DDoS là một dạng DoS nhưng kẻ tấn công sử dụng nhiều máy để thực hiện
Trang 25Hình 1.3: DdoS attack
Các đặc tính của tấn công DDoS.
- Nó được tấn công từ một hệ thống các máy tính cực lớn trên Internet,
và thường dựa vào các dịch vụ có sẵn trên các máy tính trong mạngbotnet
- Các dịch vụ tấn công được điều khiển từ những "primary victim" trongkhi các máy tính bị chiếm quyền sử dụng trong mạng Bot được sử dụng đểtấn công thường được gọi là "secondary victims"
- Là dạng tấn công rất khó có thể phát hiện bởi tấn công này được sinh ra
từ nhiều địa chỉ IP trên Internet
- Nếu một địa chỉ IP tấn công một công ty, nó có thể được chặn bởiFirewall Nếu nó từ 30.000 địa chỉ IP khác, thì điều này là vô cùng khókhăn
- Thủ phạm có thể gây nhiều ảnh hưởng bởi tấn công từ chối dịch vụ DoS,
và điều này càng nguy hiểm hơn khi chúng sử dụng một hệ thống mạngBot trên internet thực hiện tấn công DoS và đó được gọi là tấn côngDDoS
Tấn công DDoS không thể ngăn chặn hoàn toàn.
Trang 26- Các dạng tấn công DDoS thực hiện tìm kiếm các lỗ hổng bảo mật trên cácmáy tính kết nối tới Internet và khai thác các lỗ hổng bảo mật để xây dựngmạng Botnet gồm nhiều máy tính kết nối tới Internet.
- Một tấn công DDoS được thực hiện sẽ rất khó để ngăn chặn hoàn toàn
- Những gói tin đến Firewall có thể chặn lại, nhưng hầu hết chúng đều đến từnhững địa chỉ IP chưa có trong các Access Rule của Firewall và là những góitin hoàn toàn hợp lệ
- Nếu địa chỉ nguồn của gói tin có thể bị giả mạo, sau khi bạn không nhậnđược sự phản hồi từ những địa chỉ nguồn thật thì bạn cần phải thực hiện cấmgiao tiếp với địa chỉ nguồn đó
- Tuy nhiên một mạng Botnet bao gồm từ hàng nghìn tới vài trăm nghìn địachỉ IP trên Internet và điều đó là vô cùng khó khăn để ngăn chặn tấn công
a Các giai đoạn của một cuộc tấn công kiểu DdoS
Bao gồm 3 giai đoạn:
Giai đoạn chuẩn bị:
- Chuẩn bị công cụ quan trọng của cuộc tấn công, công cụ này thôngthường hoạt động theo mô hình client-server Hacker có thể viết phần mềmnày hay down load một cách dễ dàng, theo thống kê tạm thời có khoảng hơn
10 công cụ DDoS được cung cấp miễn phí trên mạng (các công cụ này sẽphân tích chi tiết vào phần sau)
- Kế tiếp, dùng các kỹ thuật hack khác để nắm trọn quyền một số hosttrên mạng tiến hành cài đặt các software cần thiết trên các host này, việc cấuhình và thử nghiệm toàn bộ attack-netword (bao gồm mạng lưới các máy đã
bị lợi dụng cùng với các software đã được thiết lập trên đó, máy của hackerhoặc một số máy khác đã được thiết lập như điểm phát động tấn công) cũng
sẽ được thực hiện trong giai đoạn này
Giai đoạn xác định mục tiêu và thời điểm:
- Sau khi xác định mục tiêu lấn cuối, hacker sẽ có hoạt động điều chỉnhattack-netword chuyển hướng tấn công về phía mục tiêu
- Yếu tố thời điểm sẽ quyết định mức độ thiệt hại và tốc độ đáp ứng củamục tiêu đối với cuộc tấn công
Phát động tấn công và xóa dấu vết:
Trang 27Đúng thời điểm đã định, hacker phát động tấn công từ máy của mình,lệnh tấn công này có thể đi qua nhiều cấp mói đến host thực sự tấn công.Toàn bộ attack-network (có thể lên đến hàng ngàn máy), sẽ vắt cạn năng lựccủa server mục tiêu liên tục, ngăn chặn không cho nó hoạt động như thiết kế.
- Sau một khoảng thời gian tấn công thích hợp, hacker tiến hành xóa mọidấu vết có thể truy ngược đến mình, việc này đòi hỏi trình độ khác cao vàkhông tuyệt đối cần thiết
b Kiến trúc tổng quan của DDoS attack-network
Nhìn chung DDoS attack-network có hai mô hình chính:
+ Mô hình Agent – Handler
+ Mô hình IRC – Based
Hình 1.4:Sơ đồ chính phân loại các kiểu tấn công DdoS
Mô hình Agent – Handler
DDoS attack-network
Client – Handler
Client – Handler Communication
Trang 28Hình 1.5: Mô hình Agent-Handler
Attacker sẽ từ Client giao tiếp với cc1 Handler để xác định số lượngAgent đang online, điều chỉnh thời điểm tấn công và cập nhật các Agent Tùytheo cách attacker cấu hình attack-network, các Agent sẽ chịu sự quản lý củamột hay nhiều Handler
Thông thường Attacker sẽ đặt Handler software trên một Router hay mộtserver có lượng traffic lưu thông nhiều Việc này nhằm làm cho các giao tiếpgiữa Client, handler và Agent khó bị phát hiện Các gia tiếp này thông thườngxảy ra trên các protocol TCP, UDP hay ICMP Chủ nhân thực sự của cácAgent thông thường không hề hay biết họ bị lợi dụng vào cuộc tấn công kiểuDDoS, do họ không đủ kiến thức hoặc các chương trình Backdoor Agent chỉ
sử dụng rất ít tài nguyên hệ thống làm cho hầu như không thể thấy ảnh hưởng
gì đến hiệu năng của hệ thống
Mô hình IRC – Based:
Trang 29Hình 1.6: Mô hình IRC – Based
IRC – Based net work cũng tương tự như Agent – Handler networknhưng mô hình này sử dụng các kênh giao tiếp IRC làm phương tiện giao tiếpgiữa Client và Agent (không sử dụng Handler) Sử dụng mô hình này,attacker còn có thêm một số lợi thế khác như:
+ Các giao tiếp dưới dạng chat message làm cho việc phát hiện chúng là
+ Sau cùng: IRC cũng là một môi trường file sharing tạo điều kiện phát táncác Agent code lên nhiều máy khác
1.4.5 Phân loại tấn công DDoS
Nhìn chung, có rất nhiều biến thể của kỹ thuật tấn công DDoS nhưngnếu nhìn dưới góc độ chuyên môn thì có thể chia các biến thề này thành hailoại dựa trên mụch đích tấn công: Làm cạn kiệt băng thông và làm cạn kiệt tàinguyên hệ thống
Trang 30- Tấn công gây hết băng thông truy cập tới máy chủ.
+ Flood attack+ UDP và ICMP Flood (flood – gây ngập lụt)
- Tấn công khuếch đại các giao tiếp
+ Smurf and Fraggle attack
Hình 1.7: Sơ đồ mô tả sự phân loại các kiểu tấn công DdoS
a Những kiểu tấn công làm cạn kiệt băng thông của mạng (BandWith
Depletion Attack)
BandWith Depletion Attack được thiết kế nhằm làm tràng ngập mạngmục tiêu với những traffic không cần thiết, với mục địch làm giảm tối thiểukhả năng của các traffic hợp lệ đến được hệ thống cung cấp dịch vụ của mụctiêu
Có hai loại BandWith Depletion Attack:
DDoS attack
Bandwith DeleptionDeleption Resource Deleption
Flood Attack Amplification Attack
Protocol Exploit Attack
Malformed Paclket attack
Flaggle Attack
Direct Attack
Loop Attack
TCP SYS
Attack
Spoof source Attack
PUSH +ACK SYN Attack
IP @ Attack
IP Packet Options Attack
Spoof source Attack
Spoof source Attack
Spoof source Attack
Trang 31+ Flood attack: Điều khiển các Agent gởi một lượng lớn traffic đến hệthống dịch vụ của mục tiêu, làm dịch vụ này bị hết khả năng về băng thông.+ Amplification attack: Điều khiển các agent hay Client tự gửi messageđến một địa chỉ IP broadcast, làm cho tất cả các máy trong subnet này gửimessage đến hệ thống dịch vụ của mục tiêu Phương pháp này làm gia tăngtraffic không cần thiết, làm suy giảm băng thông của mục tiêu.
Flood attack:
Trong phương pháp này, các Agent sẽ gửi một lượng lớn IP traffic làm
hệ thống dịch vụ của mục tiêu bị chậm lại, hệ thống bị treo hay đạt đến trạngthái hoạt động bão hòa Làm cho các User thực sự của hệ thống không sửdụng được dịch vụ
Ta có thể chia Flood Attack thành hai loại:
+ UDP Flood Attack: do tính chất connectionless của UDP, hệ thốngnhận UDP message chỉ đơn giản nhận vào tất cả các packet mình cần phải xử
lý Một lượng lớn các UDP packet được gởi đến hệ thống dịch vụ của mụctiêu sẽ đẩy toàn bộ hệ thống đến ngưỡng tới hạn
+ Các UDP packet này có thể được gửi đến nhiều port tùy ý hay chỉ duynhất một port Thông thường là sẽ gửi đến nhiều port làm cho hệ thống mụctiêu phải căng ra để xử lý phân hướng cho các packet này Nếu port bị tấncông không sẵn sàng thì hệ thống mục tiêu sẽ gửi ra một ICMP packet loại
“destination port unreachable” Thông thường các Agent software sẽ dùng địachỉ IP giả để che giấu hành tung, cho nên các message trả về do không có port
xử lý sẽ dẫn đến một đại chỉ Ip khác UDP Flood attack cũng có thể làm ảnhhưởng đến các kết nối xung quanh mục tiêu do sự hội tụ của packet diễn ra rấtmạnh
+ ICMP Flood Attack: được thiết kế nhằm mục đích quản lý mạng cũngnhư định vị thiết bị mạng Khi các Agent gởi một lượng lớnICMP_ECHO_REPLY đến hệ thống mục tiêu thì hệ thống này phải reply mộtlượng tương ứng Packet để trả lời, sẽ dẫn đến nghẽn đường truyền Tương tựtrường hợp trên, địa chỉ IP của cá Agent có thể bị giả mạo
Amplification Attack:
Trang 32Amplification Attack nhắm đến việc sử dụng các chức năng hỗ trợ địachỉ IP broadcast của các router nhằm khuyếch đại và hồi chuyển cuộc tấncông Chức năng này cho phép bên gửi chỉ định một địa chỉ IP broadcast chotoàn subnet bên nhận thay vì nhiều địa chỉ Router sẽ có nhiệm vụ gửi đến tất
cả địa chỉ IP trong subnet đó packet broadcast mà nó nhận được
Attacker có thể gửi broadcast message trực tiếp hay thông qua một sốAgent nhằm làm gia tăng cường độ của cuộc tấn công Nếu attacker trực tiếpgửi message, thì có thể lợi dụng các hệ thống bên trong broadcast networknhư một Agent
Hình 1.8: Amplification Attack
Có thể chia amplification attack thành hai loại, Smuft va Fraggle attack:+ Smuft attack: trong kiểu tấn công này attacker gởi packet đến networkamplifier (router hay thiết bị mạng khác hỗ trợ broadcast), với địa chỉ của nạnnhân Thông thường những packet được dùng là ICMP ECHO REQUEST,các packet này yêu cầu yêu cầu bên nhận phải trả lời bằng một ICMP ECHOREPLY packet Network amplifier sẽ gửi đến ICMP ECHO REQUEST
Trang 33packet đến tất cả các hệ thống thuộc địa chỉ broadcast và tất cả các hệ thốngnày sẽ REPLY packet về địa chỉ IP của mục tiêu tấn công Smuft Attack.+ Fraggle Attack: tương tự như Smuft attack nhưng thay vì dùng ICMPECHO REQUEST packet thì sẽ dùng UDP ECHO packet gởi đếm mục tiêu.Thật ra còn một biến thể khác của Fraggle attack sẽ gửi đến UDP ECHOpacket đến chargen port (port 19/UNIX) của mục tiêu, với địa chỉ bên gửi làecho port (port 7/UNIX) của mục tiêu, tạo nên một vòng lặp vô hạn Attackerphát động cuộc tấn công bằng một ECHO REQUEST với địa chỉ bên nhận làmột địa chỉ broadcast, toàn bộ hệ thống thuộc địa chỉ này lập tức gửi REPLYđến port echo của nạn nhân, sau đó từ nạn nhân một ECHO REPLY lại gửitrở về địa chỉ broadcast, quá trình cứ thế tiếp diễn Đây chính là nguyên nhânFlaggle Attack nguy hiểm hơn Smuft Attack rất nhiều.
b Những kiểu tấn công làm cạn kiệt tài nguyên(Resource Deleption
Attack).
Resource Deleption Attack là kiểu tấn công trong đó Attacker gởi nhữngpacket dùng các protocol sai chức năng thiết kế, hay gửi những packet vớidụng ý làm tắt nghẽn tài nguyên mạng làm cho các tài nguyên này khôngphục vụ user thông thường khác được
Protocol Exploit Attack:
+ TCP SYS Attack: Transfer Control Protocol hỗ trợ truyền nhận với độtin cậy cao nên sử dụng phương thức bắt tay giữa bên gởi và bên nhận trướckhi truyền dữ liệu Bước đầu tiên, bên gửi gởi một SYN REQUEST packet(Synchronize) Bên nhận nếu nhận được SYN REQUEST sẽ trả lời bằngSYN/ACK REPLY packet Bước cuối cùng, bên gửi sẽ truyên packet cuốicùng ACK và bắt đầu truyền dữ liệu
Service Port 1-1023
SYS
ACK
SYN/ACK
80
Trang 34Hình 1.9: Quá trình bắt tay 3 bước
Nếu bên server đã trả lời một yêu cầu SYN bằng một SYN/ACKREPLY nhưng không nhận được ACK packet cuối cùng sau một khoảng thờigian quy định thì nó sẽ resend lại SYN/ACK REPLY cho đến hết thời giantimeout Toàn bộ tài nguyên hệ thống “dự trữ” để xử lý phiên giao tiếp nếunhận được ACK packet cuối cùng sẽ bị “phong tỏa” cho đến hết thời giantimeout
Hình 1.10: Gói tin SYN với địa chỉ giả mạo
Nắm được điểm yếu này, attacker gởi một SYN packet đến nạn nhân vớiđịa chỉ bên gởi là giả mạo, kết quả là nạn nhân gởi SYN/ACK REPLY đếnmột địa chỉ khá và sẽ không bao giờ nhận được ACK packet cuối cùng, chođến hết thời gian timeout nạn nhân mới nhận ra được điều này và giải phóngcác tài nguyên hệ thống Tuy nhiên, nếu lượng SYN packet giả mạo đến với
số lượng nhiều và dồn dập, hệ thống của nạn nhân có thể bị hết tài nguyên.+ PUSH = ACK Attack: Trong TCP protocol, các packet được chứatrong buffer, khi buffer đầy thì các packet này sẽ được chuyển đến nơi cầnthiết Tuy nhiên, bên gởi có thể yêu cầu hệ thống unload buffer trước khibuffer đầy bằng cách gởi một packet với PUSH và ACK mang giá trị là 1.Những packet này làm cho hệ thống của nạn nhân unload tất cả dữ liệu trongTCP buffer ngay lập tức và gửi một ACK packet trở về khi thực hiện xongđiều này, nếu quá trình được diễn ra liên tục với nhiều Agent, hệ thống sẽkhông thể xử lý được lượng lớn packet gửi đến và sẽ bị treo
Malformed Packet Attack:
Malicious
TCP
Client
Victim TCP Server
SYS packet with a deliberately fraudulent (spoofed) source IP return address
SYS/ACK
SYN
80
?
Trang 35Malformed Packet Attack là cách tấn công dùng các Agent để gởi cácpacket có cấu trúc không đúng chuẩn nhằm làm cho hệ thống của nạn nhân bịtreo.
Có hai loại Malformed Packet Attack:
+ IP address attack: dùng packet có địa chỉ gởi và nhận giống nhau làmcho hệ điều hành của nạn nhân không xử lý nổi và bị treo
+ IP packet options attack ngẫu nhiên hóa vùng OPTION trong IP packet
và thiết lập tất cả các bit QoS lên 1, điều này làm cho hệ thống của nạn nhânphải tốn thời gian phân tích, nếu sử dụng số lượng lớn Agent có thể làm hệthống nạn nhân hết khả năng xử lý
Có ba giai đoạn chính trong quá trình Anti-DDoS:
- Giai đoạn ngăn ngừa: tối thiểu hóa lượng Agent, tìm và vô hiệu hóa cácHandler
- Giai đoạn đối đầu với cuộc tấn công: Phát hiện và ngăn chặn cuộc tấncông, làm suy giảm và dừng cuộc tấn công, chuyển hướng cuộc tấn công
- Giai đoạn sau khi cuộc tấn công xảy ra: thu thập chứng cứ và rút kinhnghiệm
Tối thiểu hóa số lượng Agent:
- Từ phía User: một phương pháp rất tốt để năng ngừa tấn công DDoS làtừng internet user sẽ tự đề phòng không để bị lợi dụng tấn công hệ thốngkhác Muốn đạt được điều này thì ý thức và kỹ thuật phòng chống phải đượcphổ biến rộng rãi cho các internet user Attack-Network sẽ không bao giờ
Trang 36hình thành nếu không có user nào bị lợi dụng trở thành Agent Các user phảiliên tục thực hiện các quá trình bảo mật trên máy vi tính của mình Họ phải tựkiểm tra sự hiện diện của Agent trên máy của mình, điều này là rất khó khănđối với user thông thường.
Một số giải pháp tích hợp sẵn khả năng ngăn ngừa việc cài đặt codenguy hiểm thông ào hardware và software của từng hệ thống Về phía user họnên cài đặt và updat liên tục các software như antivirus, anti_trojan và serverpatch của hệ điều hành
- Từ phía Network Service Provider: Thay đổi cách tính tiền dịch vụ truycập theo dung lượng sẽ làm cho user lưu ý đến những gì họ gửi, như vậy vềmặt ý thức tăng cường phát hiện DDoS Agent sẽ tự nâng cao ở mỗi User
Tìm và vô hiệu hóa các Handler:
Một nhân tố vô cùng quan trọng trong attack-network là Handler, nếu cóthể phát hiện và vô hiệu hóa Handler thì khả năng Anti-DDoS thành công làrất cao Bằng cách theo dõi các giao tiếp giữa Handler và Client hay handler
va Agent ta có thể phát hiện ra vị trí của Handler Do một Handler quản lýnhiều, nên triệt tiêu được một Handler cũng có nghĩa là loại bỏ một lượngđáng kể các Agent trong Attack – Network
Phát hiện dấu hiệu của một cuộc tấn công:
Có nhiều kỹ thuật được áp dụng:
- Agress Filtering: Kỹ thuật này kiểm tra xem một packet có đủ tiêu
chuẩn ra khỏi một subnet hay không dựa trên cơ sở gateway của một subnetluôn biết được địa chỉ IP của các máy thuộc subnet Các packet từ bên trongsubnet gửi ra ngoài với địa chỉ nguồn không hợp lệ sẽ bị giữ lại để điều tranguyên nhân Nếu kỹ thuật này được áp dụng trên tất cả các subnet củainternet thì khái nhiệm giả mạo địa chỉ IP sẽ không còn tồn tại
- Thống kê MBI(MIB statistics): trong Management Information Base
(SNMP) của route luôn có thông tin thống kể về sự biến thiên trạng thái củamạng Nếu ta giám sát chặt chẽ các thống kê của protocol mạng Nếu ta giámsát chặt chẽ các thống kê của Protocol ICMP, UDP và TCP ta sẽ có khả năngphát hiện được thời điểm bắt đầu của cuộc tấn công để tạo “quỹ thời gianvàng” cho việc xử lý tình huống
Trang 37 Làm suy giàm hay dừng cuộc tấn công:
Dùng các kỹ thuật sau:
- Cân bằng tải(Load balancing): Thiết lập kiến trúc cân bằng tải cho các
server trọng điểm sẽ làm gia tăng thời gian chống chọi của hệ thống với cuộctấn công DDoS Tuy nhiên, điều này không có ý nghĩa lắm về mặt thực tiễn vìquy mô của cuộc tấn công là không có giới hạn
- Điều tiết(Throttling): Thiết lập cơ chế điều tiết trên router, quy định
một khoảng tải hợp lý mà server bên trong có thể xử lý được Phương phápnày cũng có thể được dùng để ngăn chặn khả năng DDoS traffic không chouser truy cập dịch vụ Hạn chế của kỹ thuật này là không phân biệt được giữacác loại traffic, đôi khi làm dịch vụ bị gián đoạn với user, DDoS traffic vẫn cóthể xâm nhập vào mạng dịch vụ nhưng với số lượng hữu hạn
- Drop request: Thiết lập cơ chế drop request nếu nó vi phạm một số quy
định như: thời gian delay kéo dài, tốn nhiều tài nguyên để xử lý, gâydeadlock Kỹ thuật này triệt tiêu khả năng làm cạn kiệt năng lực hệ thống, tuynhiên nó cũng giới hạn một số hoạt động thông thường của hệ thống, cần cânnhắc khi sử dụng
Chuyển hướng của cuộc tấn công:
Honeyspots: Một kỹ thuật đang được nghiên cứu là Honeyspots.
Honeyspots là một hệ thống được thiết kế nhằm đánh lừa attacker tấn côngvào khi xâm nhập hệ thống mà không chú ý đến hệ thống quan trọng thực sự.Honeyspots không chỉ đóng vai trò “Lê Lai cứu chúa” mà còn rất hiệuquả trong việc phát hiện và xử lý xâm nhập, vì trên Honeyspots đã thiết lậpsẵn các cơ chế giám sát và báo động
Ngoài ra Honeyspots còn có giá trị trong việc học hỏi và rút kinh nghiệm
từ Attacker, do Honeyspots ghi nhận khá chi tiết mọi động thái của attackertrên hệ thống Nếu attacker bị đánh lừa và cài đặt Agent hay Handler lênHoneyspots thì khả năng bị triệt tiêu toàn bộ attack-network là rất cao
Giai đoạn sau tấn công:
Trong giai đoạn này thông thường thực hiện các công việc sau:
-Phân tích mẫu lưu lượng(Traffic Pattern Analysis): Nếu dữ liệu về
thống kê biến thiên lượng traffic theo thời gian đã được lưu lại thì sẽ được
Trang 38đưa ra phân tích Quá trình phân tích này rất có ích cho việc tinh chỉnh lại các
hệ thống Load Balancing và Throttling Ngoài ra các dữ liệu này còn giúpQuản trị mạng điều chỉnh lại các quy tắc kiểm soát traffic ra vào mạng củamình
- Packet Traceback: bằng cách dùng kỹ thuật Traceback ta có thể truy
ngược lại vị trí của Attacker (ít nhất là subnet của attacker) Từ kỹ thuậtTraceback ta phát triển thêm khả năng Block Traceback từ attacker khá hữuhiệu gần đây đã có một kỹ thuật Traceback khá hiệu quả có thể truy tìm
nguồn gốc của cuộc tấn công dưới 15 phút, đó là kỹ thuật XXX.
- Phân tích file log(Bevent Logs): Bằng cách phân tích file log sau cuộc
tấn công, quản trị mạng có thể tìm ra nhiều manh mối và chứng cứ quan trọn
Trang 39Chương 2 GIAO THỨC TRAO ĐỔI KHÓA IKE (Internet Key
Exchange) 2.1 Giới thiệu về IKE
2.1.1 Lịch sử
IKE ban đầu được xác định vào tháng 11 năm 1998 bởi InternetEngineering task force (IETF) trong một loạt các ấn phẩm:
- RFC 2407, RFC 2408, và RFC 2409
-RFC 2407 Địnhnghĩa Internet IP Security Domain - giải thích cho ISAKMP
- RFC 2408 Giao thức quản trị khóa và liên kết an toàn Internet-InternetSecurity Association and Key Management Protocol (ISAKMP)
- RFC 2409 định nghĩa của Internet Key Exchange (IKE)
- IKE đã được cập nhật lên phiên bản hai (giao thức IKEv2) vào tháng năm
2005 trong RFC 4306 Một số chi tiết mở được làm rõ vào tháng Mười năm
2006 trong RFC 4718 Hai văn bản cộng vớilàm rõ thêm được kếthợp vào các giao thức IKEv2 cập nhật trong RFC5996 được xuất bản vàotháng Chín năm 2010
Các tổ chức của IETF, the Internet Society (ISOC) đã duy trì bản quyềncủa các tiêu chuẩn này như là miễn phí cho cộng đồng Internet
2.1.2 Giao thức trao đổi khóa-Internet Key Exchange (IKE)
Internet Key Exchange (IKE) là một giao thức cho phép các máy trạm
tự động thỏa thuận các tham số để thiết lập các liên kết an toàn-SecurityAssociation (SA) giữa hai máy có cài đặt giao thức IKE và IPSec trong mộtmạng SA có những thông tin để thiết lập một kết nối an toàn giữa các bên vềphương thức xác định trước IKE này được dựa trên giao thức quản trị khóa
Trang 40và liên kết an toàn Internet-Internet Security Association and KeyManagement Protocol (ISAKMP), Oakley, SKEME
Về cơ bản được biết như giao thức quản trị khóa và liên kết an toànInternet-ISAKMP/Oakley, IKE giúp các bên giao tiếp thủa thuận các tham sốbảo mật và khóa xác nhận trước khi một phiên bảo mật IPSec được triển khai.Ngoài việc thỏa thuận và thiết lập các tham số bảo mật và khóa mã hóa, IKEcũng sữa đổi những tham số khi cần thiết trong suốt phiên làm việc IKE cũngđảm nhiệm việc xoá bỏ những SAs và các khóa sau khi một phiên giao dịchhoàn thành
ISAKMP ([MSST98]) cung cấp một khung(khuôn khổ) cho sự chứngthực và sự trao đổi khóa nhưng không định nghĩa chúng ISAKMP được thiết
kế để trao đổi khóa độc lập, có nghĩa là, nó được thiết kế để hỗ trợ nhiều sựtrao đổi khóa khác nhau
Oakley ([Orm96]) mô tả một loạt các trao đổi khóa - được gọi là
"modes" hay “ chế độ” - và chi tiết các dịch vụ cung cấp (ví dụ : như giữ bímật cho các khóa, bảo vệ danh tính, và xác thực)
SKEME ([SKEME]) mô tả một kỹ thuật trao đổi khóa linh hoạt,cungcấp nặc danh
Các thuộc tính sau đây được sử dụng bởi IKE và được đàm phán như làmột phần của ISAKMP SA (Những thuộc tính này chỉ liên quan đến bảo mậtISAKMP SA và không cho bất kỳ SA mà ISAKMP có thể đàm phán thaymặt cho các dịch vụ khác.)
- Thuật toán mã hóa
- Thuật toán băm
- Phương pháp xác thực
- Thông tin về một nhóm để mã hóa Diffie-HellmanTất cả các thuộc tính là bắt buộc và phải được thương lượng Ngoài ra, nó cóthể thương lượng một chức năng tùy chọn ngẫu nhiên ("PRF") Nếu một
"PRF" không đàm phán, các HMAC phiên bản của thuật toán băm thươnglượng được sử dụng như là một hàm giả ngẫu nhiên Các thuật toán băm phải
hỗ trợ cả hai phương thức bản địa và HMAC