Trong mạng ngang hàng, một node muốn giao tiếp với các node khác trong mạng
đều phải thông qua các node mà nó có liên kết trực tiếp tới, các node này được gọi là các
hàng xóm của nó. Trong quá trình các thông điệp được gửi, các node hàng xóm đóng vai
trò nhưcác bộ định tuyến, nó giúp chuyển tiếp các thông điệp tới đích một cách chính
xác. Đặc trưng này của mạng ngang hàng là điểm yếu mà kẻtấn công muốn lợi dụng. Một
kẻtấn công nếu điều khiển được các node hàng xóm của node chuẩn thì nó có thể“che
khuất” node chuẩn với các node khác trong mạng, hình thức tấn công nhưvậy được gọi là
tấn công che khuất.
Có một phương pháp phòng chống tấn công che khuất hiệu quả được Atul Singh –
một giảng viên của trường đại học Rice (Mỹ) cùng các đồng nghiệp đưa ra được trình bày
trong bài báo [1] đó là phương pháp kiểm tra ẩn danh dựa vào việc giới hạn bậc của các
node trong mạng. Đểcó thể đánh giá hiệu quảcủa phương pháp này, tôi đã xây dựng một
chương trình mô phỏng phương pháp kiểm tra ẩn danh, kết quảthửnghiệm cho thấy có
tới hơn 90% các node gây hại bịphát hiện.
54 trang |
Chia sẻ: nhungnt | Lượt xem: 1867 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Đề tài Chống tấn công che khuất trong các mạng ngang hàng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
1
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Mai Hữu Tiến
CHỐNG TẤN CÔNG CHE KHUẤT
TRONG CÁC MẠNG NGANG HÀNG
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin
Cán bộ hướng dẫn: TS. Nguyễn Đại Thọ
HÀ NỘI - 2009
CHỐNG TẤN CÔNG CHE KHUẤT TRONG CÁC MẠNG NGANG HÀNG
Khóa luận tốt nghiệp i Mai Hữu Tiến
Lời cảm ơn
Trước tiên, tôi xin chân thành cảm ơn các thày cô giáo trong khoa Công nghệ Thông
tin trường Đại học Công Nghệ - Đại học Quốc gia Hà Nội đã dạy dỗ và chỉ bảo nhiệt tình
cho tôi trong suốt bốn năm học qua.
Tôi xin gửi lời cảm ơn sâu sắc nhất tới TS. Nguyễn Đại Thọ - phó chủ nhiệm bộ
môn Mạng và Truyền thông máy tính, là người hướng dẫn trực tiếp cho tôi trong quá trình
thực hiện khóa luận. Thày đã cho tôi nhiều ý tưởng và kinh nghiệm quý báu để hoàn
thành khóa luận này.
Tôi xin chân thành cảm gia đình, bạn bè và người thân đã luôn động viên và giúp đỡ
tôi trong thời gian qua. Đây là chỗ dựa tinh thần vững chắc và là nguồn động viên to lớn
giúp tôi vượt qua khó khăn trong thời gian thực hiện khóa luận cũng như trong cuộc sống.
Tôi xin chân thành cảm ơn!
Hà Nội, ngày 24/05/2009
Sinh viên
Mai Hữu Tiến
CHỐNG TẤN CÔNG CHE KHUẤT TRONG CÁC MẠNG NGANG HÀNG
Khóa luận tốt nghiệp ii Mai Hữu Tiến
Tóm tắt
Trong mạng ngang hàng, một node muốn giao tiếp với các node khác trong mạng
đều phải thông qua các node mà nó có liên kết trực tiếp tới, các node này được gọi là các
hàng xóm của nó. Trong quá trình các thông điệp được gửi, các node hàng xóm đóng vai
trò như các bộ định tuyến, nó giúp chuyển tiếp các thông điệp tới đích một cách chính
xác. Đặc trưng này của mạng ngang hàng là điểm yếu mà kẻ tấn công muốn lợi dụng. Một
kẻ tấn công nếu điều khiển được các node hàng xóm của node chuẩn thì nó có thể “che
khuất” node chuẩn với các node khác trong mạng, hình thức tấn công như vậy được gọi là
tấn công che khuất.
Có một phương pháp phòng chống tấn công che khuất hiệu quả được Atul Singh –
một giảng viên của trường đại học Rice (Mỹ) cùng các đồng nghiệp đưa ra được trình bày
trong bài báo [1] đó là phương pháp kiểm tra ẩn danh dựa vào việc giới hạn bậc của các
node trong mạng. Để có thể đánh giá hiệu quả của phương pháp này, tôi đã xây dựng một
chương trình mô phỏng phương pháp kiểm tra ẩn danh, kết quả thử nghiệm cho thấy có
tới hơn 90% các node gây hại bị phát hiện.
CHỐNG TẤN CÔNG CHE KHUẤT TRONG CÁC MẠNG NGANG HÀNG
Khóa luận tốt nghiệp iii Mai Hữu Tiến
Mục lục
Lời cảm ơn.............................................................................................................................i
Tóm tắt..................................................................................................................................ii
Mục lục ............................................................................................................................... iii
Các chữ viết tắt .....................................................................................................................v
Hình ảnh ..............................................................................................................................vi
Đồ thị ...................................................................................................................................vi
Mở đầu..................................................................................................................................1
Chương 1. TỔNG QUAN VỀ MẠNG XẾP CHỒNG .........................................................4
1.1. Giới thiệu mạng xếp chồng ...........................................................................................4
1.2. Mạng xếp chồng ngang hàng.........................................................................................5
1.2.1. Tổng quan mạng xếp chồng ngang hàng không có cấu trúc ......................................6
1.2.2. Tổng quan mạng xếp chồng ngang hàng có cấu trúc .................................................6
1.3. Mạng xếp chồng ngang hàng có cấu trúc Pastry .........................................................10
1.3.1. Không gian định danh ..............................................................................................10
1.3.2. Thông tin dùng trong định tuyến..............................................................................11
1.3.3. Trạng thái node.........................................................................................................12
1.3.4. Phương pháp định tuyến...........................................................................................13
1.3.5. Khả năng tự tổ chức..................................................................................................14
1.3.6. Thực hiện định tuyến................................................................................................16
Chương 2. TẤN CÔNG TRONG MẠNG NGANG HÀNG .............................................18
2.1. Tấn công mạo nhận .....................................................................................................19
CHỐNG TẤN CÔNG CHE KHUẤT TRONG CÁC MẠNG NGANG HÀNG
Khóa luận tốt nghiệp iv Mai Hữu Tiến
2.2. Tấn công che khuất......................................................................................................20
2.3. So sánh tấn công mạo nhận và tấn công che khuất .....................................................22
Chương 3. CÁC CƠ CHẾ PHÒNG CHỐNG TẤN CÔNG CHE KHUẤT.......................23
3.1. Một số phương pháp phòng chống tấn công che khuất...............................................23
3.2. Cơ chế giới hạn bậc .....................................................................................................25
3.3. Cơ chế kiểm tra ẩn danh ..............................................................................................28
Chương 4. MÔ PHỎNG VÀ ĐÁNH GIÁ CƠ CHẾ KIỂM TRA ẨN DANH DỰA TRÊN
PASTRY.............................................................................................................................33
4.1. Hình trạng mạng và các file thư viện liên kết động ....................................................33
4.1.1. Hình trạng mạng mô phỏng......................................................................................33
4.1.2. Các file thư viện liên kết động trong chương trình ..................................................34
4.2. Xây dựng chương trình mô phỏng kiểm tra ẩn danh...................................................35
4.2.1. Mô tả chương trình ...................................................................................................35
4.2.2. Các file chương trình ................................................................................................37
4.3. Thí nghiệm và nhận xét ...............................................................................................40
4.3.1. Thí nghiệm 1.............................................................................................................41
4.3.2. Thí nghiệm 2.............................................................................................................42
4.3.3. Nhận xét....................................................................................................................44
Chương 5. KẾT LUẬN ......................................................................................................46
Tài liệu tham khảo ..............................................................................................................47
CHỐNG TẤN CÔNG CHE KHUẤT TRONG CÁC MẠNG NGANG HÀNG
Khóa luận tốt nghiệp v Mai Hữu Tiến
Các chữ viết tắt
Từ viết tắt Từ gốc Nghĩa tiếng Việt
CRT Constraints routing table Ràng buộc bảng định tuyến
DHT Distributed hash table Bảng băm phân tán
GT-ITM Georgia Tech Internetwork Topology
Models
Mô hình topo liên mạng của
trường Georgia
PNS Proximity neighbor selection Lựa chọn hàng xóm lân cận
P2P Peer to peer Mạng ngang hàng
CHỐNG TẤN CÔNG CHE KHUẤT TRONG CÁC MẠNG NGANG HÀNG
Khóa luận tốt nghiệp vi Mai Hữu Tiến
Hình ảnh
Hình 1: Không gian định danh Pastry 4 bit với sáu khóa được ánh xạ vào năm node......10
Hình 2: Bảng định tuyến, tập lá, tập lân cận của node có định danh 10233102 ...............12
Hình 3: Các node gây hại chia mạng xếp chồng ra làm hai mạng con.............................20
Hình 4: Tập Con trỏ ngược - Back pointer set ..................................................................27
Hình 5: A kiểm tra B thông qua node trung gian I ............................................................28
Hình 6: Minh họa mạng giao vận nhánh – Transit stub ....................................................33
Hình 7:Các loại thông điệp trong kiểm tra ẩn danh...........................................................37
Đồ thị
Biểu đồ 1: Tỉ lệ node gây hại bị phát hiện trong thí nghiệm 1 ..........................................41
Biểu đồ 2: Tỉ lệ node chuẩn không vượt qua được kiểm tra trong thí nghiệm 1...............42
Biểu đồ 3:Tỉ lệ node gây hại bị phát hiện trong thí nghiệm 2 ...........................................43
Biểu đồ 4: Tỉ lệ node chuẩn bị kết luận nhầm là node gây hại trong thí nghiệm 2...........43
CHỐNG TẤN CÔNG CHE KHUẤT TRONG CÁC MẠNG NGANG HÀNG
Khóa luận tốt nghiệp 1 Mai Hữu Tiến
Mở đầu
Số người dùng Internet tính đến năm 2008 là hơn 1,46 tỉ người (số liệu từ trang
Internetworldstats.com) so với 35.000 người năm 1987 và tăng tới 46% trong hai năm từ
2006 đến 2008 (theo tờ Washington Post), điều này chứng tỏ Internet đang có tốc độ tăng
trưởng rất cao trên toàn thế giới. Với sự phát triển nhanh của số người dùng Internet như
vậy, mô hình phục vụ client-server đang dần bộc lộ điểm yếu của mình đó là việc quá tải
băng thông dẫn đến server không thể đáp ứng hết tất cả yêu cầu từ phía client khi lượng
client kết nối tới server quá cao. Một trong những công nghệ được hi vọng có thể giải
quyết việc quá tải băng thông trong mô hình client-server đó chính là công nghệ mạng
ngang hàng. Ngày nay, mạng ngang hàng đang dần trở nên phổ biến và thu hút được rất
nhiều sự quan tâm của người dùng, các nhà phát triển ứng dụng và các nhà nghiên cứu.
Giống như mô hình client-server, mạng ngang hàng cũng phải đối mặt với nguy cơ bị tấn
công từ phía những kẻ xấu muốn phá hoại mạng và khống chế máy tính của người sử
dụng.
Một trong những mục đích chính của người sử dụng Internet đó là chia sẻ dữ liệu
mà mình có như các bộ phim, hình ảnh, bài hát… với người thân và những người khác
trên toàn thế giới, công nghệ mạng ngang hàng có thể đáp ứng tốt nhu cầu này và nó đang
được sử dụng phổ biến. Có những lúc cao điểm, mạng chia sẻ file ngang hàng đã chiếm
tới 90% băng thông của mạng Internet (theo tờ Washington Post). Ngoài ứng dụng chia sẻ
file, còn có một ứng dụng nổi bật dựa trên mạng ngang hàng không thể không nói tới đó
là ứng dụng gửi tin nhắn tức thời với các nhà cung cấp dịch vụ nổi tiếng như ICQ, Yahoo,
AOL,... Mạng ngang hàng đã quá phổ biến và đang là mục tiêu phá hoại của những kẻ
xấu. Sẽ là thảm họa lớn cho người dùng khi bị kẻ xấu tấn công, nhất là trong mạng ngang
hàng, bởi các máy tham gia vào mạng đều bình đẳng với nhau, thường không có một sự
quản lý tập trung nào trong mạng. Do đó, kẻ tấn công có thể dễ dàng gia nhập vào mạng
thực hiện các hành vi phá hoại như ngăn cản giao tiếp giữa các máy, khống chế việc gửi
và nhận dữ liệu, cấy các chương trình phá hoại vào máy người dùng, phát tán các mã
độc… Các dạng tấn công thường gặp trong mạng ngang hàng đó là: tấn công mạo nhận,
tấn công che khuất, tấn công bằng các file độc … Trong các cách tấn công này, thì tấn
công che khuất là phổ biến và khó phòng chống nhất. Muốn thực hiện tấn công che khuất,
CHỐNG TẤN CÔNG CHE KHUẤT TRONG CÁC MẠNG NGANG HÀNG
Khóa luận tốt nghiệp 2 Mai Hữu Tiến
kẻ tấn công phải đưa các node gây hại vào trong tập hàng xóm của các node chuẩn, nếu tỉ
lệ node gây hại trong tập hàng xóm của các node chuẩn càng cao thì hiệu quả của tấn
công che khuất sẽ càng cao. Để có thể đưa các node phá hoại vào các tập hàng xóm, node
phá hoại thường lợi dụng quá trình node mới tham gia vào mạng và quá trình cập nhật tập
hàng xóm theo chu kì. Trong các quá trình này, tập hàng xóm của các node chuẩn sẽ được
bổ xung node mới và thay thế các node lỗi, đây thời cơ thích hợp để node gây hại được
đưa vào trong tập hàng xóm của các node chuẩn. Khi đã chiếm được nhiều vị trí trong tập
hàng xóm của các node chuẩn, node gây hại có thể “che khuất” các node chuẩn với các
node khác trong mạng, bởi khi gửi thông điệp cho các node khác đều phải qua các node
gây hại trong tập hàng xóm, do đó mọi giao tiếp của node chuẩn với các node khác đều bị
node gây hại khống chế và kiểm soát. Với cách thức tấn công như vậy, các node gây hại
có thể khống chế toàn bộ băng thông và dữ liệu truyền trong mạng khi đã “che khuất”
được nhiều node chuẩn.
Trước các tác hại do tấn công che khuất có thể gây ra, vấn đề cấp thiết đó là cần có
một cơ chế hiệu quả ngăn chặn các hành vi “che khuất” của các node gây hại trong mạng
ngang hàng để đảm bảo cho mạng hoạt động bình thường và ổn định. Phương pháp chống
tấn công che khuất có thể được áp dụng trong kháng lỗi của mạng và để xây dựng mô
hình kháng lỗi Byzantine[7] trong mạng nói chung và mạng ngang hàng nói riêng. Sự
nguy hiểm của tấn công che khuất cùng với sự phổ biến của mạng ngang hàng cho ta thấy
ý nghĩa to lớn và tầm quan trọng của chống tấn công che khuất trong thực tiễn. Do các
yêu cầu thực tế đó, khóa luận này sẽ nghiên cứu phương pháp phòng chống tấn công che
khuất, cụ thể là phương pháp được nêu ra trong bài báo [1] của tác giả Atul Singh cùng
các đồng nghiệp tại trường đại học Rice của Mỹ. Trong bài báo này đã đưa ra một phương
pháp phòng chống tấn công che khuất bằng cách tiến hành kiểm tra ẩn danh các node
hàng xóm, kết hợp với việc giới hạn bậc của các node tham gia vào mạng để tìm ra các
node gây hại và loại bỏ chúng ra khỏi tập hàng xóm. Phương pháp này lấy ý tưởng từ thực
tế đó là một node gây hại muốn thực hiện tấn công che khuất cần có bậc trong và bậc
ngoài (hay số liên kết vào và liên kết ra của node) rất cao, cao hơn bậc trong và bậc ngoài
của các node chuẩn khác, do đó để hạn chế tấn công cần làm giảm bậc của các node gây
hại, và có thể phát hiện các node gây hại bằng việc kiểm tra ẩn danh các node có trong
CHỐNG TẤN CÔNG CHE KHUẤT TRONG CÁC MẠNG NGANG HÀNG
Khóa luận tốt nghiệp 3 Mai Hữu Tiến
mạng. Đáng chú ý là phương pháp này có thể áp dụng cho cả hai dạng mạng ngang hàng
có cấu trúc và không có cấu trúc.
Do không có được mã nguồn chương trình của tác giả dùng trong bài báo[1], tôi đã
vận dụng kiến thức tìm hiểu được trong bài báo để tự xây dựng một chương trình mô
phỏng hoạt động của cơ chế kiểm tra ẩn danh trong mạng ngang hàng có cấu trúc Pastry.
Sau khi chạy chương trình mô phỏng cơ chế kiểm tra ẩn danh để phát hiện các node gây
hại trong mạng, kết quả thu được là rất cao, có tới 90% các node gây hại bị phát hiện dựa
vào cơ chế kiểm tra này.
Khóa luận này được trình bày theo năm chương chính, nội dung chính gồm:
Chương 1. Tổng quan về mạng xếp chồng: giúp ta hiểu mạng xếp chồng là gì và các
dạng mạng xếp chồng phổ biến của nó, cùng với mô tả chi tiết mạng xếp chồng ngang
hàng có cấu trúc Pastry.
Chương 2. Tấn công trong mạng ngang hàng: đề cập đến hai dạng tấn công chính
trong mạng ngang hàng là tấn công che khuất và tấn công mạo nhận.
Chương 3. Các cơ chế phòng chống tấn công che khuất: nêu ra các biện pháp chống
tấn công che khuất với biện pháp chính là kiểm tra ẩn danh dựa vào giới hạn bậc của các
node trong mạng.
Chương 4: Mô phỏng và đánh giá cơ chế kiểm tra ẩn danh dựa trên Pastry: trình
bày về xây dựng chương trình mô phỏng cùng với kết quả và nhận xét các thí nghiệm mô
phỏng.
Chương 5. Kết luận: đưa ra các nhận xét tổng quát về chống tấn công che khuất dựa
vào kiểm tra ẩn danh.
CHỐNG TẤN CÔNG CHE KHUẤT TRONG CÁC MẠNG NGANG HÀNG
Khóa luận tốt nghiệp 4 Mai Hữu Tiến
Chương 1. TỔNG QUAN VỀ MẠNG XẾP CHỒNG
1.1. Giới thiệu mạng xếp chồng
Sự phát triển nhanh chóng của khoa học máy tính đang biến đổi cuộc sống của
chúng ta từng ngày. Chưa bao giờ con người có thể giao tiếp, trao đổi thông tin và dữ liệu
cho nhau thuận tiện và dễ dàng như ngày nay, đó là nhờ vào mạng Interner. Mạng Internet
giúp liên kết các vùng miền, các quốc gia, các châu lục, nó mang cả thế giới đến gần nhau
hơn bất chấp khoảng cách địa lý. Mạng Internet là một dạng mạng xếp chồng phổ biến
nhất, đa phần các mạng mà chúng ta đang sử dụng là mạng xếp chồng. Vậy mạng xếp
chồng là gì?
Định nghĩa cho mạng xếp chồng [5] là:
Mạng xếp chồng là một mạng ảo bao gồm các node và các kết nối vật lý được xây
dựng dựa trên một mạng có sẵn với mục đích cung cấp các dịch vụ mạng mà mạng nó
dựa trên không thể đáp ứng được.
Mạng xếp chồng là một lớp của kiếm trúc mạng ảo dựa trên mạng vật lý, chúng
cung cấp khả năng tương tác trực tiếp với người dùng. Mạng Internet chúng ta đang sử
dụng là một mạng xếp chồng được xây dựng dựa trên mạng cục bộ (ví dụ như Ethernet),
đường điện thoại. Mạng xếp chồng cung cấp cho chúng ta rất nhiều tiện ích cùng với cơ
hội tiếp cận và sử dụng một lượng lớn tài nguyên không ngừng tăng cao có trên mạng
Internet. Mạng xếp chồng cho phép các nhà phát triển mạng cùng người sử dụng có thể
thiết kế và cài đặt dễ dàng môi trường truyền thông của riêng mình hay một giao thức
thức dựa trên mạng Internet, cũng như định tuyến dữ liệu và quản lý các file được chia sẻ.
Việc định tuyến dữ liệu trong mạng xếp chồng rất linh hoạt, nó có thể phát hiện và tránh
tắc nghẽn mạng một cách nhanh chóng bằng cách chuyển đổi tuyến đường đi dựa trên
nhiều độ đo khác nhau, ví dụ như thăm dò độ trễ. Các node trong mạng xếp chồng được
liên kết tới rất nhiều các node khác nhờ vào cơ chế định tuyến mềm dẻo. Cũng giống như
các liên kết mạng vật lý đã có, một node có thể giao tiếp liên tục với một node khác thông
qua mạng xếp chồng. Với những lợi ích mà mạng xếp chồng mang lại, việc phát triển
mạng xếp chồng là một xu hướng tất yếu trong tương lai. Với việc có càng nhiều node
CHỐNG TẤN CÔNG CHE KHUẤT TRONG CÁC MẠNG NGANG HÀNG
Khóa luận tốt nghiệp 5 Mai Hữu Tiến
tham gia vào mạng xếp chồng sẽ giúp cho việc chia sẻ lượng lớn tài nguyên thông tin
mạng Internet càng đạt hiệu quả cao.
Các dạng điển hình của mạng xếp chồng bao gồm:
• Mạng xếp chồng đa phát (Multicast overlay)
• Mạng xếp chồng ngang hàng (Peer-to-peer overlay)
• Mạng xếp chồng tải file song song (Parallel file downloading overlay)
• Mạng định tuyến xếp chồng (Routing overlay)
Có rất nhiều ứng dụng của mạng xếp chồng đang được sử dụng rộng rãi trong cuộc
sống như ứng dụng chia sẻ file BitTorrent, hay điện thoại VoIP của Skyper… Nhưng
trong bài khóa luận này chỉ chú trọng đến mạng xếp chồng ngang hàng. Mạng xếp chồng
ngang hàng được chia ra làm hai dạng chính là mạng xếp chồng có cấu trúc (Structured
overlay network) và mạng xếp chồng không có cấu trúc (Unstructured overlay network).
1.2. Mạng xếp chồng ngang hàng
Mạng ngang hàng dựa trên hệ thống mạng xếp chồng đã thu hút được rất nhiều sự
quan tâm của các nhà nghiên cứu và đã có nhiều hệ thống được xây dựng và đưa vào sử
dụng trong cuộc sống hàng ngày. Có thể kể đến như ứng dụng chia sẻ file ngang hàng
Gnutella, Kazaa. Ngoài ra, còn có rất nhiều các nghiên cứu hoạt động của Bảng băm
phân tán (Distributed Hash Table) trên mạng xếp chồng như CAN, Chord và Pastry.
Hệ thống xếp chồng ngang hàng được mô tả như một hệ thống phân tán, trong đó tất
cả các node có vai trò như nhau và tất cả giao tiếp là đối xứng. Hệ thống này có rất nhiều
khả năng quan trọng như: phân quyền điều khiển, tự tổ chức, khả năng điều chỉnh và mở
rộng.