Tải bản đầy đủ (.pdf) (77 trang)

Nghiên cứu một số kỹ thuật phát hiện trang web giả mạo và ứng dụng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.63 MB, 77 trang )

ĐẠI HỌC THÁI NGUYÊN
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

NGUYỄN THỊ HUYÊN

NGHIÊN CỨU MỘT SỐ KỸ THUẬT PHÁT HIỆN
TRANG WEB GIẢ MẠO VÀ ỨNG DỤNG

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

THÁI NGUYÊN - 2016


ĐẠI HỌC THÁI NGUYÊN
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

NGUYỄN THỊ HUYÊN

NGHIÊN CỨU MỘT SỐ KỸ THUẬT PHÁT HIỆN
TRANG WEB GIẢ MẠO VÀ ỨNG DỤNG

Chuyên ngành: Khoa học máy tính
Mã số: 60 48 01 01

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

Ngƣời hƣớng dẫn khoa học: TS NGUYỄN NGỌC CƢƠNG

THÁI NGUYÊN - 2016



i

LỜI CAM ĐOAN
Tôi xin cam đoan luận văn này của tự bản thân tôi tìm hiểu, nghiên cứu dƣới sự
hƣớng dẫn của TS. Nguyễn Ngọc Cƣơng. Các chƣơng trình thực nghiệm do chính bản
thân tôi lập trình, các kết quả là hoàn toàn trung thực. Các tài liệu tham khảo đƣợc
trích dẫn và chú thích đầy đủ.
TÁC GIẢ LUẬN VĂN

Nguyễn Thị Huyên


ii

LỜI CẢM ƠN
Tôi xin bày tỏ lời cảm ơn chân thành tới tập thể các thầy cô giáo Viện công
nghệ thông tin – Viện Hàn lâm Khoa học và Công nghệ Việt Nam, các thầy cô giáo
Trƣờng Đại học Công nghệ thông tin và truyền thông - Đại học Thái Nguyên đã giảng
dạy cho chúng tôi trong suốt quá trình học tập chƣơng trình cao học tại trƣờng.
Đặc biệt tôi xin bày tỏ lòng biết ơn sâu sắc tới thầy giáo TS. Nguyễn Ngọc
Cƣơng đã quan tâm, định hƣớng và đƣa ra những góp ý, gợi ý, chỉnh sửa quý báu cho
tôi trong quá trình làm luận văn tốt nghiệp. Cũng nhƣ các bạn bè đồng nghiệp, gia đình
và ngƣời thân đã quan tâm, giúp đỡ và chia sẻ với tôi trong suốt quá trình làm luận văn
tốt nghiệp.
Dù đã có nhiều cố gắng nhƣng chắc chắn sẽ không tránh khỏi những thiếu sót
vì vậy rất mong nhận đƣợc sự đóng góp ý kiến của các thầy, cô và các bạn để luận văn
này đƣợc hoàn thiện hơn.
Tôi xin chân thành cảm ơn!
Thái Nguyên, tháng 05 năm 2016


Nguyễn Thị Huyên


iii

MỤC LỤC
Trang
MỞ ĐẦU .........................................................................................................................1
Chƣơng 1 TỔNG QUAN VỀ AN NINH MẠNG VÀ BÀI TOÁN GIẢ MẠO
WEBSITE. .......................................................................................................................4
1.1. Tổng quan về an ninh mạng .....................................................................................4
1.1.1. Giới thiệu về an ninh mạng ...................................................................................4
1.1.2. Nguy cơ ảnh hƣởng tới an toàn mạng ...................................................................5
1.1.3. Các khái niệm cơ bản ............................................................................................6
1.1.4. Các loại tấn công mạng .........................................................................................7
1.1.5. Các phƣơng thức tấn công .....................................................................................8
1.2. Dịch vụ website. .....................................................................................................17
1.2.1. Giới thiệu về Website ..........................................................................................17
1.2.2. Các hình thức giả mạo web. ................................................................................18
1.2.3. Các kiểu lừa đảo của Phishing .............................................................................20
1.3. Bài toán giả mạo website. ......................................................................................23
1.3.1. Giả mạo................................................................................................................23
1.3.2. Một số kỹ thuật ....................................................................................................23
Chƣơng 2 CÁC KỸ THUẬT PHÁT HIỆN WEBSITE GIẢ MẠO ..............................26
2.1.Thuật toán TF - IDF (Term Frequency/Inverse Document Frequency) ..................26
2.1.1. Phƣơng pháp dựa trên tần số từ khóa (TF – Term Frequency) ...........................26
2.1.2. Phƣơng pháp dựa trên nghịch đảo tần số văn bản (IDF – Inverse Document
Frequency) .....................................................................................................................26
2.1.3. Phƣơng pháp TF × IDF .......................................................................................27
2.2. Thuật toán sử dụng phƣơng pháp thống kê (Bayesian). .........................................28

2.2.1. Định lý Naïve Bayes ............................................................................................28
2.2.2. Ví dụ ....................................................................................................................30
2.2.3. Thuật toán Naïve Bayes.......................................................................................31
2.3. Thuật toán so khớp. ................................................................................................32
2.3.1. Thuật toán so khớp chuỗi sơ khai ........................................................................33
2.3.2. Thuật toán Rabin – Karp .....................................................................................35
2.3.3.Thuật toán Boyer Moore Horspool.......................................................................36
2.3.4. DOM Tree............................................................................................................38
2.4. Thuật toán dựa trên sự tƣơng đồng về hình ảnh của trang web. ...........................38
2.4.1. Thuật Toán K-Means ...........................................................................................39


iv

2.4.2. Thuật toán so khớp đồ thị ....................................................................................43
Chƣơng 3 XÂY DỰNG CHƢƠNG TRÌNH PHÁT HIỆN WEBSITE GIẢ MẠO VÀ
ỨNG DỤNG. .................................................................................................................46
3.1. Ứng dụng thuật toán Naive Bayes trong phát hiện website giả mạo .....................46
3.2 Các luật xác định giả mạo áp dụng cho thuật toán ..................................................47
3.2.1 Phát hiện giả mạo dựa trên thanh địa chỉ .............................................................47
3.2.2. Phát hiện giả mạo dựa trên các đặc tính bất thƣờng ............................................52
3.2.3. Phát hiện giả mạo dựa trên các tính năng dùng trong HTML và JavaScript ......53
3.2.4. Phát hiện giả mạo dựa trên tên miền ...................................................................55
3.3. Thiết kế chƣơng trình .............................................................................................55
3.4. Phân tích thuật toán ................................................................................................56
3.4.1. Ý tƣởng ................................................................................................................56
3.4.2. Cài đặt ..................................................................................................................56
3.5. Giao diện chƣơng trình và kết quả .........................................................................59
KẾT LUẬN ...................................................................................................................64
Hƣớng phát triển ............................................................................................................64

TÀI LIỆU THAM KHẢO .............................................................................................65
PHỤ LỤC ......................................................................................................................67
Phần mềm WEKA .........................................................................................................67


v

DANH SÁCH KÍ HIỆU, TỪ VIẾT TĂT
Viết tắt

Viết đầy đủ

|X|

Lực lƣợng của tập X

APWG

Anti Phishing Working Group

ARP

Address Resolution Protocol

CSDL

Cơ sở dữ liệu

Phishing


Giả mạo

DHCP

Dynamic Host Configuration Protocol

DNS

Domain Name System

DOM

Document Object Model

TF-IDF

Term Frequency – Inverse Document Frequency

WEKA

Waikato Environment for Knowledge Analysis

NB

Naïve Bayes

MAC

Media Access Control


LAN

Local Area Network

DoS

Dinal of Services

TCP/IP

Transmission Control Protocol / Internet Protocol

SMTP

Simple_Mail_Transfer_Protocol

URL

Uniform Resource Locator

XML

Extensible Markup Language


vi

DANH MỤC CÁC BẢNG VÀ HÌNH VẼ
Hình 1.1. Báo cáo về tội phạm Internet ...........................................................................5
Hình 1.2. Số lƣợng dữ liệu bị đánh cắp ...........................................................................5

Hình 1.3. Tỷ lệ lỗ hổng trên các trang web .....................................................................6
Hình 1.4. Mô tả hoạt động của bảng CAM .....................................................................9
Hình 1.5. Quá trình cấp phát ip từ máy chủ DHCP .......................................................10
Hình 1.6. Minh họa DHCP Rouge.................................................................................11
Hình 1.7. Minh họa việc chuyển hƣớng ngƣời dùng .....................................................12
Hình 1.8. Minh họa việc cấp phát IP giả .......................................................................13
Hình 1.9. Minh họa cách thức giả mạo ARP .................................................................14
Hình 1.10. Minh họa quá trình giả mạo MAC ..............................................................15
Hình 1.11. Minh họa Fake DNS ....................................................................................16
Hình 2.1. Thuật toán K-means dạng sơ đồ khối ............................................................39
Hình 2.2. Ví dụ về đồ thị ...............................................................................................43
Hình 3.1. Giao diện chƣơng trình ..................................................................................59
Hình 3.2. Kết quả chƣơng trình .....................................................................................60
Hình 3.3 Kiểm tra URL .................................................................................................63
Hình 1. Giao diện phần mềm Weka ..............................................................................67
Hình 2. Giao diện Weka Explorer .................................................................................68
Hình 3. Giao diện Weka Explorer sau khi chọn CSDL Websites Phishing ..................68
Hình 4. Phân loại dữ liệu ...............................................................................................69


1

MỞ ĐẦU
1. Đặt vấn đề
Hiện nay, công nghệ thông tin hầu nhƣ đƣợc áp dụng rộng rãi trên toàn
cầu, nƣớc chúng ta cũng đang dần chuyển mình từ từ tiếp xúc với công nghệ
vì thấy đƣợc lợi ích to lớn trong việc áp dụng công nghệ thông tin vào các
lĩnh vực nhƣ kinh doanh, quản lý, mua sắm,... nói chung là tất cả nhu cầu của
con ngƣời. Một trong những dịch vụ công nghệ hàng đầu đƣợc sử dụng phổ
biến nhất là dịch vụ WEB. Với công nghệ WEB hiện tại thì có thể đáp ứng

mọi nhu cầu của con ngƣời và hơn thế nữa.
Giả mạo (phishing biến thể từ fishing nghĩa là câu cá và phreaking nghĩa
là nhử ngƣời dùng tiết lộ bí mật), trong lĩnh vực bảo mật máy tính là một hành
vi giả mạo ác ý nhằm lấy đƣợc các thông tin nhạy cảm nhƣ tên ngƣời dùng,
mật khẩu và các chi tiết thẻ tín dụng bằng cách giả dạng thành một chủ thể tin
cậy trong một giao dịch điện tử.
Vấn đề giả mạo (phishing hay fake) nói chung và giả mạo web nói riêng
là một loại tội phạm kỹ thuật xã hội đang có xu hƣớng gia tăng trên mạng.
Giả mạo đƣợc báo cáo là vấn nạn web lần đầu tiên vào năm 2001 của hiệp hội
bảo vệ khách hàng, hiệp hội thƣơng mại liên bang của Mỹ và ngày nay nhóm
làm việc chống giả mạo APWG (Anti Phishing Working Group) đã đƣa ra
thông số những trang web giả đang tăng khoảng 50% mỗi năm.
Hầu hết các tấn công lừa đảo hiện đại xảy ra bằng cách thu hút ngƣời sử
dụng truy cập vào một trang web độc hại trông và hoạt động giống nhƣ bản
gốc. Khi đó, ngƣời sử dụng nếu bị thuyết phục rằng trang này là xác thực có
thể cung cấp thông tin cá nhân bao gồm cả thông tin xác thực hoặc thông tin
ngân hàng. Những thông tin này thƣờng đƣợc kẻ sử dụng để thực hiện một số
hình thức của hành vi trộm cắp hay gian lận trong thực tế.
Do vậy, việc nghiên cứu và phát hiện các trang web giả mạo là một nhu
cầu cấp thiết hiện nay.
Phát hiện trang web giả mạo là việc đầu tiên để ngăn chặn và xóa bỏ các
trang web giả mạo. Hiện nay có rất nhiều các cách tiếp cận khác nhau để phát
hiện các trang web giả mạo.


2

Một đặc tính nổi bật nhất của trang web giả mạo là nó phải tƣơng tự nhƣ
trang web gốc. Điều này có nghĩa là hai trang web gốc và web giả mạo có cấu
trúc giống nhau đến mức tốt nhất để ngƣời dùng có đủ tự tin tiết lộ những

thông tin nhạy cảm. Hầu hết các trang lừa đảo đều làm tốt việc tạo giao diện
hợp lệ bằng cách sao chép bố trí trang, font, kiểu, logo và thậm chí các thông
tin bảo mật của trang hợp lệ.
Có nhiều kỹ thuật và giải pháp để phát hiện trang web giả mạo:
1. Hướng mở rộng các giải pháp từ thư rác: Thuật toán TF-IDF (Term
Frequency/Inverse Document Frequency) sử dụng những từ khóa duy nhất để
xác định một trang cụ thể. Kỹ thuật này thƣờng đƣợc dùng trong khai thác
văn bản hoặc với các máy tìm kiếm để tìm các trang liên quan. Thuật toán TFIDF sẽ xác định những từ khóa của một trang web, những từ khóa này đƣợc
đƣa vào một máy tìm kiếm chẳng hạn Google và lấy ra nhóm những URL trên
cùng. Nếu trang web bị nghi ngờ nằm trong nhóm đó thì trang này đƣợc coi là
hợp lệ, ngƣợc lại nó sẽ bị cho là lừa đảo vì hầu hết các trang lừa đảo không có
thứ hạng cao trong các kết quả của máy tìm kiếm.
Thuật toán này đƣợc ứng dụng trong giải pháp Cantina đƣợc phát triển
bởi các nhà nghiên cứu của Đại học Carnegie Mellon với việc sử dụng năm từ
khóa có tần suất xuất hiện cao nhất trong trang. Tuy nhiên giải pháp chỉ phù
hợp khi có hai giả thiết sau:
- Thứ nhất, trang lừa đảo phải nhìn và hoạt động giống với trang hợp lệ
thì mới cho kết quả từ khóa đƣợc xác định bởi TF-IDF giống nhau.
- Thứ hai, các máy tìm kiếm phải cho kết quả xếp hạng các trang web
hợp lệ chính xác và cao hơn các trang lừa đảo.
2. Hướng sử dụng giải pháp Bayesian: Thuật toán lọc Bayesian vốn
đƣợc phát triển để phát hiện thƣ rác nhƣng các nhà nghiên cứu của Đại học
Iowa đã sử dụng thuật toán này để phát triển thành công cụ chống lừa đảo
đƣợc đặt tên là B-APT. Lợi thế chính của thuật toán này là có khả năng phát
hiện đƣợc những đối tƣợng chƣa từng nhìn thấy trƣớc đó. Việc sử dụng phép
lọc Bayesian là một giải pháp hứa hẹn cho việc phát hiện lừa đảo 0 ngày


3


(zero-day) vì nó có thể phát hiện những trang web lừa đảo mới và không dựa
trên một sách đen.
3. Hướng tiếp cận để phát hiện các trang web giả mạo bước đầu là kiểm
tra xem “hình dáng” hay cấu trúc của chúng có giống nhau không. Nếu
giống thì sẽ sử dụng thêm một số kỹ thuật khác để làm rõ các chi tiết kỹ thuật
để phát hiện đó là trang web giả mạo hay trang web hợp lệ.
Mặt khác, DOM là tên gọi tắt của Document Object Model – là một
chuẩn đƣợc định nghĩa bởi W3C dùng để truy xuất và thao tác trên các tài liệu
có cấu trúc dạng HTML và XML bằng các ngôn ngữ lập trình thông dịch nhƣ
Javascript, PHP, python,… Do vậy, để so sánh hai trang web với nhau chúng
ta có thể so sánh hai DOM – Tree tƣơng ứng của chúng.
4. Hướng giải pháp liên quan đến một thuật toán phát hiện sự giống
nhau của hai trang web về hình ảnh. Hƣớng tiếp cận này kiểm tra sự hiển thị
tƣơng đồng của một trang web và so sánh những đặc trƣng hiển thị của nó với
một trang web hợp lệ lƣu trong danh sách trắng. Ngƣời ta đã đề xuất một giải
pháp chống giả mạo mới bằng cách sử dụng 2 thuật toán K-mean và Naive
bayes.
Nếu hai trang web có cấu trúc giống nhau về hình ảnh thì có thể nghi
ngờ, tiếp theo sử dụng các thuật toán dựa trên sự tƣơng đồng về hình ảnh của
hai trang web để so sánh các thành phần chi tiết của chúng để phát hiện trang
Web giả mạo.
Chính vì vậy học viên lựa chọn đề tài “Nghiên cứu một số kỹ thuật phát
hiện trang Web giả mạo và ứng dụng” cho luận văn cao học của mình.
2. Mục tiêu của luận văn
- Tìm hiểu bài toán và các kỹ thuật phát hiện giả mạo web.
- Xây dựng chƣơng trình và thử nghiệm tìm kiếm các trang web giả mạo
bằng thuật toán Naïve Bayes.
3. Đối tƣợng và phạm vi nghiên cứu
- Bài toán giả mạo web, các thuật toán liên quan đến phát hiện trang web
giả mạo, các trang web.

- Ngôn ngữ lập trình C#.


4

Chƣơng 1
TỔNG QUAN VỀ AN NINH MẠNG VÀ BÀI TOÁN GIẢ MẠO
WEBSITE.
1.1. Tổng quan về an ninh mạng
1.1.1. Giới thiệu về an ninh mạng
Ngày nay an ninh mạng là một vấn đề đƣợc nhiều ngƣời quan tâm. Có
rất nhiều trang web bị tấn công. Các cuộc tấn công này gây ra thiệt hại lớn về
thông tin, tài sản, uy tín của các công ty, tổ chức. [2]
Theo thống kê của Bkav, trong năm 2012 vẫn có tới 2.203 website của
các cơ quan doanh nghiệp tại Việt Nam bị tấn công, chủ yếu thông qua các lỗ
hổng trên hệ thống mạng. So với năm 2011 (có 2.245 website bị tấn công),
con số này hầu nhƣ không giảm.
Cuối năm 2013, việc lợi dụng các file văn bản để cài phần mềm gián
điệp đã tiến thêm một bƣớc, không cần thông qua lỗ hổng mà chuyển sang sử
dụng hình thức phishing. Trung tuần tháng 12, Bkav phát hiện một loạt các vụ
tin tặc chèn mã độc vào file văn bản không sử dụng lỗ hổng. Mã độc ẩn dƣới
hình thức một ảnh thu nhỏ đƣợc nhúng trực tiếp vào file văn bản. Để đọc nội
dung, chắc chắn ngƣời dùng sẽ click để mở ảnh lớn hơn, nhƣ vậy sẽ kích hoạt
mã độc. Ông Ngô Tuấn Anh, Phó chủ tịch phụ trách An ninh mạng của Bkav,
cho biết: “Với hình thức này, bất kỳ máy tính nào cũng sẽ bị cài phần mềm
gián điệp mà không cần lỗ hổng. Phishing để cài đặt phần mềm gián điệp sẽ
đƣợc sử dụng rộng rãi và là xu hƣớng trong năm 2014”.
Có thể thấy, an ninh mạng ngày càng phức tạp và là vấn đề nóng trong
những năm gần đây.



5

Hình 1.1. Báo cáo về tội phạm Internet

Hình 1.2. Số lƣợng dữ liệu bị đánh cắp
1.1.2. Nguy cơ ảnh hƣởng tới an toàn mạng
Các hacker thƣờng xuyên lợi dụng lỗ hổng có sẵn để tấn công. Dƣới
đây là thống kê năm 2009 về một vài phƣơng pháp tấn công phổ biến :


6

Hình 1.3. Tỷ lệ lỗ hổng trên các trang web
1.1.3. Các khái niệm cơ bản
1.1.3.1.Tấn công giả mạo
Tấn công giả mạo làm cho địa chỉ nguồn của gói tin bị thay đổi và có
vẻ nhƣ đƣợc xuất phát từ một địa chỉ (máy tính) khác. Trong đó kẻ tấn công
thiết lập một thế giới giả giống nhƣ thật xung quanh nạn nhân. Nạn nhân có
thể sẽ không nhận ra sự khác biệt giữa thật và giả đó.
1.1.3.2. Hành động gây mất thông tin
Là những quyết định, hành động của ngƣời dùng có thể dẫn tới hậu quả
nhƣ bị tiết lộ, thất thoát những thông tin bí mật của bản thân hoặc bị kẻ khác
vi phạm quyền riêng tƣ.
1.1.3.3. Khung cảnh / bối cảnh
Trình duyệt hiển thị cho ngƣời dùng nhiều loại khung cảnh, ngƣời dùng
dựa vào đó để đƣa ra các quyết định của mình.
1.1.3.4. Lỗ hổng
Các lỗ hổng bảo mật trên một hệ thống là các điểm yếu có thể tạo ra sự
ngƣng trệ của dịch vụ, thêm quyền đối với ngƣời sử dụng hoặc cho phép các

truy nhập không hợp pháp vào hệ thống. Các lỗ hổng cũng có thể nằm ngay
các dịch vụ cung cấp nhƣ sendmail, web, ftp ... Ngoài ra các lỗ hổng còn tồn


7

tại ngay chính tại hệ điều hành nhƣ trong Windows NT, Windows 95, UNIX;
hoặc trong các ứng dụng mà ngƣời sử dụng thƣờng xuyên sử dụng nhƣ Word
processing, các hệ databases...
Theo cách phân loại của Bộ quốc phòng Mỹ, các loại lỗ hổng bảo mật
trên một hệ thống đƣợc chia nhƣ sau:
 Lỗ hổng loại C: Các lỗ hổng loại này cho phép thực hiện các phƣơng
thức tấn công theo DoS (Dinal of Services - Từ chối dịch vụ). Mức độ nguy
hiểm thấp, chỉ ảnh hƣởng tới chất lƣợng dịch vụ, có thể làm ngƣng trệ, gián
đoạn hệ thống; không làm phá hỏng dữ liệu hoặc đạt đƣợc quyền truy nhập
bất hợp pháp
 Lổ hổng loại B: Các lỗ hổng cho phép ngƣời sử dụng có thêm các
quyền trên hệ thống mà không cần thực hiện kiểm tra tính hợp lệ. Mức độ
nguy hiểm trung bình; Những lỗ hổng này thƣờng có trong các ứng dụng trên
hệ thống; có thể dẫn đến mất hoặc lộ thông tin yêu cầu bảo mật.
 Lỗ hổng loại A: Các lỗ hổng này cho phép ngƣời sử dụng ở ngoài có
thể truy nhập vào hệ thống bất hợp pháp. Lỗ hổng rất nguy hiểm, có thể làm
phá hủy toàn bộ hệ thống.
1.1.3.5. Web giả mạo
Web giả mạo giống nhƣ là 1 trang web mà những kẻ tấn công tạo ra từ
một trang web ban đầu. Các trang web giả mạo trông giống y hệt với trang
web thực. Nó có giao diện và các liên kết tƣơng tự. Kẻ tấn công sẽ kiểm soát
các trang web giả để giám sát, thu thập những thông tin của những nạn nhân
đi vào cũng nhƣ những trang web mà nạn nhân dẫn kẻ tấn công đi tới.
1.1.4. Các loại tấn công mạng

1.1.4.1. Tấn công hệ điều hành
Những kẻ tấn công tìm kiếm các lỗ hổng hệ thống và khai thác chúng
để đƣợc truy cập vào một hệ thống mạng. Một số lỗi hệ điều hành nhƣ:
Tràn bộ đệm
Lỗi trong hệ điều hành
Hệ thống chƣa đƣợc vá hệ điều hành
1.1.4.2. Tấn công cấu hình sai


8

Các thông tin cấu hình của hệ thống bị chỉnh sửa, cấu hình sai bởi
ngƣời quản trị hoặc bị nhiễm virus, giúp hacker tận dụng những lỗ hổng này
để khai thác và xâm nhập vào hệ thống nhƣ chỉnh sửa sai DNS, thông tin cấu
hình ip…
1.1.4.3. Tấn công các cấp độ ứng dụng
Phần mềm ứng dụng đi kèm với nhiều chức năng và cả tính năng,
nhƣng chƣa kiểm tra lỗi kỹ dẫn đến lỗ hổng để hacker khai thác, bao gồm các
cuộc tấn công nhƣ:
 Tràn bộ đệm
 XSS
 Tấn công từ chối dịch vụ
 Lừa đảo
 Chiếm quyền điều khiển
 Man-in-Middle attack
1.1.5. Các phƣơng thức tấn công
1.1.5.1. Tấn công MAC
Switch thì có bộ nhớ giới hạn cho việc ánh xạ địa chỉ MAC và port vật
lý trên switch. Tấn công MAC là tấn công làm ngập lụt switch với một số
lƣợng lớn yêu cầu, lúc này switch hoạt động nhƣ hub và lúc này các gói tin sẽ

đƣợc gửi ra tất cả các máy trên cùng miền mạng và kẻ tấn công có thể dễ dàng
nghe lén. Ngập lụt MAC làm cho bộ nhớ giới hạn của switch đầy lên bằng
cách giả mạo nhiều địa chỉ MAC khác nhau và gửi đến switch.
Bảng CAM của switch thì có kích thƣớc giới hạn. Nó chỉ lƣu trữ thông
tin nhƣ địa chỉ MAC gắn với cổng tƣơng ứng trên switch cùng với các tham
số miền mạng LAN.


9

Hình 1.4. Mô tả hoạt động của bảng CAM
Khi máy A gửi gói tin đến máy B, nó sẽ tìm trong bảng địa chỉ MAC
của nó, coi thử có địa chỉ MAC của máy B hay không, nếu không có máy A
sẽ gửi gói tin ARP đến switch để hỏi địa chỉ MAC của máy B. Máy B lúc này
nhận đƣợc gói tin gửi phản hồi lại cho máy A sau đó các gói tin đƣợc lƣu
chuyển từ A đến B mà không chuyển sang các máy khác.
Một khi bảng CAM trên switch đầy thì các lƣu lƣợng ARP request sẽ
làm ngập lụt mỗi cổng của switch. Lúc này switch hoạt động cơ bản nhƣ hub,
và tấn công lúc này sẽ làm đầy bảng CAM của switch.
1.1.5.2. Tấn công DHCP
Để hiểu đƣợc cách tấn công dịch vụ DHCP đầu tiên ta cần nắm đƣợc
cách thức cấp phát và nhận ip từ máy trạm đến máy chủ.
Đầu tiên, một DHCP client muốn nhận mới một địa chỉ IP (chứ không
phải muốn phục hồi lại thời gian “thuê” của một địa chỉ IP mà nó đang sử
dụng) sẽ gửi lên toàn mạng (broadcast) một thông điệp DHCP Discover có
chứa địa chỉ MAC của nó để tìm kiếm sự hiện diện của DHCP server.
Nếu tồn tại sự hoạt động của (các) DHCP server thuộc cùng subnet với
DHCP client trên thì (các) server này sẽ phản hồi lại cho client bằng một
thông điệp DHCP Offer có chứa một địa chỉ IP (và các thiết lập TCP/IP khác)
nhƣ là một lời đề nghị cho “thuê” (lease) địa chỉ.



10

Ngay khi nhận đƣợc gói DHCP Offer đến đầu tiên, client sẽ trả lời lại
cho server (dĩ nhiên là gửi cho server nào mà nó nhận đƣợc gói DHCP Offer
đến đầu tiên trong trƣờng hợp có nhiều DHCP server nằm cùng subnet với
nó) một thông điệp DHCP Request nhƣ là sự chấp thuận lời đề nghị cho
“thuê” trên.
Cuối cùng, server gửi lại cho client thông điệp DHCP Acknowledgment để
xác nhận lần cuối “hợp đồng cho thuê địa chỉ” với client. Và từ đây client có
thể sử dụng địa chỉ IP vừa “thuê” đƣợc để truyền thông với các máy khác trên
mạng.

Hình 1.5. Quá trình cấp phát ip từ máy chủ DHCP
Nhƣ vậy, nhìn chung DHCP làm việc khá đơn giản nhƣng điểm mấu
chốt ở đây là xuyên suốt quá trình trao đổi thông điệp giữa server và client
không hề có sự xác thực hay kiểm soát truy cập nào.
Server không có cách nào biết đƣợc rằng nó có đang liên lạc với một
legitimate client (tạm dịch là máy hợp pháp, tức là một máy không bị điều
khiển để thực hiện các mục đích xấu) hay không và ngƣợc lại client cũng
không thể biết đƣợc là nó có đang liên lạc với một legitimate server hay
không.


11

Khả năng trong mạng xuất hiện các rogue DHCP client và rogue DHCP
server (rogue tạm dịch là máy “DHCP giả”, tức là một máy giả tạo, bị điều
khiển để thực hiện các hành vi xấu) tạo ra nhiều vấn đề đáng quan tâm.

Một rogue server có thể cung cấp cho các legitimate client các thông
số cấu hình TCP/IP giả và trái phép nhƣ: địa chỉ IP không hợp lệ, sai subnet
mask, hoặc sai địa chỉ của default gateway, DNS server nhằm ngăn chặn
client truy cập tài nguyên, dịch vụ trong mạng nội bộ hoặc Internet (đây là
hình thức của tấn công DoS).

Hình 1.6. Minh họa DHCP Rouge
Việc thiết lập một rogue server nhƣ vậy có thể thực hiện đƣợc bằng
cách sử dụng các kỹ thuật “social engineering” để có đƣợc khả năng tiếp cận
vật lý rồi kết nối rouge server vào mạng.
Attacker có thể thoả hiệp thành công với một legitimate client nào đó
trong mạng và thực hiện cài đặt rồi thực thi trên client này một chƣơng trình


12

có chức năng liên tục gửi tới DHCP server các gói tin yêu cầu xin cấp IP với
các địa chỉ MAC nguồn không có thực cho tới khi toàn bộ dải IP trong scope
của DHCP server này bị nó “thuê” hết. Điều này dẫn tới server không còn IP
nào để có thể cấp phát cho các legitimate client khác. Hậu quả là các client
này không thể truy cập vào mạng.
M

Hình 1.7. Minh họa việc chuyển hƣớng ngƣời dùng
Một rủi ro nữa có thể xảy ra nếu nhƣ attacker phá vỡ đƣợc các hàng rào
bảo vệ mạng và đoạt đƣợc quyền kiểm soát DHCP server. Lúc này, attacker
có thể sẽ tạo ra những sự thay đổi trong cấu hình của DHCP server theo ý
muốn nhƣ: Thiết lập lại dải IP, subnet mask của scope để tạo ra tình trạng
DoS trong mạng. Đổi thiết lập DNS để chuyển hƣớng yêu cầu phân giải tên
miền của client tới rogue DNS (do attacker dựng lên), kết quả là client có thể

sẽ bị dẫn dụ tới các website giả mạo đƣợc xây dựng nhằm mục đích đánh cắp
thông tin tài khoản của client hoặc website có chứa mã độc mà sẽ đƣợc tải về


13

máy client. Thay đổi default gateway trỏ về máy của attacker để toàn bộ
thông tin mà client gửi ra ngoài mạng sẽ đƣợc chuyển tới máy của attacker
(thay vì đi tới default gateway thực sự), sau đó attacker sẽ chụp lại các thông
tin này trƣớc khi chuyển tiếp chúng tới gateway thực sự của mạng và client
vẫn truyền thông bình thƣờng với các máy ngoài mạng nhƣng ngƣời dùng lại
không hề nhận biết đƣợc rằng họ đã để lộ thông tin cho attacker (đây là một
dạng của tấn công Man-in-the-Middle), chƣa hết, nếu bạn đang chạy dịch vụ
DHCP server đã bị tấn công trên cùng một máy với Domain Controller thì
hậu quả sẽ còn nghiêm trọng hơn nữa khi attacker sẽ có khả năng nắm đƣợc
cơ sở dữ liệu Active Directory và gây thêm nhiều rắc rối khác cho hệ thống
của bạn
Nhƣ vậy, có khá nhiều nguy cơ đe dọa tới tính bí mật, toàn vẹn và độ
sẵn sàng của hạ tầng DHCP và từ đó tạo ra những rủi ro khác nhau cho toàn
bộ hệ thống mạng của tổ chức.

Hình 1.8. Minh họa việc cấp phát IP giả


14

1.1.5.3. Tấn công đầu độc ARP
ARP là giao thức ánh xạ địa chỉ IP đến địa chỉ vật lý đƣợc nhận diện.
Giao thức ARP sẽ quảng bá miền mạng của máy để tìm địa chỉ vật lý. Khi
một máy cần giao tiếp với máy khác, và nó tìm trong bảng ARP của mình,

nếu địa chỉ MAC không đƣợc tìm thấy trong bảng, giao thức ARP sẽ quảng
bá ra toàn miền mạng. Tất cả các máy trong miền mạng sẽ so sánh địa chỉ IP
đến địa chỉ MAC của chúng. Nếu một trong những máy đó, xác định đƣợc đó
chính là địa chỉ của mình, nó sẽ gửi gói ARP hồi đáp và địa chỉ này sẽ đƣợc
lƣu trong bảng ARP và quá trình giao tiếp diễn ra.
Tấn công đầu độc ARP là hình thức tấn công mà gói tin ARP có thể bị
giả mạo để gửi dữ liệu đến máy của kẻ tấn công. Kẻ tấn công làm ngập lụt bộ
nhớ cache chứa địa chỉ ARP của máy mục tiêu bằng các địa chỉ ARP giả mạo,
phƣơng thức này còn đƣợc gọi là đầu độc. Giả mạo ARP liên quan đến việc
xây dựng một số lƣợng lớn ARP Request giả mạo và gói ARP Reply liên tục
đƣợc phản hồi dẫn đến tình trạng quá tải switch. Cuối cùng sau khi bảng ARP
bị đầy thì switch sẽ hoạt động ở chế độ forwarding, lúc này thì kẻ tấn công có
thể dễ dàng nghe lén mọi hoạt động trong mạng.

Hình 1.9. Minh họa cách thức giả mạo ARP


15

Giả mạo ARP giúp kẻ tấn công có thể chuyển hƣớng tất cả giao tiếp
giữa hai máy, khi đó tất cả lƣu lƣợng đƣợc gửi thông qua máy của kẻ tấn
công. Các mối de dọa về tấn công ARP nhƣ: tấn công từ chối dịch vụ, ăn cắp
thông tin dữ liệu, nghe lén cuộc gọi, ăn cắp password, thao tác dữ liệu
1.1.5.4. Tấn công giả mạo
Tấn công giả mạo địa chỉ MAC bằng cách chạy chƣơng trình nghe lén
địa chỉ MAC của máy trạm, máy đƣợc liên kết với switch và dùng địa chỉ
MAC để truy cập mạng. Bằng cách lắng nghe lƣu lƣợng đi qua trong mạng,
kẻ tấn công có thể ăn cắp và dùng địa chỉ MAC hợp pháp của nạn nhân để
nhận tất cả lƣu lƣợng đi từ máy nạn nhân đến đích.


Hình 1.10. Minh họa quá trình giả mạo MAC
Với tấn công giả mạo MAC: Nếu MAC đƣợc dùng để thực thi trong
mạng, kẻ tấn công có thể có quyền thực thi trong mạng đó. Kẻ tấn công có thể
tiến hành nhận dạng một ai đó trên mạng.
Với tấn công giả mạo IP: các mối đe dọa với hình thức này là ping of
death, gói tin ICMP không thể truy cập, ngập lụt cờ SYN, IP thật có thể bị giả
mạo
1.1.5.5. Tấn công DNS
Giả mạo DNS là một kỹ thuật MITM đƣợc sử dụng nhằm cung cấp
thông tin DNS sai cho một host để khi ngƣời dùng duyệt đến một địa chỉ nào


16

đó, ví dụ, www.bankofamerica.com có IP XXX.XX.XX.XX, thì cố gắng này
sẽ đƣợc gửi đến một địa chỉ www.bankofamerica.com giả mạo cƣ trú ở địa
chỉ IP YYY.YY.YY.YY, đây là địa chỉ mà kẻ tấn công đã tạo trƣớc để đánh
cắp các thông tin tài khoản ngân hàng trực tuyến từ ngƣời dùng, tấn công này
có thể thực hiện khá dễ dàng.
Trong kỹ thuật tấn công giả mạo DNS . Hacker tiến hành giảo mạo Arp
Poison tiến hành Sniffer các gói tin của ngƣời dùng. Chúng ta thấy trong quá
trình sniffer hacker đã tiến hành tạo các bản ghi DNS giả cập nhật cho nạn
nhân. Nhằm chuyển hƣớng nạn nhân sang hệ thống khác. Ở đây chính là máy
tính của Attacker

Hình 1.11. Minh họa Fake DNS
Mỗi truy vấn DNS đƣợc gửi qua mạng đều có chứa một số nhận dạng
duy nhất, mục đích của số nhận dạng này là để phân biệt các truy vấn và đáp
trả chúng. Điều này có nghĩa rằng nếu một máy tính đang tấn công của chúng
ta có thể chặn một truy vấn DNS nào đó đƣợc gửi đi từ một thiết bị cụ thể, thì

tất cả những gì chúng ta cần thực hiện là tạo một gói giả mạo có chứa số nhận
dạng đó để gói dữ liệu đó đƣợc chấp nhận bởi mục tiêu.
Chúng ta sẽ hoàn tất quá trình này bằng cách thực hiện hai bƣớc với
một công cụ đơn giản. Đầu tiên, chúng ta cần giả mạo ARP cache thiết bị mục
tiêu để định tuyến lại lƣu lƣợng của nó qua host đang tấn công của mình, từ
đó có thể chặn yêu cầu DNS và gửi đi gói dữ liệu giả mạo. Mục đích của kịch
bản này là lừa ngƣời dùng trong mạng mục tiêu truy cập vào website độc thay
vì website mà họ đang cố gắng truy cập.


17

1.2. Dịch vụ website.
1.2.1. Giới thiệu về Website
Website là một “trang web” đƣợc lƣu trữ tại các máy chủ hay các
hosting hoạt động trên Internet. Đây là nơi giới thiệu những thông tin, hình
ảnh về doanh nghiệp, sản phẩm và dịch vụ của doanh nghiệp hay giới thiệu
bất cứ thông tin gì để khách hàng có thể truy cập bất kì ở đâu, bất cứ lúc nào.
Website là tập hợp của nhiều web page. Khi doanh nghiệp, công ty xây
dựng website nghĩa là đang xây dựng nhiều trang thông tin về sản phẩm, dịch
vụ hay giới thiệu,... Để tạo nên một website cần có 3 yếu tố sau:
Tên miền (domain)
Thực chất một website không cần đến tên miền nó vẫn có thể hoạt động
bình thƣờng vì nó còn có địa chỉ IP của trang web đấy, chúng ta chỉ cần gõ
vào trình duyệt IP của trang web thì ngay lập tức trình duyệt sẽ load trang
web đấy về trình duyệt của bạn. Sỡ dĩ chúng ta cần phải có tên miền thay cho
IP là vì IP là mỗi chuỗi số thập phân, có những địa chỉ IP thì rất là dễ nhớ
nhƣng đa số địa chỉ IP thì rất là khó nhớ. Với cái tên nó rất gần gũi với ngôn
ngữ tự nhiên của con ngƣời nên rất là dễ nhớ cũng chính vì vậy mà ngƣời ta
đã thay tên miền cho IP và từ đó công nghệ DNS ra đời.

Ví dụ đơn giản để hiểu thêm tính năng của tên miền: Trong danh bạ điện
thoại của chúng ta nếu chúng ta lƣu số điện thoại mà không gán với một tên
thì chắc chắn một điều là chúng ta không thể nhớ hết đƣợc số điện thoại của
từng ngƣời và cũng không thể nào biết đƣợc số điện thoại này là của ai nhƣng
nếu chúng ta lƣu số một ai đó với một cái tên thì sau này khi cần gọi cho
ngƣời đó sẽ tìm trong danh bạ dễ dàng hơn.
Nơi lƣu trữ website (hosting)
Nơi lƣu trữ website thì bắt buộc chúng ta phải có, nó có thể là một máy
chủ để lƣu trữ hay một hosting chúng ta thuê từ nhà cung cấp dịch vụ.
Nội dung các trang thông tin (web page)
Nội dung trang thông tin này thì phải có vì mục đích của chúng ta lập
nên website nhằm đăng thông tin của chúng ta lên website hay giới thiệu các
thông tin của công ty.


×