LỜI CAM ĐOAN Tôi xin cam đoan bản luận văn ―Nghiên cứu cơ chế thâm nhập hệ thống máy tính thông qua lỗ hổng bảo mật và ứng dụng trong công tác đảm bảo an ninh mạng‖ là công trình nghiê
Trang 1Tôi xin chân thành cảm ơn các thầy cô giáo khoa Công nghệ Thông tin, trường Đại học Công nghệ Thông Tin & TT, những người đã tận tình truyền đạt các kiến thức, quan tâm, động viên trong suốt thời gian tôi học tập và nghiên cứu tại Trường
Tôi xin chân thành cảm ơn Trường Đại học Điều Dưỡng Nam Định – Đơn vị mà tôi đang công tác đã hết sức tạo điều kiện về thời gian cũng như vật chất, tinh thần để tôi
có thể hoàn thành nhiệm vụ học tập của mình
Nhân đây cho phép tôi gửi lời cảm ơn tới nhóm các bạn học cùng lớp CK09D, lớp chuyên ngành Khoa học Máy Tính, các bạn đồng nghiệp đã thường xuyên quan tâm, giúp
đỡ, chia sẻ kinh nghiệm, cung cấp các tài liệu hữu ích trong thời gian tôi học tập, nghiên cứu tại Trường cũng như trong trong quá trình thực hiện luận văn tốt nghiệp vừa qua
Cuối cùng tôi xin bảy tỏ sự biết ơn sâu sắc đến cha mẹ, những người thân trong gia đình đã luôn ở bên tôi, động viên, chia sẻ và dành cho tôi những gì tốt đẹp nhất trong suốt thời gian tôi học cao học cũng như trong thời gian tôi thực hiện luận văn tốt nghiệp này
Thái Nguyên, tháng 11 năm 2012
Trang 2LỜI CAM ĐOAN
Tôi xin cam đoan bản luận văn ―Nghiên cứu cơ chế thâm nhập hệ thống máy tính thông
qua lỗ hổng bảo mật và ứng dụng trong công tác đảm bảo an ninh mạng‖ là công trình
nghiên cứu của tôi dưới sự hướng dẫn khoa học của TS Nguyễn Ngọc Cương, tham khảo các nguồn tài liệu đã được chỉ rõ trong trích dẫn và danh mục tài liệu tham khảo Các nội dung công bố và kết quả trình bày trong luận văn này là trung thực và chưa từng được ai công bố trong bất cứ công trình nào
Thái Nguyên, tháng 11 năm 2012
Trương Hồng Tiệp
Trang 3- III -
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
MỤC LỤC LỜI CẢM ƠN I LỜI CAM ĐOAN II MỤC LỤC III DANH MỤC CÁC HÌNH VẼ VÀ BẢNG BIỂU VI MỞ ĐẦU 1
Chương 1: TỔNG QUAN VỀ BẢO MẬT HỆ THỐNG MÁY TÍNH 2
1.1 An toàn bảo mật thông tin 2
1.1.1 Khái niệm an toàn bảo mật thông tin 2
1.1.2 Hệ thống và tài sản của hệ thống máy tính 3
1.1.3 Đặc trưng kỹ thuật của an toàn bảo mật 3
1.1.4 Các mức an toàn bảo mật 5
1.2 Lỗ hổng bảo mật 6
1.2.1 Khái niệm lỗ hổng bảo mật 6
1.2.2 Các loại lỗ hổng bảo mật 7
1.2.3 Một số lỗ hổng bảo mật phổ biến 8
1.3 Nguy cơ bị tấn công đối với hệ thống máy tính 15
1.3.1.Tấn công một hệ thống máy tính qua mạng 15
1.3.2.Một số kỹ thuật tấn công 16
Chương 2: PHƯƠNG PHÁP THÂM NHẬP HỆ THỐNG MÁY TÍNH DỰA TRÊN KHAI THÁC LỖ HỔNG BẢO MẬT 20
2.1.Tấn công Injection 20
2.1.1 Khái niệm 20
2.1.2 Các dạng tấn công SQL Injection 20
Trang 42.1.3 Phòng chống tấn công Injection 22
2.2 Tấn công từ chối dịch vụ 23
2.2.1 Tấn công thông qua kết nối (SYN Flood) 24
2.2.2 Lợi dụng tài nguyên của nạn nhân để tấn công 25
2.2.3 Tấn công từ chối dịch vụ phân tán (Distribute Denial of Service) 25
2.2.4 Tấn công từ chối dịch vụ phản xạ nhiều vùng (Distribute Reflection Denial of Service) 29
2.2.5 Tấn công từ chối dịch vụ bằng sử dụng các nguồn tài nguyên khác 29
2.2.6 Phòng chống tấn công từ chối dịch vụ 30
2.3 Tấn công tràn bộ đệm (Buffer Overflow) 31
2.3.2 Cơ chế khai thác lỗi tràn bộ đệm 38
2.3.3 Phòng chống tấn công tràn bộ đệm 38
2.4 Tổng kết phương thức khai thác lỗ hổng bảo mật để tấn công hệ thống máy tính 40
Chương 3: MỘT SỐ GIẢI PHÁP ĐẢM BẢO AN NINH CHO HỆ THỐNG MÁY TÍNH 41
3.1 Thiết kế giải pháp an toàn an ninh cho hệ thống 41
3.1.1 Các chiến lược an toàn hệ thống 41
3.1.2 Các mức bảo vệ trên mạng 42
3.1.3 Các bước để xây dựng giải pháp tổng thể 44
3.2 Giải pháp Firewall 45
3.2.1 Khái niệm 45
3.2.2 Phân loại Firewall 45
3.2.3 Kiến trúc hệ thống mạng sử dụng Firewall 47
3.3 Giải pháp mạng riêng ảo (VPN) 49
Trang 5- V -
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
3.3.1 Khái niệm 49
3.3.2 Các mô hình triển khai VPN 49
3.4 Hệ thống phát hiện xâm nhập (IDS) 50
3.4.1 Khái niệm 50
3.4.2 Chức năng của IDS 51
3.4.3 Kiến trúc của hệ thống IDS 52
3.4.4 Cách thức IDS làm việc 52
3.4.5.Một số phương pháp phát hiện xâm nhập của IDS 56
Chương 4:CÀI ĐẶT THỬ NGHIỆM CHƯƠNG TRÌNH KHAI THÁC LỖ HỔNG BẢO MẬT TRÊN HỆ THỐNG MÁY TÍNH 57
4.1 Xây dựng chương trình khai thác lỗi tràn bộ đệm 57
4.1.1 Shellcode 58
4.1.2 Viết chương trình khai thác lỗi tràn bộ đệm 63
4.2 Cài đặt thử nghiệm bộ công cụ bảo mật sử dụng trong công tác đảm bảo an ninh hệ thống mạng 73
4.2.1 Tìm hiểu một số phần mềm bảo mật 73
4.2.2 Xây dựng bộ công cụ 76
KẾT LUẬN 79
TÀI LIỆU THAM KHẢO 80
Trang 6DANH MỤC CÁC HÌNH VẼ VÀ BẢNG BIỂU
Hình 1-1 Kiến trúc Ứng dụng Web 9
Bảng 1-2 Các công nghệ và thông tin quan trọng mà hacker muốn nhận diện 15
Hình 2-1 Minh họa tấn công DoS 24
Hình 2-2 Tấn công từ chối dịch vụ thông qua kết nối 24
Hình 2-3 Mô hình tấn công DdoS 26
Hình 2-4 Sơ đồ chính phân loại các kiểu tấn công DDoS 27
Hình 2-5 : Kiến trúc attack – network kiểu Agent – Handler 27
Hình 2-6 Kiến trúc attack – network kiểu IRC – Based 28
Hình 2-7 Mô hình tấn công theo kiểu DRDoS 29
Hình 2-8 Mô hình tấn công Smurf attack 30
Hình 2-9 Mô hình tấn công Teardrop Attack 30
Hình 2-10 Đoạn code chứa lỗi tràn bộ đệm 32
Hình 2-11 Giá trị khởi tạo của dữ liệu trên bộ nhớ đệm 33
Hình 2-12 Ghi xâu ký tự mới vào bộ đệm 33
Hình 2-13 Tổ chức bộ nhớ của tiến trình 33
Hình 2.14: Hoạt động của dữ liệu trên Stack 34
Hình 2-15 Bước khởi tạo của hàm 37
Hình 2-16 Hai thanh ghi cùng trỏ đến một địa chỉ 37
Hình 2-17 Lệnh thứ ba được thực hiện 38
Hình 3-1 Quy trình để xây dựng giải pháp cụ thể 44
Hình 3-2 Packet filtering firewall 46
Hình 3-3 Circuitlevel gateway 46
Hình 3-4 Application level gateway 47
Trang 7- VII -
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Hình 3-5 Stateful multilayer inspection Firewall 47
Hình 3-6 Kiến trúc hệ thống mạng sử dụng Firewall 47
Hình 3-7 Các thành phần của hệ thống Firewall 48
Hình 3-8 Giải pháp IPSec VPN 50
Hình 3-8 Giải pháp SSL VPN 50
Hình 3-9 Hệ thống mạng sử dụng IDS 51
Hình 3-10 Kiến trúc hệ thống IDS 52
Hình 3-11 Network-Based IDS (NIDS) 53
Hình 3-12 Host Based IDS (HIDS) 54
Hình 3-13 Hệ thống phát hiện xâm nhập phân tán (DIDS) 56
Hình 4-1 Tổ chức shellcode trên bộ nhớ 61
Hình 4-2 Trạng thái stack trước và sau khi tràn bộ đệm 61
Hình 4-3 Các khả năng sắp xếp biến trên stack 62
Hình 4-4 Kết quả xác định địa chỉ Shellcode 63
Hình 4-5 Kết quả truyền Shellcode vào bộ điệm 67
Hình 4-6 Kết quả truyền Shellcode vào biến môi trường 69
Hình 4-7 Kết quả chạy chương trình khai thác lỗi 71
Hình 4-8 Kết quả chạy chương trình kiểm tra hoạt động của Stack 72
Hình 4-9 Giao diện phần mềm Spade 73
Hình 4-10 Thông tin thu được từ Website 74
Hình 4.11 Giao diện chương trình Web Vulnerability Scanner 75
Hình 4-12 Giao diện phần mềm Nmap 76
Hình 4-13 Giao diện bộ công cụ bảo mật 77
Hình 4-14 Hiển thị chức năng của bộ công cụ 78
Trang 8Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
MỞ ĐẦU
Trong những năm gần đây, việc xâm nhập, tấn công mạng của hacker và tội phạm mạng nhằm vào các hệ thống máy tính ở Việt Nam và trên thế giới có xu hướng ngày càng gia tăng, gây nhiều hậu quả nghiêm trọng về kinh tế và chính trị
Các cuộc tấn công vào các hệ thống máy tính có thể được tiến hành bằng nhiều kỹ thuật khác nhau Trong đó, đặc biệt có các cuộc tấn công thông qua khai thác lỗ hổng bảo mật của hệ thống và ứng dụng Do một số ứng dụng hiện nay thường sử dụng các mã nguồn mở nên có nhiều lỗi sẽ gây ra các lỗ hổng, dẫn đến các hệ thống sử dụng các phần mềm này có thể bị tấn công
Chính vì vậy, việc tìm kiếm, phát hiện các lỗ hổng trên hệ thống máy tính để hiểu được cơ chế và kỹ thuật xâm nhập chúng là cần thiết trong phòng chống sự tấn công của hacker vào hệ thống
Đây là lý do để chúng tôi lựa chọn đề tài: “Nghiên cứu cơ chế thâm nhập hệ
thống máy tính thông qua lỗ hổng bảo mật và ứng dụng trong công tác đảm bảo an ninh mạng”
1 Mục tiêu của đề tài
Tìm hiểu các lỗ hổng bảo mật của hệ thống và ứng dụng, bản chất quá trình thâm nhập tấn công của hacker vào hệ thống máy tính thông qua khai thác lỗ hổng bảo mật và đưa ra phương pháp phòng tránh đảm bảo an ninh máy tính và mạng máy tính
2 Nội dung nghiên cứu
Nghiên cứu, tìm hiểu một số lỗ hổng bảo mật phổ biến trên hệ thống máy tính như:
lỗ hổng bảo mật ứng dụng Web, Internet Explorer, Window Microsoft,
Nghiên cứu các phương pháp thâm nhập hệ thống máy tính trên cơ sở khai thác các
lỗ hổng bảo mật như: Buffer Overflow (tràn bộ đệm), tấn công từ chối dịch vụ, tấn công Injection,
Viết chương trình thử nghiệm tấn công bằng kết hợp phương pháp gây tràn bộ đệm
và cài đặt vào máy cần tấn công thông qua lỗ hổng bảo mật
Nghiên cứu các phương pháp, công cụ để dò tìm, phát hiện lỗ hổng bảo mật thông qua các công cụ bảo mật như: Retina, Backtrack,
Đề xuất một số phương pháp kiểm tra và phát hiện sự xâm nhập
Trang 9- 2 -
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
3 Phương pháp nghiên cứu
Phương pháp tổng hợp: thu thập tài liệu, đối chiếu, so sánh, phân tích, liệt kê, đối sánh, trực quan, thực nghiệm,
Phương pháp chuyên gia: tìm hiểu các hệ thống máy tính, xây dựng hệ thống hoàn chỉnh, các phần mềm phát hiện lỗ hổng bảo mật, thâm nhập hệ thống
Nghiên cứu ngôn ngữ lập trình để viết chương trình gây tràn bộ đệm
Phương pháp thực nghiệm: sử dụng mạng máy tính để thực hành xâm nhập thông qua lỗ hổng bảo mật
4 Cấu trúc luận văn
Chương 1: TỔNG QUAN VỀ BẢO MẬT HỆ THỐNG MÁY TÍNH
1.1 An toàn bảo mật thông tin
1.1.1 Khái niệm an toàn bảo mật thông tin
Ngày nay, với sự phát triển bùng nổ của công nghệ thông tin, hầu hết các thông tin của tổ chức, doanh nghiệp như chiến lược kinh doanh, các thông tin về khách hàng, điều được lưu trữ trên hệ thống máy tính Cùng với sự phát triển của các cơ quan, tổ chức, doanh nghiệp là những đòi hỏi ngày càng cao của môi trường làm việc nhanh chóng, hiệu quả nên thông tin cần được chia sẻ cho nhiều đối tượng khác nhau thông qua môi trường Intranet hay Internet Việc mất mát, rò rỉ thông tin có thể ảnh hưởng nghiêm trọng đến tài chính, danh tiếng, của các cơ quan, tổ chức
Các phương thức tấn công thông qua mạng ngày càng tinh vi, phức tạp có thể dẫn đến mất mát thông tin, thậm chí có thể làm sụp đổ hoàn toàn hệ thống thông tin của tổ chức Vì vậy an toàn bảo mật thông tin là nhiệm vụ rất nặng nề và khó đoán trước được
An toàn bảo mật (an ninh) thông tin là cách bảo vệ, đảm bảo cho tất cả các thành phần của hệ thống máy tính bao gồm dữ liệu, thiết bị, cơ sở hạ tầng mạng, và đảm bảo mọi tài nguyên được sử dụng tương ứng với một chính sách hoạt động được ấn định và với chỉ người có thẩm quyền tương ứng
An toàn bảo mật thông tin gồm 3 hướng chính sau:
- Đảm bảo an toàn thông tin tại máy chủ
- Bảo đảm an toàn thông tin phía máy trạm
- Bảo đảm an toàn thông tin trên đường truyền
An toàn bảo mật thông tin bao gồm:
Trang 10Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
- Xác định chính sách các khả năng, nguy cơ xâm phạm hệ thống máy tính, các sự
cố rủi ro đối với thiết bị, dữ liệu trên hệ thống để có giải pháp phù hợp đảm bảo an toàn cho hệ thống
- Đánh giá nguy cơ tấn công của hacker tác động đến hệ thống, sự phát tán virus
An toàn bảo mật hệ thống thông tin là một trong những vấn dề cực kỳ quan trọng trong các hoạt đọng, giao dịch điện tử và trong việc khai thác, sử dụng tài nguyên của hệ thống
- Xác định chính xác cấp độ an toàn, đánh giá nguy cơ, các lỗ hổng khiến hệ thống
có thể bị xâm phạm thông qua cách tiếp cận có cấu trúc Xác định những nguy cơ ăn cắp, phá hoại máy tính, thiết bị, nguy cơ virus, bọ gián điệp, nguy cơ xóa, phá hoại CSDL, ăn cắp mật khẩu, nguy cơ đối với sự hoạt động của hệ thống như nghẽn mạng, nhiễu điện tử Khi đánh giá được hết những nguy cơ ảnh hưởng tới an ninh mạng thì mới có thể có được những biện pháp tốt nhất để đảm bảo an toàn cho hệ thống
- Sử dụng hiệu quả các công cụ bảo mật (như Firewall ) và những biện pháp, chính sách cụ thể chặt chẽ
1.1.2 Hệ thống và tài sản của hệ thống máy tính
Hệ thống là một tập hợp các máy tính gồm các thành phần phần cứng, phần mềm
và dữ liệu làm việc được tích lũy qua thời gian
Tài sản của hệ thống bao gồm:
1.1.3 Đặc trưng kỹ thuật của an toàn bảo mật
- Xác thực (Authentification): Kiểm tra tính xác thực của một thực thể giao tiếp trên
mạng Một thực thể có thể là một người sử dụng, một chương trình máy tính, hoặc một thiết bị phần cứng Các hoạt động kiểm tra tính xác thực được đánh giá là quan trọng nhất trong các hoạt động của một phương thức bảo mật Một hệ thống thông thường phải thực hiện kiểm tra tính xác thực của các phương thức bảo mật dựa vào 3 mô hình chính sau:
+ Đối tượng cần kiểm tra phải cung cấp những thông tin trước, ví dụ như password, hoặc mã số thông tin cá nhân PIN (Personal Infomation Number)
+ Kiểm tra dựa vào mô hình những thông tin đã có, đối tượng kiểm tra cần phải thể hiện những thông tin mà chúng sở hữu, ví dụ như Private Key, hoặc số thẻ tín dụng
Trang 11data error !!! can't not
read
Trang 12data error !!! can't not
read
Trang 13data error !!! can't not
read
Trang 14data error !!! can't not
read
Trang 15data error !!! can't not
read
Trang 17data error !!! can't not
read
Trang 18data error !!! can't not
read
Trang 19data error !!! can't not
read
Trang 20data error !!! can't not
read
Trang 21data error !!! can't not
read
Trang 22data error !!! can't not
read
data error !!! can't not
read
Trang 23data error !!! can't not
read
data error !!! can't not
read
Trang 24data error !!! can't not
read
data error !!! can't not
read
Trang 26data error !!! can't not
read
Trang 27data error !!! can't not
read