Professional Documents
Culture Documents
Phát Hiện Và Phòng Chống Xâm Nhập Trái Phép Mạng Máy Tính
Phát Hiện Và Phòng Chống Xâm Nhập Trái Phép Mạng Máy Tính
Hà Nội – 2017
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
---------------------------------------
Hà Nội – 2017
LỜI CAM ĐOAN
u c
Các s liu, kt qu nêu trong lu
công b trong bt k công trình nào khác.
Tác gi
i
DANH MỤC CÁC THUẬT NGỮ
1 ACK Acknowledgement
2 DNS Domain Name System
3 DOS Denial of Service
4 DDOS Distributed Denial of Service
5 FTP File Transfer Protocol
6 HTTP HyperText Transfer Protocol
7 ICMP Internet Control Message Protocol
8 IDS Intrusion Detection System
9 IP Internet Protocol
10 IPS Intrusion Prevention System
11 NAT Network Address Translation
12 NTP Network Time Protocol
13 UDP User Datagram Protocol
14 RPC Remote Procedure Call
15 TCP Transmission Control Protocol
ii
MỤC LỤC
LỜI CAM ĐOAN ..................................................................................................... i
DANH MỤC CÁC THUẬT NGỮ .........................................................................ii
MỤC LỤC .............................................................................................................. iii
DANH MỤC CÁC BẢNG ...................................................................................... v
DANH MỤC HÌNH VẼ VÀ SƠ ĐỒ ..................................................................... vi
MỞ ĐẦU .................................................................................................................. 1
CHƢƠNG I: TỔNG QUAN VỀ TẤN CÔNG TỪ CHỐI DỊCH VỤ PHÂN
TÁN .......................................................................................................................... 3
1.1 Tn công t chi dch v phân tán.....................................................................3
1.2 Lch s tn công t chi dch v........................................................................4
n ca mt cuc tn công DDOS ...........................................
n chun b ...................................................................................
1.3.1.1 K thut scanning .................................................................................6
lây lac ..................................................................
nh mc tiêu và thm tn công ........
ng tn công ......................................................
n xóa du vt ..............................................................................
1.4 Mô hình kin trúc tng quan ca DDOS attack-network ................................14
1.4.1 Mô hình Agent-Handler ............................................................................14
1.4.2 Mô hình da trên nn tng IRC .................................................................16
CHƢƠNG II: PHÂN LOẠI CÁC DẠNG TẤN CÔNG DDOS ....................... 18
2.1. Dn công.............................................................
2.2. Da trên m t ng ................................................................................ 19
2.3. Da trên giao thc mng ................................................................................19
2.4. Dg thc giao tip ......................................................................2
2.5. D tn công..........................................................................
2.6 Da trên vic khai thác các l hng an ninh ....................................................21
2.6.1 Tn công gây cn ki ............................................................. 2
2.6.2 Tn công gây cn kit tài nguyên ..............................................................25
CHƢƠNG III: PHÁT HIỆN VÀ NGĂN CHẶN DDOS ................................... 30
3.1 Yêu ci vi mt h thng phát hin DDoS ................
3.2 Các bin pháp phát hin DDOS .................................................3
iii
t gn nn nhân ......................................................................
3.2t gn ngun tn công ...............................................................
t ti phn lõi ca internet .....................................................
3.3 Mt s nghiên cu v h thn DDOS .........................................
3.3.1 Giao thc Active Internet Traffic Filtering (AITF) ..................................33
3.3.2 H thng D-WARD ..................................................................................35
CHƢƠNG IV: TRIỂN KHAI THÍ NGHIỆM PHƢƠNG PHÁP NGĂN
CHẶN DDOS SỬ DỤNG SNORT-INLINE ....................................................... 39
4.1 Phn mm phát hin xâm nhp Snort-inline............................
hong ca Snort ......................................................
4.1.2 Kin trúc ca Snort ....................................................................................41
4.1.3 Cu trúc lut (rule) ca Snort .................................................................... 42
4.1.3.1 Cu trúc ca rule Header .....................................................................42
4.1.3.2 Cu trúc ca rule option ......................................................................43
4.2 Mô hình trin khai ...........................................................................................49
4.2.1 Mô hình khi h th ............................................................
4.2.2 Gii pháp tích hp Snort-inline vào h thng ...........................................51
4.3 c trin khai ................................................................................................52
4.3c 1 .......................................................................................................52
c 2 .......................................................................................................52
c 3 ......................................................................................................53
4.4 Trin khai h thng ..........................................................................................53
t h u hành và các gói ph thuc ............................................
4.4t các gói cn thit cho snort............................................................. 54
t Snort .............................................................................................. 55
t Barnyard ........................................................................................56
4.5 Kt qu thí nghim........................................................................................... 57
4.5.1 Kt qu c 1 ..........................................................................................57
4.5.2 Kt qu c 2 ..........................................................................................59
4.5.3 Kt qu c 3 ..........................................................................................63
KẾT LUẬN .............................................................................................................. 66
TÀI LIỆU THAM KHẢO
iv
DANH MỤC CÁC BẢNG
v
DANH MỤC HÌNH VẼ VÀ SƠ ĐỒ
vi
Hình 4.14: Log cnh báo nhc khi h thng b tn công DDOS. ....................62
Hình 4.15: Access log ca apache sever khi cuc tn công xy ra ...........................62
Hình 4.16: Truy cp vào web server khi b tn công DDOS. ...................................62
Hình 4.17: S dng Slow POST HTTP request attack. ............................................63
Hình 4.18: Log khi h thng chn tn công DDOS. .................................................64
Hình 4.19: Tài nguyên h thng sau 5 phút khi DDOS b n. ......................64
Hình 4.20: Truy cp vào web server khi DDOS attacks b n. ....................65
vii
MỞ ĐẦU
, internet tr thành không gian xã hi m
th thc hin các hành vi mang bn cht xã hi c
sáng to, hc tp, sn xui trí. c b
phát trin nhanh chóng ca các kt ni không dây, kt ni mng 3G, 4G, mng xã
hi, các thit b di ng thông minh và dch v
c th
mi quan h xã hi lên internet.
Cùng vi nhng li ích to la t không gian m
mi quu ca nhiu quc gia. S phát trin công ngh thông tin
ng ca các t ch
ng bt hp pháp trên không gian mng, chuyên chng phá nhm kim soát thông
p d liu, n ho ng ca t chc, doanh ng
. Trong nht nhiu v tn công DDOS (tn
dch v phân tán) ln, nhm vào các h thng ca các t chc chính ph
an ninh hay các t hp công nghip, n t ln trên toàn th gii g
nhng thit hi to ln v an ninh quc phòng, kinh t, chính tr làm mt nh xã
hi.
T
Các quc gia, các t chc, doanh nghip cn ph
b tt nh ng phó vi các v tn công bt ng và có bin pháp khc phc k
th hn ch tt hi mà DDoS gây ra. Vic hiu rõ các d
DDOn là cn thit. Vi mon
th nghim phòng chng mt s ng hp tn công DDOS nhm gim tác hi gây
ra vi mt s h thng ph bin Vit Nam, tác gi tài lu
hiện và phòng chống xâm nhập trái phép mạng máy tính
Mc tiêu nghiên cu và gii hn ca lu
1
Nghiên cu tìm hiu mt trong các loi tn công mng là tn công DDOS
và tìm hiu mt s công c tn công DDOn hình.
Tìm hiu mt s n D
Trin khai thí nghim h thng phát hin v n DDOS da tr
phn mm Snort-inlne.
Do ng ca các dng xâm nhp trái phép mng máy tính,
n và phòng chng ng m
nghiên cu, th nghim các mô hình, gii pháp mà lu cn là s d
mô hình gm mt máy tn công DDOS (hacker) thc hin tn công vào mt máy
ch dch v và tit h thng phát hin, n tn côn
máy ch này.
Ni dung luc t ch
Tng quan v tn công t chi dch v
kin trúc mng ca cuc tn công DDOS.
Kho sát mt s dng tn công DDOS n hình và mt s
c tn công DDOS.
Tìm hiu v mt s gii thut phát hin tn công DDOS
t s h thn DDc nghiên cu.
Trin khai thí nghim h thn DDoS s d
mm phát hin xâm nhp Snort-inline.
hoàn thành lu , em xin chân thành c y giáo, c
trong Vin Công ngh thông tin và Truyn thông i Hc Bách Khoa Hà Ni và
c bit tác gi xin gi li cn PGS.TS Nguy
ng dn hoàn thành lu
2
CHƢƠNG I:
TỔNG QUAN VỀ TẤN CÔNG TỪ CHỐI DỊCH VỤ PHÂN TÁN
3
1.2 Lịch sử tấn công từ chối dịch vụ
Các tn công t chi dch v bu vào khou nh
XXu tiên, m c
thác n
c thc hin ch yu b
SYN flood và UDP flood c tn công tr nên phc t
cách gi làm nn nhân, gi vài các máy khác làm ngp má
nhân vi các thông p tr li
Các tn công này phng b hoá mt cách th công bi nhiu k
to ra mt s phá hu có hiu qu. S dch chuyn vic t ng
ng b, kt hp và to ra mt tn công song song ln tr nên ph bin t 1998, vi
s i ca công c t c công b r
da trên tn công UDP flood và các giao ti p master-slave (u khin các máy
trung gian tham gia vào trong cuc tn công bng cách cài t lên chúng các
trình u khin t xa). Kt qu là tháng 5 1999 trang ch c
ng hng vì cuc tn công bng DDOS;
Tháng 6 1999 Mt và ki
Trong nhp theo, vài công c nc ph bin TFN (tribe
network), TFN2K, vaf Stacheldraht:
Cui thá le
c Mixter phát trin.
Cu
h thng ca Châu âu và Hoa k.
, David Dittrich thu
ng phân tích v công c tn công t chi dch v.
TFN2K ).
t lot các báo cáo v các v tc bi
4
Lúc 10 : 30 / 7 2 -2000, Yahoo! tn công t chi dch v
hong trong vòng 3 gi ng h
công t a ch IP khác nhau vi nhng yêu cu chuyn vn 1 giga
Ngày 8 -2-2000, nhiu Web site ln
Datek, MSN, và CNN.com b tn công t chi dch v.
Lúc 7 gi ti ngày 9-2-2000,
công t chi dch v, d lic luân chuyn ti tp trong vòng 1 gi
kt thúc, và gói d ling nng.
Vào ngày 15 t t
và n websites trong vòng 2 gi;
Vào lúc 15:09 gi GMT ngày ph
anh ca website Al-Jazeera b tn n trong nhiu gi.
Gt là tháng 12-2015, h thn dân dng ca Ukraine b
sp làm gi dân b mn trong nhiu ngày.
1.3 Các giai đoạn của một cuộc tấn công DDOS
ng mt cuc tn công DDOS gm n:
n chun b, nh mc tiêu và thm tn công
ng tn công
n xóa du vt
1.3.1 Giai đoạn chuẩn bị
Chun b công c n quan trng ca cuc tn công, các công c
ng hong theo mô hình client-server. Attacker có th vit phn m
này hay ti t internet mt cách d dàng, có rt nhiu công c c cung cp
min phí trên mng.
K tip, các attacker s dng các k thu tìm kim các host (hoc các website,
các thit b mng nh b t m qu
thit b t các công c tn công. Các công c này có kh
n mc tiêu và chúng liên kt vi nhau to thành mt mng (mng bot).
5
có th c các host to nên mi tn công và
c tn công vào các máy ch này, Attacker s dng nhng công c
c phát trin sn, t ng tìm các h thng d b tt nhp v
thng này, và t các trình cn thit cho cuc tn công.
h th b nhim mã c hi này li tip tc lây nhim cho các máy tính d b
khác t trên chúng nhng c hi .
các máy tính d b tng mi tn công vi qu
thc hin. Kt qu ca quá trình t
là vic to ra mt m i tn công DDoS bao gm u khin - ha
(master) và các máy b u khin - agent (slave, daemon). Các attacker có th s
dng các k thut khác nhau (gi là k thut quét - tìm ra các host d
t.
1.3.1.1 Kỹ thuật scanning
Mt s k thuc s dng:
Quét ngu nhiên: Trong k thut này, các máy ch b nhim mã c (mt
y có th là máy ca k tn công hoc mt máy tính thành viên ca m
mng tn công, chng ha ch IP ng
a ch IP và kim tra nhng host d b t. Khi nó tìm thy m
d b t nó c gng truy xut vào host này, chim quyu khi
nhic cho host này. K thut này tng truy c
quét ngu nhiên to ra mt s ng ln các host b chim quyu khin. M
li th (nhng k tn công) c
th lây lan r chúng n t khp m
t phát tán nhanh c c hi không th kéo dài mãi mãi. Sau
khong thi gian ngn, t lây lan gim vì s a ch IP m
c phát hin ra là gim theo thu này tr nên rõ ràng nu chúng ta
xét phân tích ca David Moore và Colleen Shannon v s lây lan ca Code-Red
(CRv2) Worm [7] dng chu
6
Quét theo danh sách tìm kic: c khi nhng k tn công b
quét, h thu thp mt danh sách ca mt s ng ln các host có kh
t , vic làm này có th mt nhiu thi gian. Trong n l to r
mng tn công, h b tìm máy d b t
tìm thy mt host, hacker c hi và chia dan
hai phn và tip tc quét phn các danh sách còn li (phn không cha host mi
phát hin). Máy ch mi nhim bu quét xung danh sách ca mình, c g
tìm thy mt host d b ty, nó thc hin c
t quá trình trên, và theo cách này các ch theo danh sách di
ng thi t mt s ng ngà các host b lây nhim
bo rc ht trên tt c các máy d b t
sách trong mt thi gian ngn. Vic xây dng các c thc hin
khi nhng k tn công bu quét. Do , nhng k tn công có th to danh sác
vi t rt chm và trong mt thi gian dài. Nu nhng k tn công tin hành
quét chm, có th hong này s c nhn thy bi vì mt quá trình
trong mt mng ng xy ra tn s rt cao, khi mt quá trình quét c
c thc hin thì rt khó có th nhn ra rng nó là mt máy quét c.
Quét tôpô:
k các URL (Uniform Resource Locator) trên
URL này là các là các
sách
vô cùng nhanh chóng và theo cách
: k thut quét ho ng trong
sau firewall c coi là vùng b lây nhim bi các
7
nhi c tìm kim các mc tiêu trong mng ni b ca m
dng c giu trong a ch ni b. C th
nht c quét y phía sau firewall và c gng t
c các máy d b t này có th c s dng kt hp v
ch quét khác.
Quét hoán v: Trong k thut quét này, tt c các máy chia s mt danh
sách hoán v gi ngu nhiên chung ca ch t danh sách hoán v
c xây dng bng cách s dng bt k thut toán mã hóa khi 32 bit vi mt
khóa chc. Nu mt host nhim c trong quá trình quét theo
sách hoc quét mng cc b, nó ch bm ca nó tron
hoán v tìm ra nhng mc tiêu mi. Mt kh
b nhim c trong quá trình quét hoán v, nó b u quét ti m
nhiên. Bt c khi nào nó gp mt host nhim c, nó chn m
u mi ngu nhiên trong danh sách hoán v và tip tc t t host nh
c có th nhn ra mt host khác b nhim c gia nhng host kh
b nhim , vì phn ng khác nhau gia host b nhim và host không b nhim. Quá
trình quét dng li khi các host nhic gp tun t mt s nh sn các ho
nhim mà không tìm thy mc tiêu mi trong khong th
mt khóa hoán v mc to ra và mn mi b
nhm hai m nhn tái nhim khôn
tiêu ging nhau, vì khi mt host b nhi c nhn ra mt
nhi c i cách th
Th hai, này vn duy trì nhng li th quét ngu nhiên, bi vì các ch
các mc tiêu mi din ra mt cách ngu nhiên. , k thut quét
v có th c mô t mt k thut quét phi hp vi mt hiu sut rt t
vì ngu nhiên cho phép t quét cao.
Mt phiên bn ci tin ca k thut quét hoán v là k thut quét hoán v
phân vùng. Kiu quét này là mt s kt hp ca quét hoán v và quét theo danh
sách. Trong c này, các host b xâm nhp có mt danh sách hoán v, danh sách
8
này c chia làm hai phn khi nó tìm thy mt mc tiêu mi. nó gi m
phn ca danh sách và phn còn li là phn có cha host va b nhic. Kh
danh sách hoán v mà mt b nhim c s hu gim xu
mc c, các quét chuyn t quét ho
sang quét vào hoán v n.
1.3.1.2 Cơ chế lây lan mã độc
Trong DDoS, có ba nhóm lây lan c hi và xây dng m
tn công gm lan truyn ngun trung tâm, lan truyn chui kt n c và lan
truyn t u khin.
Lan truyn ngun trung tâm: này, sau khi phát hin các h
thng d b t có kh tr thành mt trong nhng zombie, nh
ng d c g n ngun trung tâm cha công c tn công mt b
ca b công c tn công c chuyn t trung tâm n h thng (s b
nhim). Sau khi công c c chuyn giao, trình cài t t ng ca các công
c tn công c kích hot trên h thng nàyu khin bi các scrip.
bu chu k cuc tn công mi, thng mi nhim tìm kim
d b t khác có th t b công c t
s dng trên.
ch này ng s dng các giao thc HTTP, FTP, RPC (Remote Procedure Call).
c mô t trong hình:
9
Hình 1. 1: Mô hình lan truyền mã độc qua nguồn trung tâm
Lan truyn chui kt nc:
dng các giao thc TFTP (Trivial File Transfer Protocol
mô t trong hình:
10
Hình 1. 2: Mô hình lan truyền mã độc theo kiểu chuỗi kết nối ngược
Lan truyn t u khin: này, các máy ch tn công c
các b công c tn công n h thng mi b xâm nhp ti thm ch
xác mà nó xâm nhp vào h th này khác vi
công c tn công c cài vào các máy ch
nhp bi nhng k tn công mình và không phi bi mt ngun tp tin bên
ngoài. c mô t trong hình:
11
Hình 1. 3: Mô hình lan truyền mã độc theo kiểu tự điều khiển [7]
1.3.2 Giai đoạn xác định mục tiêu và thời điểm tấn công
Sau khi xây dng mi tn công, k tn công s du khi
nh các loi tn công, a ch ca nn nhân và ch i thm thích h
các cuc tn công, chuyng tn công v phía mc tiêu.
12
1.3.3 Giai đoạn phát động tấn công
Sau nh mc tiêu và th m tn công, attacker gi lnh
khng các cuc t c la chn n các zo các zo
thi "thc dchúng c lp trình. Các zombie lt gi lu
n nn nhân, t p h thng ca nn nhân vi
hoc làm cn kit ngun tài nguyên ca ca h thng. Bng cách này, nhng k tn
công làm cho h thng ca nn nhân không có kh ng các dch v c
các khách hàng hp pháp. có th là quá cao các m
ni n các máy ch tn công làm cho hiu sut hong ca các mng này gim
c cung cp các dch v trên các mng này có th b ng
trng, và làm cho các khách hàng ca các m b t ch
y, các mc gánh nng bi ng tn công có th
là mt nn nhân na ca các cuc tn công DDoS.
1.3.4 Giai đoạn xóa dấu vết
Sau mt khong thi gian tn công thích hp, attacker tin hành xóa mi du
vt có th n mình, vic này hi attacker phi có kin thc
môn cao n
13
1.4 Mô hình kiến trúc tổng quan của DDOS attack-network
14
Hình 1. 5: Mô hình network attack kiểu Agent-Handler
15
1.4.2 Mô hình dựa trên nền tảng IRC
Internet Relay Chat (IRC) là mt h thng liên lc cp tc qua mng Internet.
1324. i dùng to mt kt nn nhiu
và chat thi gian thc.
dùng cho các thành viên trong mng BBS (Bulletin Board System) i thông
tin vi nhau, dn d c ci tin và tr thành giao thc chu
trình IRC.
Hic xây dng trên nn tng h giao thc
do cho vic s dng h giao thc này là tính chính xác, tin cy, ph bin, rt thích
hp cho các cuc tho lun t xa.
Các h thng IRC s dng mô hình client -
trò server cung cp mm tp trung cho các máy client kt n
thc hin quá trình truyn nhn các message t n client khác.
Có th có nhiu server IRC kt ni vi nhau. Các client kt ni vi các server
IRC qua nhiu kênh (channel). IRC i dùng to ba lo
public, private và serect:
i dùng c
p ca mi dùng khác trên cùng kênh.
c thit k giao tip v
i dùng không cùng kênh thy IRC name và
trên kênh. Tuy nhiên, ni dùng ngoài kênh dùng mt s lnh channel locator
thì có th bic s tn ti ca private
pri
channel locator.
Kin trúc attack-network ca kiu IRC-Base:
16
Hình 1. 6: Mô hình network attack kiểu IRC-Base
17
CHƢƠNG II: PHÂN LOẠI CÁC DẠNG TẤN CÔNG DDOS
Các cuc t c tin tc thc hin b
mt s ng rt ln các máy tính có kt ni Internet b chim quyu khin
hp các máy này c gi là mng máy tính ma hay mng bot, hoc botnet. Các máy
ca botnet có kh i hàng ngàn yêu cu gi mo m n h th
nhân, gây ng nghiêm trn chng dch v cung c
Do các yêu cu ca tn công DDoc gi ri rác t nhiu máy nhiu v
nên rt khó phân bit vi các yêu cu ci dùng hp pháp. Mt trong các khâu
cn thit trong vi ra các bin pháp phòng chng tn công DDoS hiu qu là phân
loi các dng tn công DDoS và t có bin pháp phòng chng thích hp.
Mt cách khái quát, tn công DDoS có th c phân loi da trên 6 tiêu chí
chính: (1) D n công, (2) Da trên m t
trên giao thc mng, (4) Dc giao tip, (5) D
công và (6) Da trên vic khai thác các l hng an ninh. Phn tip theo s trình bày
chi tit tng loi tn công c th
2.1. Dựa trên phƣơng pháp tấn công
Phân loi DDoS d n công là m
phân lon nht. Theo tiêu chí này, DDoS có th c chia thành 2 dng gm
tn công gây ngp lt và tn công logic:
1) Tn công gây ngp lt (Flooding attacks): Trong tn công gây ngp lt, tin
tc to mng ln các gói tin tn công gin hp
h thng nn nhân làm cho h thng không th phc v i dùng h
ng ca tn công d
2) Tn công logic (Logical attacks): Tng khai thác cá
c các l t ca các giao thc hoc dch v chy trên h
nhân, nhm làm cn kit tài nguyên h thng. Ví d tn công TCP SYN khai thác
quá trình bc trong khi to kt n
c cp mt phn không gian trong b u kt ni trong khi c
18
nhn kt ni. Tin tc có th gi mng ln yêu cu kt ni gi mo các k
không th thc hin, chi y không gian bng kt ni và h thng nn nhân
không th tip nhn yêu cu kt ni ci dùng hp pháp.
2.2. Dựa trên mức độ tự động
Theo m t ng, có th chia tn công DDoS thành 3 dng:
1) Tn công th công: Tin tc trc tip quét các h thng tìm l h
nhp vào h tht mã tn công và ra lnh kích hot tn công. Ch nh
u mc thc hin th công.
2) Tn công bán t ng: Trong dng này, m i thc hin tn công
DDoS bao g u khin (master/handler) và các máy agent (slave
deamon, zombie, bot). Các n tuyn chn máy agent, khai thác l hng và
lây nhi c thc hin t n tn công, tin tc gi các
bao gm kiu tn công, thm bu, khong thi gian duy trì t
tn các agent thông qua các handler. Các agent s theo lnh gi các gói tin
tn h thng nn nhân.
3) Tn công t ng: Tt c n trong quá trình tn công DDo
tuyn chn máy agent, khai thác l hng, lây nhi n thc hin t
c thc hin t ng. Tt c các tham s tc lp trình s
vào mã tn công. Tn công dng này gi n ti thiu giao tip gia tin tc và
m i tn công, và tin tc ch cn kích ho n tuyn ch
agent.
2.3. Dựa trên giao thức mạng
Da trên giao thc mng, tn công DDoS có th chia thành 2 dng [1]:
1) Tn công vào tng mng hoc giao vn: dng này, các gói tin TCP,
c s d thc hin tn công.
2) Tn công vào tng ng dng: dng này, các t
các dch v thông dng ng vi các giao thc tng ng d
SMTP. Tn công DDoS tng ng d gây ngp l ng
tiêu hao tài nguyên máy ch, làm ngt quãng kh p dch v
19
dùng hp pháp. Dng tn công này rt khó phát hin do các yêu cu t
t yêu cu t i dùng hp pháp.
2.4. Dựa trên phƣơng thức giao tiếp
thc hin tn công DDoS, tin tc phi tuyn ch
chim quyu khin mt s ng ln các máy tính có kt ni Internet, và c
máy tính này sau khi b cài phn mm agent tr thành các bots - công c giúp tin tc
thc hin tn công DDoS. Tin tu khin (mas
v gi thông tin và các l u khin tn công
giao tip gia các master và bots, có th chia tn công DDoS thành 4 dng :
1) DDoS da trên agent-handler: Tn công DDoS da trên dng này bao
gm các thành phn: clients, handlers và agents (bots/zombies). Tin tc ch giao tip
trc tip vi clients. Clients s giao tip vi agents thông qua handlers. Nhc
lnh và các thông tin thc hin tn công, agents trc tip thc hin vic tn công.
2) DDoS da trên IRC: Internet Relay Chat (IRC) là mt h thng truyn
p trc tuyn cho phép nhii dùng to kt n
p theo thi gian thc. Trong dng tn công DDoS này tin tc s dng IRC làm
kênh giao tip vi các agents, không s dng handlers.
3) DDoS da trên web: Trong dng tn công này, tin tc s dng các trang
n giao tip qua kênh HTTP thay cho kênh IRC. Các trang
ca tin tc s du khin và lây nhim các
hi, các công c khai thác các l ht các agents chim q
khin h thng máy tính và bin chúng thành các bots. Các bots có th c xác lp
cu hình hong t u, hoc chúng có th g
khin thông qua các giao thc web ph bi
4) DDoS da trên P2P: dng này, tin tc s dng giao thc Peer to Peer
mt giao thc tng ng dng làm kênh giao tip. Bn cht ca các mng P2P là
phân tán nên r phát hin các bots giao tip vi nhau thông qua kênh này.
20
2.5. Dựa trên cƣờng độ tấn công
Dn hoc tn sut gi yêu cu tn công, có th phân
công DDoS thành 5 dng:
1) T cao: Là dng tn công gây ngt quãng dch v
cách gi cùng mt th m m ng rt ln các yêu cu t các
agents/zombies nm phân tán trên mng.
2) T th
gi mng ln các yêu cu gi mi tn sut thp, làm suy
dn hing. Dng tn công này rt khó b phát hi
n t i dùng hp pháp.
3) T hn hp: Là dng kt hp gia t
và t thng tn công phc h
s dng các công c sinh các gói tin tn công gi vi tn sut cao và thp.
4) T liên tc: Là dng tc thc hi
tt khong thi gian t khi bn kh
5) T ng t
ng nhm tránh b phát hi.
2.6 Dựa trên việc khai thác các lỗ hổng an ninh
Da trên vim yu và l hng an ninh, tn côn
th c phân loi thành 2 dng : tn công làm cn ki th
công làm cn kit tài nguyên h thng.
2.6.1 Tấn công gây cạn kiệt băng thông
Các tn công DDoS dc thit k gây ngp lt h thng m
ca nn nhân bng các yêu cu truy nhp gi mi dùng hp pháp kh
th truy nhp dch v. Tn công dng gây tc nghng tru
ng yêu cu gi mo rt ln gi bi các máy tính ma (zombie) ca các botnets.
Dng t c gi là tn công gây ngp lt ho
khui.
Các tn công DDoS dc thit k gây ngp lt h thng m
21
ca nn nhân bng các yêu cu truy nhp gi mi dùng hp pháp kh
th truy nhp dch v. Tn công dng gây tc nghng tru
ng yêu cu gi mo rt ln gi bi các máy tính ma (zombie) ca các botnets.
Dng t c gi là tn công gây ngp lt ho
khui.
Các tn công DDoS dc thit k gây ngp lt h thng m
ca nn nhân bng các yêu cu truy nhp gi mi dùng hp pháp kh
th truy nhp dch v. Tn công dng gây tc nghng tru
ng yêu cu gi mo rt ln gi bi các máy tính ma (zombie) ca các botnets.
Dng tc gi là tn công gây ngp lt và tn
i.
Tn công làm cn kiông h thng li chia làm hai loi:
Tn công làm tràn ngp (Flood attack): u khin các Agent gi mt
ng l n h thng dch v ca nn nhân, làm dch v này
Trong quá kh, các cuc tn công làm tràn ngp h thng c thc hin
bi nhiu h thng b xâm nhp và tr thành mt phn ca mt botnet. Hin nay các
attacker không ch s dng tn công ng, m
các tình nguyn viên khng các cuc tn công t máy riêng ca h. Ngoài ra,
làn sóng mi ca các cuc tn công ng ln xut phát t trung tâm d liu c
các nhà cung cp dch v lên ph bin, kh
n c các
Mt botnet là mng ca h thng b xâm nhp có kt ni Internet mà có th
c s d gi , tham gia vào các cuc tn công DDoS, hoc th
các nhim v bt hp pháp khác. Bot là vit tt ca Robot, t
ng hóa. Các h thng b xâm nhp c gi là zombie. Zombies có t
lây nhim cho các h th nó tr
truy c trên. Ví d v mt m
công DDOS:
22
Hình 2. 1: Mô hình mạng botnet
Trong ví d này, k tn công kim soát các zombie khng mt cuc
tn công DDoS vi h tng ca nn nhân. Nhng zombie chy mt kênh bí
m giao tip vi các máy ch ra lnh và kim soát u khin tn
Thông tin liên lc này ng din ra trên Internet Relay Chat (IRC), các kênh c
mã hóa, peer-to-peer và thm chí là các mng xã hi.
Vi s i ca dch v và các nhà cung c
ng m t hin. Nhng k tn công có th thuê hoc xâm nh
khin trung tâm d liu / n khng các cuc tn công DDoS
không ch to i mi cho các t chc hp pháp, nó
cp mt nn tng tuyt vi cho ti phm mng bi vì nó r tin và thun tin cho
phép h s dng tài nguyên máy tính mnh m u xu. Khái nim nà
c minh ha trong ví d:
23
Hình 2.2: Mô hình tấn công thông qua data center
24
các h thng lot gi li các gói tin replies vi s ng rt ln làm c
thng ca nn nhân không có kh lý và b flood.
Attacker/Agent VICTIM
25
kh a mc tiêu có th phát hin, chuy
công cn kit tài nguyên.
Tấn công khai thác các giao thức (Protocol Exploit Attack)
TCP SYN attack:
Giao thc TCP (Transfer Control Protocol) h tr truyn nhn v tin cy
cao. Khi mt host (client) khi to mt kt ni TCP ti mt server, máy trm và
máy ch i mt lot các bn tin thit lp kt ni. Thit lp kt ni
gi là bc TCP (TCP three-way handshake). c mô t bi h
26
c c x lý phiên kt ni nu nhc gói tin ACK cui cùng s b p
tn ht thi gian timeout.
Trong cuc tn công TCP SYN attack, attacker gi mt gói tin SYN n nn
nhân va ch ngun ca gói tin b gi mo, kt qu là nn nhân gi SYN-AC
n ma ch khác và s không bao gi nhc gói tin ACK cui cùng,
n ht thi gian timeout nn nhân mi nhu này và gii phóng
nguyên h thng.
27
th tip nhn chúng. Tuy nhiên, bên gi có th yêu cu h thng unload buffer c
khi b y bng cách gi mt gói tin vi bit PUSH và ACK mang giá tr là 1.
PUSH và ACK là mt bit c
PUSH+ACK attack làm cn kit tài nguyên h thng nn nhân bng lo
gi nhng gói tin TCP vi bit PUSH và ACK có giá tr bng 1 làm cho h thng
nn nhân phi liên tc unload b m và kt qu là h thng ca nn nhân không
th x c nu s c gn là quá ln
Slow HTTP request attack:
thut tn công tng ng dng mà attacker li d
giao thc HTTP vn thit k i các request phc nh
ch c thc thi. Nu m
truyn ti thp, máy ch phi gi ngun tài nguyên ch busy và ch i phn
còn li ca d liu. Nu máy ch gi quá nhiu tài nguyn busy s gây ra t chi
dch v và không th ng các yêu cu khác.
Cu trúc ca mt HTTP request t mn server bao gm:
Request = Request-Line
*(( general-header
| request-header
| entity-header ) CRLF)
CRLF
[ message-body ]
Request-Line = Method SP Request-URI SP HTTP-Version CRLF
và:
Method = "OPTIONS"
| "GET"
| "HEAD"
| "POST"
| "PUT"
28
| "DELETE"
| "TRACE"
| "CONNECT"
| extension-method
extension-method = token
Tấn công bằng các gói tin bất thƣờng (Malformed Packet Attack)
Malformed packet attack là loi tn công t chi dch v phân tán
agent gnh d
nhân không th x lý các gói tin này. Nhi c gn cùng lúc
cho h thng s dng ht tài nguyên và s không th c dch v c
khách hàng hp pháp. Ta s xét mt s dng sau:
IP address attack:
Trong cách tn công này attacker s gn n
gi ma ch ngua ch
thng nn nhân không hi x c.
IP packet options attack:
Attacker gn h thng n
thit lp ngu nhiên và tt c c thit l
nhân phi dành thi gian và tài nguyên h th x
Nu các gói tin dc gi dn dn h thng ca nn nhân cùng
nn nhân s b cn kit tài nguyên h th x
th c dch v t các khách hàng hp pháp.
29
CHƢƠNG III:
PHÁT HIỆN VÀ NGĂN CHẶN DDOS
3.1 Yêu cầu đối với một hệ thống phát hiện và ngăn chặn DDoS
Hin nay, các hình thc tn công DDOS r c
không ngng. Ngày càng có nhiu kiu tn công mi. Do vy, mt h thng phát
hin n DDOS tht s hiu qu khi phát hin n
các kiu tn công.
Khi mt cuc tn công DDOS x
nhn chính xác các gói tin tn công tng
gói tin hp l. Ngoài ra h thng phát hin n phi ho ng th
th gim thiu tng thit hi do cuc tn công gây ra. Phn ng
thng càng nhanh thì vic phòng th càng có hiu qu.
3.2 Các biện pháp phát hiện và ngăn chặn DDOS
Do tính cht nghiêm trng ca tn công DDoS, nhiu gii pháp phòng chng
c nghiên c xut trong nh
gi pháp nào có kh ng DDoS m
và hiu qu do tính cht phc tp, quy mô ln và tính phân tán rt cao ca tn công
DdoS.
Nu d phân loi các bin pháp là v trí trin khai, ta có th c
các mô hình h thng gm: mô hình h thng t gn n công (nn nhân), m
hìnt gn ngun tn công và mô hình t mn công.
3.2.1 Mô hình đặt gần nạn nhân
Là mô hình n nht do ít ph thuc vào các tác nhân khác, nn nhân t
gii quyt v phn n
phát hin b tn công. Tuy nhiên cách tip cn này không th gii quyt tn gc,
qun tr viên ch có th gim thiu thit hi ch không th chm dt cuc tn công.
30
Hình 3. 1: Mô hình đặt gần nạn nhân
3.2.2 Mô hình đặt gần nguồn tấn công
Là mô hình n các gói tin DDoS ngay khi vc sinh ra ti ngun
m là gic ti ca gói tin DDoS, ch
IP. Tuy nhiên li rt khó thc hin do phi h thng mng trên quy mô l
31
Hình 3. 2: Mô hình đặt gần Attacker
3.2.3 Mô hình đặt tại phần lõi của internet
Cách tip cc quan tâm r tip c
internet cn có mt khon chi phí không nh m bo chc c
tính hiu qu phc tp ca phn lõi.
32
3.3 Một số nghiên cứu về hệ thống ngăn chặn DDOS
3.3.1 Giao thức Active Internet Traffic Filtering (AITF)
Giao thc AITF [10] c phát trin bi nhóm nghiên cu h thng phân tán
i hc Stanford nhn và phn ng tc thi vi nhng
công DDoS. Nhóm tác gi u và th nghim giao thc AITF vi kt
khá kh quan: AITF có th n tc thi hàng triu lung tn công trong kh
ch yêu cu mt s tham gia ca mng nh các router.
kèm theo mt yêu cu không gi các gói tin vi phm (chính sách ca mng
NETV)
33
victim Vgw. Tuy nhiên AITF có nh c bi h tr và khuyn
các router gn ngun tn công chn các lung tn công DDoS.
b4: G b b lc tm thi nu A tuân theo trong khong thi gian
tmpc
T
li ngt kt ni ti.
Attacker A: Ngun tn công A dng lung F trong khong thi gian
longTnu
34
3.3.2 Hệ thống D-WARD
D-WARD (DDoS Network Attack Recognition and Defense) là mt h
thng phòng th DDoS c trin khai vi mc tiêu là:
Phát hin ra các cuc tn công DDoS và n chúng bng cách kim
soát lng g cho nn nhân.
Cung cp tt dch v cho các giao dch hp pháp gia các mng trin khai
và nn nhân trong khi các cuc tn công p din.
D-
ân tán. Khi xem D-WARD
khác. Khi tham gia vào các , D
. D-
D-WARD ch kim soát nhng lun d li mng ca mình
lung d liu có ngun gc t các ngun khc kim soát.
Các h thng D-c thit lp ti các router ngun ho
mt gateway ca mng trin khai và phn còn li ca Internet. Trong vic trin khai
n, các b nh tuyn nguc gi m kt ni duy n
ngun vi các mng khác. D-WARD có th quan sát m
gia mng ngun vi internet. Trong c khác, có nhiu router biên kt ni vi
internet qua các gateway khác nhau. D-WARD có th c trin khai mi
gateway và kim soát mi gia mng ngun và các mng b
35
Hình 3. 6: Mô hình triển khai D-WARD
D- c cu hình vi mt tp h a ch IP cc b (loca
ng ra ca ch này b áp các chính sách. Ta ch này
xnh, ví d, tt c các máy trong mng hoc tt c các khách hàng ca mt ISP
Ta gi nh rng D-WARD có th nh chính sách cho ta ch nà
qua mt s giao thc hoc thông qua cu hình th công. D-WARD theo dõi tng
ng ca các dòng và các kt ni gia a ch c thit lp chính
phn còn li ca Internet. Mt dòng (flow) tng
thit lp chính sách cho ma ch và mt máy ch bên ngoài (ma ch IP
ngoài). Mt kt nc tng ng gia mt c
c thit lp chính sách) và ma ch bên ngoài. Hình minh h
khái nim ca mt dòng và mt kt ni:
36
Hình 3.7: Mô tả dòng và kết nối
D-WARD nh da trên vic theo dõi các dòng và
ni theo thi gian. Thay vì thit lp tính hp pháp ca các gói d liu, D-WARD
theo dõi hành vi ca dòng, các kt ni và phân loi các dòng, kt ni là hp pháp
hay tn công. u chnh hong t ng phù hp vi cách phân lo
WARD tip tc theo dõi ng ca nó n các dòng v
ni và s dng các thông tin này n các loi tn công
D-WARD p oS
Các máy ch bên ngoài không phn ng li: t ng thp so v
tc gi, s bng này gn lin liên lc hai chiu theo mt mô hình theo y
c t s lo ng ICMP, DNS,
Trong các kt ni, mt bên gi mt hoc nhi
(xác nhn nhn hoc mt phn c khi gi tip bt k gói d li
kt ni y nó s là bng khi mt t l gi tích cc kt hp vi
li thp. Mt t l tr li thp là mt du hiu cho thy các máy ch bên ngoài có
37
th b tràn ngp bi các cuc tn công và không th tr li, trong khi mt t l gi
tích cc cho thy host ni b có th s tham gia vào cuc tn công. Bng cách phát
hin các máy ch bên ng, D-WARD s nh d
công t chi dch vt du hiu tn công ry
S hin din ca IP gi mo: D-WARD dro
.
gói. P
-
38
CHƢƠNG IV:
TRIỂN KHAI THÍ NGHIỆM PHƢƠNG PHÁP NGĂN CHẶN DDOS
SỬ DỤNG SNORT-INLINE
4.1 Phần mềm phát hiện và ngăn chặn xâm nhập Snort-inline
Snort là mt phn mn m c phát trin bi Sourcefire. Sno
là mt kiu IDS (Instruction Detection System) mm. Nói ngn gn IDS là mt
phn mm t trên máy tính và nhim v ca nó là giám sát nhng gói
vào ra h thng. Nu mt cuc tc phát hin bi Snort thì nó có th p
ng bng nhiu cách khác nhau ph thuc vào cu hình c thit lp, chng hn
gi p cnh báo n nhà qun tr hay loi b g
hin có s b
T phiên bn 2.3.0RC1 Snort tích hp h th n xâm nh
(Snort inline) bin Snort t mt h thng phát hin xâm nhp thun túy tr thành
mt h th chn xâm nhp (IPS) mc dù ch này ch là t chn
không phi mnh. Snort inline là mt d án chính thc ca Snort. ng là k
hn ca Iptables vào Snort. c th
i modun phát hin và modun x
th, vic chn bt gói tin trong Snort c thc hi
libpcap s c thay th bng vic s dng Ip-n libipq
n ca Snort-inline s c thc hin bng devel-mode ca Iptables.
Netfilter là mt c tích hp trong nhân Linux k t khi phiên bn
kernel 2.4. Nó cung cp ba ch chính:
Packet filtering: Chp nhn hoc chn các gói tin
NAT: i a ch IP ngun hoc ca gói tin.
Packet mangling - Si các gói tin chng dch v - QoS)
Iptables là mt công c cn thit cu hình Netfilter. Netfilter sp xp các
gói tin n Snort-inline trong i dùng vi s ca c
ip-queue trong nhân linux và modun libipq. , nu mt gói tin phù hp vi
39
nhn dng mt cuc tn công ca Snort-inline, c gn th bi libipq và quay
tr li vi Netfilter s b drop.
40
nu mt gói tin phù hp vi rule thì gói tin s c ghi li và mt cnh báo s c
phát ra.
Inline mode: ngoài vic phát hin
lung d liu bng.
4.1.2 Kiến trúc của Snort
41
có bng hay không. B phn x lý c hin vic phá
cách tìm các du hiu bt ng trong header ca gói tin và to ra các cnh báo. B
phn x c là rt quan trng trong bt k IDS nào, chúng chun b cho các g
d liu c phân tích da trên các lut trong b phn phát hin. Attacker s dng
nhi qua mt các IDS. B phn x lý
d tái hc khi áp dng bt
hp các gói tin l tìm ra các du hiu b ng. B phn x lý
Snort có th tái hp các gói tin, gii mã HTTP, URI, tái hp các gói TCP,...Nhng
cht quan trng trong h thng phát hin xâm nhp.
Dectection Engine: n quan trng nht ca Snort. Trách nhim
ca nó là phát hin có s bng tn ti trong gói tin hay không. B phn phá
hin s dng các lut ca Snort cho mu mt gói tin trùng vi
lut nào, mng s c thc hin. D
máy tính lut s quy
các gói tin.
Output Plug-ins: u ra c có th ho
nhiu cách ph thuc vào vic bn muc to ra b
ghi và to cnh báo nào.
4.1.3 Cấu trúc luật (rule) của Snort
Rules ca Snort có hai phn : rule header và rule option. Mt Rule có th
phát hin mt hoc nhiu kiu xâm nhp.
Rule Header Rule Option
Bảng 4. 1: Cấu trúc rule của Snort.
4.1.3.1 Cấu trúc của rule Header
Header
Rule Source IP The Destination
Action Protocol Address and Port Direction IPAddress and Port
number Operator number
Bảng 4. 2: Cấu trúc rule header.
42
Các rule header cha các thông tin nh gói tin loi gì, a ch ngun và
, chiu ca gói tin, h gói tin v
tính ch nh trong quy tc hin th.
Rule Action bao gm:
- alert: To mt cnh báo.
- log: ghi li thông tin gói tin.
- pass: b qua gói tin.
- activate: cnh báo và t ng bt các lut.
- dynamicn khi mt luc kích ho
t log rule.
- drop: chn và ghi li thông tin các gói tin.
- reject: chn và ghi li thông tin các i mt thit l
nu là giao thc TCP hoc gi mt thông báo không truy cc nu là giao thc
UDP.
- sdrop: chn gói gói tin.
Protocol: Snort h tr phân tích 4 giao thc là UDP,TCP,ICMP và IP.
IP adress: Snort h tr IP Address dng CIDR.
Port number: Snort h tr cu hình vi mt port, mt di port hoc tt c
các port
The Direction Operator : Có 2 loi direction operator là :
-> Chi ngu -
ngun, bên phi d-
<> Traffic 2 chiu.
4.1.3.2 Cấu trúc của rule option
Rule option là trng tâm ca công c phát hin xâm nhp n c
Snort, nó kt hp d s dng vi sc mnh và tính linh hot. Có bn loi rule option
chính:
General: gm các tùy chn cung cp thông tin v lu
bt c ng nào trong quá trình phát hin.
43
Payload: gm các tùy chn phn ti ca gói tin.
non-payload: gm các tùy chn phn ti c
post-detection: gm các tùy chn s to ra nhng quy tc c th sau khi
mt luc kích hot.
Tt c các option ca Snort c cách vi nhau bng du chm phy.
Nu có nhiu option, nhng option hình thành phép logic AND. Mt action trong
rule header ch c thc hin khi tt c u t
ng các t ng, mt option có
i s. Các i s c phân bit vi t khóa bng du .
Các t khóa:
- msg:
Cu trúc msg: < sample message>;
c s d ghi thông tin vào vic ghi log và cnh báo.
- ack:
Cu trúc ack : <Number>
TCP header cha mng A
này ch ra rng sequence number k ti ng này ch có ý
c thit lp.
- classtype :
Cu trúc config classification: name, description, priority name
Tên: c s dng cho vic phân loc s dng vi t khóa
classtype trong lut Snort.
Description: mô t ngn v kiu phân loi.
Priority : th t nh cho s phân loi, có th c ch
bng t khóa priority. Priority càng thp thì Các lu
c phân loi và xp th t mt nhóm.
- content :
Cu trúc ontent: <straight text>; content: <hex data>;
44
M c tính quan trng ca Snort là kh tìm thy mt mu
liu trong mt gói tin. M tn t i dng mt chu
hoc là các kí t thp lc phân. Ging k xâm nh
các du hiu và t có th tìm ra các du hiu trong c
tin.
- offset:
Cu trúc offset: < value>
T c s dng kt hp vi t khóa content. S d
khóa này, bn có th bu tìm kim t mt v nh so vi
u ca gói tin. S dng mt con s i s ca t khóa này.
- depth:
Cu trúc depth: < value>
T c s dng kt hp vi t khóa
nh gii hn trên ca vic so sánh mu. S dng t khóa này, ta có th xác
nh mt v trí so vi v trí bu. D liu sau v trí này s
ki so mu. Nu bn dùng c hai t
n có th
nh mt khong d liu thc hin vic so sánh mu.
- nocase:
Cu trúc nocase;
T c s dng kt hp vi t
s. Ma nó là thc hin vic tìm king hp không
- content-list:
Cu trúc content_list: < filename>
T khóa contentlist c s dng vi tên ca m
t khóa này. File này s cha mt danh sách các chui s c tìm kim
trong mt gói tin. Mi chut trên các dòng khác nhau ca file.
- dsize:
Cu trúc dsize: [<|>] < number>
45
T c s d tìm chiu dài mt phn d li
tin. Nhiu cách tn công s dng l hng tràn b m bng cách gi các gói
c ln. S dng t khóa này, ta có th tìm thy các gó
chiu dài d liu ln hoc nh t s nh.
- flags:
Cu trúc flags: < flags>
T c s d tìm
header TCP ca gói tin. Mi flag có th c s di s c
khóa flags trong lut Snort.
- fragbits:
Cu trúc: fragbits: < flag_settings>
S dng t khóa này, ta có th tìm ra nhng bit RB (Reserved Bit),
DF(Don't Fragment Bit), MF(More Fragments Bit) trong IP c
bt lên hay không.
- icmp_id:
Cu trúc icmp_id: < number>
c s d phát hin mt ID c th
vi mt gói tin ICMP.
- icmp_seq:
Cu trúc icmp_seq: < hex_value>
T khóa icmp_seq gi khóa icmp_id.
- itype:
Cu trúc itype: < number>
Header ICMP nm sau IP header và ch ng type. T khóa itype
c s d phát hin các cách tn công s d ng type
ICMP header ca gói tin.
- icode:
Cu trúc icode: < number>
46
Trong gói tin ICMP, ICMP header IP header. Nó cha mt
ng code. T c s d phát hi
header gói tin ICMP.
- ipopts:
Cu trúc ipopts: < ip_option>
Header ca n dài 20 byte. Ta có th thêm các tùy chn vào
header này cui. Chiu dài ca phn tùy chn này có th n 40 byte.
Các tùy chc s dng cho các m hác nhau, bao gm: Rec
Route (rr), Time Stamps (ts), Loose Source Routing (lsrr), Strict Source
Routing (ssrr).
- ip_proto:
Cu trúc ip_proto: [!] < name or number>
T khóa ip_proto s dng plug- nh s
trong IP header. T khóa này cn mt con s giao thi s. Ta
th s dng tên giao thc nu nó có th phân gii bng file /etc/protocols.
- logto:
Cu trúc logto: < file_name>
T c s dng ghi log các gói tin vào m
- priority:
Cu trúc priority: < priority integer>
T khóa priority t lut.
- reference:
Cu trúc : reference : <id system>,<id>
T khóa reference có th thêm mt s tham khn thông tin tn ti
trên các h thng khác trên m t vai trò
ch phát hin.
- resp:
47
T khóa resp là mt t khóa c quan trng. Nó có th c s
d i các hành vi ca hacker bng cách gi các gói tin tr li c
mt host mà to ra mt gói tin tha lut. T c bi
c da trên FlexRe
c biên dch vào Snort, s dng lnh (-- with-flexresp) trong script
cu hình.
- sameip:
T c s d ki a ch n
ging nhau hay ki s.
- seq:
Cu trúc seq: <hex_value>
T khóa seq trong lut Snort có th c s d kim tra s th t
sequence ca gói tin TCP.
- flow:
T c s d áp dng mt lut lên các gó
chuyn theo mng c th. Ta có th s dng các option vi t
c
to_client, to_server, from_client, from_server.
- session:
Cu trúc session: [printable|all]
T khóa có th c s d gt b tt c d liu t mt phiên TC
- sid:
Cu trúc sid: < snort rules id>
S dng SID, các công c biu din lut tht s
mt cnh báo c th.
- tag:
Cu trúc tag: <type>, <count>, <metric>[, direction]
T khóa tag là mt t khóa rt quan trng khác có th c s d
ghi log các d liu thêm vào t ( hon) mt host xâm nhp khi mt lut
48
c kích hot. D liu thêm vào có th c phân tích sau này mt cách chi
tit
- tos:
Cu trúc tos: < number>
T c s d phát hin mt giá tr c th
TOS (Type of Service) ca header IP.
- ttl:
Cu trúc ttl: < number>
T c s d phát hin giá tr Time to Live t
header ca gói tin. T khóa này có th c s dng vi tt c các kiu giao
thc xây dng trên nn tng ICMP, UCP và TCP. S dng t
khóa ttl ta có th tìm ra nu có mt user c gng traceroute mng. Vn
duy nht là t khóa cn mt giá tr TTL chính xác.
- uricontent:
Cu trúc uricontent: [!] "content string"
T khóa uricontent ging vi t khóa content ngoi tr vic s
d tìm mt chui có trong phn URI ca gói tin.
(Các tham s ca tp lut trong Snort có th tra cu ti
http://manual.snort.org/ )
4.2 Mô hình triển khai
4.2.1 Mô hình khi hệ thống chưa có IPS
49
Hình 4.3: Mô hình mạng khi chưa có IPS
Thông s server:
- H u hành Ubuntu 12.0.4 X86-64.
- Các gói Apache, php, mysql-server, wordpress.
t ph bin ti Vit Nam vì:
- D trin khai và vn hành.
- Chi phí thu là mã ngun m.
lung d liu:
50
cn kit các tài nguyên h thng. Attacker có th li d tn cô
flood server hoc cn kit các tài nguyên h thng làm cho h thng không th
c dch v ca khách hàng hp pháp.
T n ngh gii pháp là s dng s dng Snort-inline kt hp
n các cuc tn công.
4.2.2 Giải pháp tích hợp Snort-inline vào hệ thống
51
Khi các user gn server, các gói tin s c sp x
Ip-queue c tích hp trong Netfilter. c
Snort-inline. Ti Snort-inline, các gói tin s c so sánh vc th
trong Snort-inline. Nu gói tin trùng vi mt lu a rule, thì mt hà
c ch nh s c thc hin. C th, nu mt gói tin là bt hp pháp
a các rule) thì nó c gn th bi libipq và gi quay tr l
Netfilter s b drop. Còn nu gói tin là hp pháp, nó s c gi ti server
server s gi respone li cho user.
Hi gii pháp nào t chng li DDoS m
din, gi xut là mt trong nhng gii pháp c trin khai v
nhng thành công trong vic chng li các cuc tn công DDoS. Làm cho h thng
nn nhân không b quá ti thi g các nhà qun tr phi hp v
liên quan n, chuyng cuc tn công không b
và phc v c cho nhi dùng hp pháp.
Vi t chung h thng phát hi n DDoS cùng vi m
Web c m là s phi tiêu tn nhiu tài nguyên máy ch web tuy nhiên do
ch s dng mt máy ch nên gii pháp này s tit kim chi phí và phù h
các doanh nghip va và nh Vit Nam.
4.3 Bƣớc triển khai
4.3.1 Bước 1
Kim tra server khi h thng chy bìn thn
n DDoS:
Kim tra tài nguyên h thng.
Truy cp vào server.
4.3.2 Bước 2
Kim tra server khi cài h thng phát hin DDoS và h th
công DDoS:
Kim tra tài nguyên h thng.
Truy cp vào server.
52
Nhn xét.
4.3.3 Bước 3
Ki t h thng phát hi
thng chy n) trong th
Kim tra tài nguyên h thng.
Truy cp vào server.
n xét.
4.4 Triển khai hệ thống
4.4.1 Cài đặt hệ điều hành và các gói phụ thuộc
t h u hành Ubuntu 12.0.4 X86-64
t các gói ph thuc:
# apt-get -y install apache2
# apt-get -y install apache2-doc
# apt-get -y install libapache2-mod-php5
# apt-get -y install bison
# apt-get -y install flex
# apt-get -y install g++
# apt-get -y install gcc
# apt-get -y install gcc-4.4
# apt-get -y install libcrypt-ssleay-perl
# apt-get -y install libmysqlclient-dev
# apt-get -y install libnet1
# apt-get -y install libnet1-dev
# apt-get -y install libpcre3
# apt-get -y install libpcre3-dev
# apt-get -y install libphp-adodb
# apt-get -y install libssl-dev
# apt-get -y install libtool
# apt-get -y install libwww-perl
53
# apt-get -y install make
# apt-get -y install mysql-client
# apt-get -y install mysql-common
# apt-get -y install mysql-server
# apt-get -y install php5-cli
# apt-get -y install php5-gd
# apt-get -y install php5-mysql
# apt-get -y install php-pear
4.4.2 Cài đặt các gói cần thiết cho snort
t gói libpcap:
# cd /usr/src
# wget http://www.tcpdump.org/release/libpcap-1.6.4.tar.gz
# tar -zxf libpcap-1.6.4.tar.gz
# cd libpcap-1.6.4
# ./configure --prefix=/usr && make && make install
t gói libdnet:
# cd /usr/src
# wget http://libdnet.googlecode.com/files/libdnet-1.12.tgz
# tar -zxf libdnet-1.12.tgz
# cd libdnet-1.12
# ./configure --prefix=/usr --enable-shared && make && make install
t gói daq:
# cd /usr/src
# wget https://www.snort.org/downloads/snort/daq-2.0.4.tar.gz
# tar -zxf daq-2.0.4.tar.gz
# cd daq-2.0.4
# ./configure && make && make install
Cp nht ng dc chia s:
# echo >> /etc/ld.so.conf /usr/lib
54
# echo >> /etc/ld.so.conf /usr/local/lib && ldconfig
4.4.3 Cài đặt Snort
t Snort:
# cd /usr/src
# wget https://www.snort.org/downloads/snort/snort-2.9.8.0.tar.gz
# tar -zxf snort-2.9.7.0.tar.gz && cd snort-2.9.8.0
# ./configure --enable-sourcefire && make && make install
Tc cho Snort:
# mkdir /usr/local/etc/snort
# mkdir /usr/local/etc/snort/rules
# mkdir /var/log/snort
# touch /usr/local/etc/snort/rules/local.rules
# touch /usr/local/etc/snort/rules/snort.rules
# touch /usr/local/etc/snort/sid-msg.map
To các user và phân quyn:
# groupadd snort && useradd -g snort snort
# chown snort:snort /var/log/snort
Copy các file cu hình Snort:
# cp /usr/src/snort-2.9.7.0/etc/*.conf* /usr/local/etc/snort
# cp /usr/src/snort-2.9.7.0/etc/*.map /usr/local/etc/snort
Cu hình Snort (Chnh sa file snort.conf):
#vim /usr/local/etc/snort/snort.conf
- Line #45 - ipvar HOME_NET 27.118.23.30/28
- Line #48 - ipvar EXTERNAL_NET !$HOME_NET
- Line #104 - var RULE_PATH rules
- Line #293 Thêm vào sau max_g
104857600
- Line #521 Thêm dòng - output unified2: filename snort.log, limit 128
- Line #265
55
preprocessor normalize_ip4
preprocessor normalize_tcp: ips ecn stream
preprocessor normalize_icmp4
preprocessor normalize_ip6
preprocessor normalize_icmp6
- Line #188 - Cui step #2 ca file snort.cong thêm:
config policy_mode: inline
Cu hình daq:
- Line #159 in snort.cong
config daq: afpacket
config daq_dir: /usr/local/lib/daq
config daq_mode: inline
config daq_var: buffer_size_mb=512
snort.conf
4.4.4 Cài đặt Barnyard
Barnyard2 là mt trình thông dch mã ngun m cho t u ra nh ph
Snort unified2. Nhim v chính ca nó là cho phép Snort phân tích d liu nh phân
nh dng khác và t cách hiu qu
toàn c l không n quá
t Barnyard2:
# cd /usr/src
# wget https://github.com/binf/barnyard2/tree/bug-fix-release
# unzip bug-fix-release.zip
# cd barnyard2-bug-fix-release
# autoreconf -fvi -I ./m4 && ./configure --with-mysql --with-mysql-
libraries=/usr/lib/x86_64-linux-gnu
# make && make install
Configure Barnyard2:
56
#cp /usr/src/barnyard2-bug-fix-release/etc/barnyard2.conf
/usr/local/etc/snort
# mkdir /var/log/barnyard2
# chown snort:snort /var/log/barnyard2
# nano /usr/local/etc/snort/barnyard2.conf
- Line #27 i thành /usr/local/etc/snort/reference.config
- Line #28 i thành /usr/local/etc/snort/classification.config
- Line #29 i thành /usr/local/etc/snort/gen-msg.map
- Line #30 i thành /usr/local/etc/snort/sid-msg.map
- Line #227 i thành output alert_fast
- Cui file: output database: log, mysql, user=snort password=<tinhnd123>
dbname=snort host=localhost
Thit lp Database:
Login to MySQL:
# mysql uroot p
mysql> create database snort;
mysql> grant CREATE, INSERT, SELECT, DELETE, UPDATE on
snort.* to snort@localhost;
mysql> snort@localhost=PASSWORD('<vuhai123>'); //thit lp
password cho snort database user;
mysql> use snort;
mysql>source/usr/src/barnyard2-bug-fixrelease/schemas/create_mysql;
mysql> show tables;
mysql> exit;
4.5 Kết quả thí nghiệm
4.5.1 Kết quả bước 1
Tài nguyên h thng:
57
Hình 4.7: Tài nguyên hệ thống khi chưa bị tấn công
Truy cp vào server:
58
Hình 4.8: Truy cập vào web server
T kt qu trên, ta thy khi không b tn công DDOS thì thông s ti ca h
thng rt thp i x ng RAM free là khong 67 M
cng.
4.5.2 Kết quả bước 2
Thêm rule vào file /usr/local/etc/snort/rules/local.rules:
alert tcp any any -> 192.168.73.128/24
"POST"; nocase; flow: established,to_server; threshold:type threshold, track
by_src, count 60, seconds 1; sid:1000852; rev:1; )
S dng công c tn công máy ch web bng
Slow POST HTTP request:
59
Hình 4.9: Sử dụng Slow POST HTTP request attack.
Bu thc hin cu hình và tn công:
Hình 4.10: Tài nguyên hệ thống khi bị tấn công DDOS khoảng 2 phút.
60
Hình 4.11: Log apache khi bắt đầu tấn công được 2 phút
Log cnh báo bu xut hin (mã li 408 http):
Hình 4.12: Log hệ thống khi bị tấn công DDOS khoảng 2 phút.
Hình 4.13: Log hệ thông sau khi tấn công khoảng 5 phút
61
Log cnh báo:
Hình 4.14: Log cảnh báo nhận được khi hệ thống bị tấn công DDOS.
Log access ca Apache server:
Hình 4.15: Access log của apache sever khi cuộc tấn công xảy ra
Truy cp vào web server:
Hình 4.16: Truy cập vào web server khi bị tấn công DDOS.
62
Nhn xét:
- Khi tn công DDOS xy ra, ti ca h thc, %CPU dàn
các ti c x n 94,4%
gim dn, sau khi tn công 4 phút thì còn khong 50 MB. H thng
không th tip tc x lý và b treo.
- Liên tc nhc cnh báo xy ra tn công DDOS.
- Access log ca apache server gm rt nhiu gói tin POST (gói tin tn công).
- Không th truy cp vào web server sau 6 phút b tn công DDOS.
4.5.3 Kết quả bước 3
Thêm rule vào file /usr/local/etc/snort/rules/local.rules:
drop tcp any any -> 192.168.73.128/24 phat hien va DROP -
threshold:type threshold, track by_src, count 60, seconds 1; sid:1000852;
rev:1; )
Chy lnh: snort kích hot mode inline trên snort.
S dng công c tn công máy ch web bng
Slow POST HTTP request:
63
Log h thng nhc:
Hình 4.19: Tài nguyên hệ thống sau 5 phút khi DDOS bị ngăn chặn.
64
Truy cp vào web server:
Hình 4.20: Truy cập vào web server khi DDOS attacks bị ngăn chặn.
Nhn xét:
- Khi kích hot h thn DDOS, mc dù b t
ti ca h thng, %CPU dành cho các ti x lý ch
ng RAM free là khong gn 63 MB.
- Khi phát hin b tn công DDOS, h thng phát hi
drop các gói tin t thng.
- Access log ca apache server ch có nhng gói tin GET mà không có gói tin
POST.
- Truy cp vào web server bìnng.
65
KẾT LUẬN
1. Những kết quả đạt đƣợc
Tìm hiu v tn công t chi dch v
kin hình ca tn công DDOS.
ng mng tn công t chi dch v phâ
Phân tích các lo k thut t
Tìm hiu mt s n DDOS.
Trin khai thành công thí nghim h thn DDOS da trên
thng phát hin xâm nhp Snort-inline.
Vic phát hin các cuc tn công t chi dch v phân tán
toàn là mu r Các quc gia, các t chc, doanh nghip c
s chun b tt nh ng phó vi các v tn công bt ng và có bin pháp kh
phc kp th hn ch tt hi mà DDoS gây ra. Hy vng
có th giúp làm rõ v bn cht, cách thc tn công và các k thu phòng chng
li kiu tn công DDoS.
Kt qu lu c s d tham kh
dng h thng có kh chng lc các cng tn công t chi dch v
tán, có th áp dng ngay vào thc tin.
2. Hƣớng phát triển
T
-
66
TÀI LIỆU THAM KHẢO
[1]. A Cisco Guide to Defending Against Distributed Denial of Service
Attacks http://www.cisco.com/c/en/us/about/security-center/guide-ddos-
defense.html
[2]. David Dittrich dittrich@cac.washington.edu University of Washington
Copyright 1999. All rights reserved. October 21, 1999 - The DoS Project's "trinoo"
distributed denial of service attack tool
[3]. DNS Amplification - https://www.incapsula.com/ddos/attack-
glossary/dns- amplification.html
[4]. Hellinton H - Instituto Tecnológico de Aeronáutica S. J. dos Campos
Brazil, Takada and Ulrich Hofmann - Univ. of Applied Sciences & Salzburg
Research Salzburg Austria - Application and Analyses of Cumulative Sum to
Detect Highly Distributed Denial of Service Attacks using Different Attack Traffic
Patterns
[5].http://www.cisco.com/web/about/ac123/ac147/archived_issues/ipj_74/do
s_attacks.html
[6].http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_
:_Ch14_:_Linux_Firewalls_Using_iptables#.VthdZ-a6KM8
[7]. http://manual.snort.org/
[8]. Network Time Protocol
https://en.wikipedia.org/wiki/Network_Time_Protocol
[9]. www.linux.com/
[10]. Secure your network, protect your critical infrastructure -
https://www.corero.com
[11]. http://openmaniak.com/inline.php
[12]. Vladimir Koychev (2015), Build IPS Virtual Appliance Based on
Vmware ESXi, Snort and Debian Linux
[13]. Hypertext Transfer Protocol -- HTTP/1.1 - Copyright (C) The Internet
Society (1999).