Hacking Techniques for Attacks (Những kỹ thuật hacker
thường dùng với mục đích tấn công)
Các hacker hoàn toàn có thể trút hết cơn tàn phá mà không cần
thiết phải chui vào trong hệ thống của bạn. Ví dụ, một hacker có
thể đánh sụm máy chủ của bạn bằng cách cho máy bạn tràn ngập
các tín hiệu khó chịu (obnoxious signal) hoặc tràn ngập các đoạn
mã có hại (malicious code). Kỹ thuật này được gọi là tấn công
từ chối dịch vụ (DoS – Denial of Service).
Các hacker sẽ tiến hành một cuộc tấn công DoS theo một trong
hai phương pháp, cả hai phương pháp này đều khả thi. Phương
pháp thứ nhất là làm tràn ngập máy tính mục tiêu bằng luồng
thông tin áp đảo. Phương pháp thứ hai là gửi lệnh lừa đảo tuyệt
khéo (well-crafted command) hoặc gửi dữ liệu sai (erroneous
data) có thể làm sụm máy tính mục tiêu.
Phần I : Làm tràn ngập bằng SYN (SYN Flooding)
Kiểu tấn công DoS thứ nhất là làm tràn ngập bằng tín hiệu SYN.
Một vụ tấn công SYN sẽ bắt buộc các tài nguyên của máy tính
mục tiêu ngừng hoạt động, bằng cách ép chúng phải đáp ứng
một cơn lũ các lệnh. Để có thể hiểu được điều này, hãy tưởng
tượng bạn đang làm thư ký trong một công ty, nhiệm vụ của bạn
là trả lời và chuyển các cuộc gọi điện thoại. Cái gì sẽ xảy ra nếu
cùng lúc có hai trăm người gọi đến và đều cúp máy khi bạn bắt
máy trả lời? Bạn sẽ rất bận rộn để bắt cho hết các cuộc điện
thoại tào lao này (làm sao dám bỏ một cuộc gọi nào), và chắc
chắn bạn sẽ không thể làm xong bất kỳ công việc nào khác. Cuối
cùng bạn sẽ khóc rưng rức, sẽ khùng luôn và chắc chắn phải
“say goodbye” với cái ghế thư ký khốn khổ đó. Hacker sẽ dùng
một kỹ thuật giống như vậy khi họ triển khai một vụ tấn công
DoS.
Ảnh 1 : Ví dụ minh họa tấn công từ chối dịch vụ (DoS) bằng
điện thoại.
Để tiến hành một vụ tấn công DoS, đầu tiên hacker phải xác
định được địa chỉ IP của mục tiêu. Sau đó, hacker sẽ dùng địa
chỉ IP này để kết nối vào mục tiêu bằng một máy tính client. Để
khuếch đại uy lực của cuộc tấn công, hacker sẽ thường setup rất
nhiều máy tính client cùng lúc tấn công mục tiêu. Để làm được
việc này, thường thì trước đó hacker đã phải thực hiện vài cú
hack mở màn để lấy được quyền điều khiển trên một loạt máy
tính có băng thông kết nối rộng. Nguồn phổ biến nhất để cung
cấp những máy tính “nô lệ” này chính là hệ thống mạng máy
tính của các trường đại học hoặc là hacker sẽ dùng những credit
card “chùa” để thuê các server và dùng nó làm công cụ phục vụ
ý đồ của mình. Khi hacker setup xong các máy tính nô lệ của
mình, anh ta sẽ ngồi ở trung tâm điều khiển bà bắt đầu phát động
cuộc tấn công.
Quy trình kết nối liên lạc của máy tính gồm 3 bước bắt tay. Một
cú tấn công theo kiểu SYN sẽ cải biên quá trình bắt tay này,
nhằm hạ gục bằng cách làm cho máy tính bị quá tải. Như bạn đã
biết, đầu tiên máy tính client sẽ gửi gói tin SYN đến máy tính
server để bắt đầu kết nối. khi máy tính server nhận được gọi tin
này, nó sẽ xử lý tím địa chỉ trả về và gửi ngược lại một gọi tin
SYN ACK. Đây chính là điểm mà cuộc tấn công DoS tìm kiếm.
Một server bao giờ cũng chỉ có một số hạn chế các tài nguyên để
dành cho các kết nối của client. Khi một server nhận được gói
tin SYN khởi tạo từ client, server mới bắt đầu định vị các tài
nguyên này. Điều này cũng có nghĩa là số kết nối client cùng lúc
sẽ bị giới hạn. nếu cùng lúc có quá nhiều client kết nối, server sẽ
bị tràn và sẽ “bức sô” do quá trình xử lý bị quá tải.
Yếu điểm của hệ thống lúc này sẽ hiện ra khi hacker cố tính đưa
vào một địa chỉ trả về giả mạo trong gói SYN ban đầu. Như vậy,
khi server gửi ngược gói tin SYN ACL cho client giả mạo, nó sẽ
không bao giờ nhận được gói tin ACK kết thúc. Như vậy là đối
với từng gói SYN giả mạo, các tài nguyên càng ngày càng bị
buộc phải ngưng hoạt động cho đến khi mà server từ chối không
nhận thêm kết nối nào nữa. Để tấn công được, cần phải có vô số
các gói tin giả mạo, nhưng nếu hacker có nhiều máy tính nô lệ
để cùng gửi các gói tin, anh ta có thể làm quá tải hệ thống một
cách nhanh chóng.
Ảnh 2 : Tấn công kiểu SYN
Một ví dụ nổi tiếng của kiểu tấn công này đã xảy ra vào cuối
năm 1999. Rất nhiều Web xịn đã bị sụm trước một cơn lũ các tín
hiệu cùng lúc đến từ hàng trăm máy tính khác nhau. Các trang
Web sẽ không hề hấn gì nếu cuộc tấn công chỉ xảy ra từ một
máy; tuy nhiên, bằng việc dùng các chương trình điều khiển từ
xa, một hoặc một số hacker sẽ phát động một cuộc tấn công phối
hợp dùng cùng lúc hàng trăm-hàng ngàn máy tính, như vậy mục
tiêu của họ sẽ bị quá tải một cách nhanh chóng.
———
Tài liệu tham khảo : Windows Internet Security-Protecting Your
Critical Data (Seth Fogie & Dr. Cyrus Peikari)
Phần 2 : Xì trum tấn công (Smurf Attacks)
Một biến thể của tấn công DoS gây tràn ngập là tấn công kiểu
Smurf (*). Bạn hãy tưởng tượng một công ty nọ có năm mươi
nhân viên chuyên giải đáp thắc mắc của khách hàng bằng email.
Mỗi nhân viên này dùng một chương trình trả lời tự động không
giới hạn, chương trình này sẽ tự động gửi các mail trả lời lịch sự
khi nhận được câu hỏi. Điều gì sẽ xảy ra, nếu có một khách hàng
vì bực bội đã gửi một trăm bản email copy cho mỗi người trong
số năm mươi nhân viên nói trên, với địa chỉ email trả về (return
address) giả mạo? Lúc đó một trăm email đến sẽ làm phát
sinh… năm ngàn email đi, mà lại đi tới chỉ… một mailbox duy
nhất. Vô phúc cho ai sở hữu địa chỉ bị ông khách hàng quý hóa
kia lấy làm địa chỉ giả mạo, mailbox của anh ta sẽ tràn ngập
những mail là mail! Điều đau khổ của khổ chủ là phải ngồi
duyệt hết đống xà bần đó, để bảo đảm là không bỏ sót một email
quan trọng nào do xếp hoặc bạn bè mình gửi đến, hix hix. Tấn
công kiểu Smurf cũng tương tự như ví dụ vừa nêu. Kẻ tấn công
sẽ gửi một tín hiệu yêu cầu đến một mạng nhiều máy tính, và tất
nhiên là mỗi máy tính trong mạng đều sẽ trả lời cho một địa chỉ
giả mạo. Các chương trình đặc biệt kết hợp một số kỹ thuật khác
sẽ khuếch đại chuyện này cho đến khi một cơn lũ thông tin ập
đổ xuống đầu một máy tính tội nghiệp.
Ảnh 3: Các tấn công DoS có thể phá hủy ảo cả một hệ thống
máy tính.
Như bạn đã biết, một máy tính sẽ bỏ qua tất cả các gói tin không
có địa chỉ rõ ràng chính xác. Có một ngoại lệ cho chuyện này
nếu máy tính dùng loại card mạng chạy ở mode ngẫu nhiên
(promiscuous). Tuy nhiên, có một ngoại lệ khác nữa mà chúng
ta vẫn chưa bàn tới.
Công ty của bạn sẽ làm gì nếu muốn chuyển một thông báo quan
trọng tới tất cả mọi người trong công ty? Nếu email là một trong
các khả năng, công ty sẽ gửi một spam mail nội bộ tới mọi thành
viên có địa chỉ email. Mặt khác, công ty có thể thông báo trên hệ
thống loa. Hoặc họ có thể đặt một bảng thông báo gần máy bán
cà phê tự động. Tất cả những kỹ thuật vừa nêu chỉ nhằm đảm
bảo cho hầu hết nhân viên đều có thể nhận được thông tin. Cũng
tương tự như vậy trong một mạng máy tính, có rất nhiều lúc
server cần gửi thông tin đến từng máy tính thành viên trong
mạng. Điều này được hoàn tất bằng cách sử dụng địa chỉ
broadcast.
Do cách xây dựng địa chỉ IP bên trong một mạng, luôn luôn có
một địa chỉ mà mỗi máy tính đều sẽ trả lời. Địa chỉ này được gọi
là địa chỉ broadcast và thường được dùng để cập nhật các danh
sách tên và những mục cần thiết khác mà các máy tính đều cần
để giữ cho mạng tồn tại và hoạt động được. Mặc dù địa chỉ
broadcast là cần thiết trong một số trường hợp, nhưng nó cũng
có thể đưa tới cái gọi là cơn bão broadcast.
Một cơn bão broadcast cũng tương tự như một tiếng vọng không
bao giờ mất. Còn đặc biệt hơn nữa, nó giống như một tiếng vọng
nhưng lại mạnh dần lên cho đến khi bạn không còn có thể nghe