Đồ án Nghiên cứu đánh giá hệ thống an ninh mạng và sử dụng Foundstone để đánh giá điểm yếu an ninh

MụC LụC

MụC LụC 1

DANH MụC HìNH Vẽ 6

DANH MụC CáC SƠ Đồ 7

GIảI THíCH THUậT NGữ 8

LờI Mở ĐầU 10

CHƯƠNG I: MộT Số Lý THUYếT CƠ BảN 13

1.1. MÔ HìNH OSI 13

1.1.1. Khái niệm mô hình OSI 13

1.1.2. Các tầng trong mô hình OSI 13

1.2. GIAO THứC TCP/IP 17

1.2.1. Khái niệm giao thức TCP/IP 17

1.2.2. Các tầng trong giao thức TCP/IP 17

1.3. GIAO THứC UDP 19

1.4. ĐịA CHỉ IP 19

1.5. TELNET 20

1.5.1. Telnet là gì? 20

1.5.2. Một số lệnh căn bản của Telnet 20

1.6. DNS Và DNS SERVER 21

1.6.1. DNS 21

1.6.2. DNS Server 21

1.7. PING 22

1.7.1. Ping là gì? 22

1.7.2. Cách thức hoạt động của Ping 23

1.8. Hệ ĐIềU HàNH UNIX 23

1.9. Hệ ĐIềU HàNH LINUX 24

1.10. Hệ ĐIềU HàNH WINDOWS 25

CHƯƠNG II: NHữNG ĐIểM YếU TRONG BảO MậT 27

2.1. PHÂN LOạI Lỗ HổNG BảO MậT 27

2.1.1. Các lỗ hổng loại C 27

2.1.2. Các lỗ hổng loại B 27

2.1.3. Các lỗ hổng loại A 29

2.2. NHữNG ĐIểM YếU TRONG BảO MậT 29

2.2.1. Các kẽ hở trong giao thức 29

2.2.1.1. Giao thức SMTP (RFC 821, 2821) 30

2.2.1.2. Giao thức LDAP (RFC 1777, 3384) 30

2.2.1.3. Giao thức DHCP (RFC 2131, 2132, 2224) 30

2.2.1.4. Giao thức FTP (RFC 959, 2228, 2640, 2773) 31

2.2.1.5. Giao thức Telnet (RFC 854-861) 32

2.2.1.6. Giao thức IPSec và SSH 32

2.2.1.7. Giao thức ICMP (RFC 792) 32

2.2.1.8. Giao thức NTP v3 (RFC 1305) 33

2.2.1.9. Giao thức SNMP (RFC 792) 33

2.2.2. Các kẽ hở tồn tại trong hệ điều hành 33

2.2.2.1. Hệ điều hành Unix 33

2.2.2.2. Hệ điều hành Linux 34

2.2.2.3. Hệ điều hành Windows 34

2.2.3. Điểm yếu trong các trang thiết bị mạng 35

2.2.4. Điểm yếu khi cấu hình 36

2.2.5. Chính sách yếu 37

2.2.6. Các kẽ hở do người sử dụng 37

CHƯƠNG III: CáC phương pháp TấN CÔNG MạNG 39

3.1. TổNG QUAN Về CáC BƯớC TấN CÔNG CủA HACKER 39

3.1.1. Thu thập thông tin 39

3.1.2. Dò quét 40

3.1.3. Điểm danh mạng 42

3.2. TấN CÔNG VàO Hệ ĐIềU HàNH WINDOWS 43

3.2.1. Tấn công không xác thực 43

3.2.1.1. Tấn công thông qua các tài nguyên chia sẻ 44

3.2.1.2. Tấn công thông qua lỗ hổng MSPRC 48

3.2.2. Tấn công hệ điều hành Windows sau khi đã vượt qua xác thực 52

3.2.2.1. Leo thang đặc quyền 53

3.2.2.2. Crack Password trong Windows 55

3.3. TấN CÔNG VàO Hệ ĐIềU HàNH LINUX 57

3.4. TấN CÔNG TRàN Bộ ĐệM 59

3.4.1.Khái niệm tràn bộ đệm 59

3.4.2. Tổ chức bộ nhớ 60

3.4.3. Cách làm việc của hàm 62

3.4.4. Chương trình tràn bộ đệm 64

3.4.5. Chống tấn công tràn bộ đệm 67

3.5. TấN CÔNG Từ CHốI DịCH Vụ 70

3.5.1. Khái niệm 70

3.5.2. Những khả năng bị tấn công bằng DOS 71

3.5.3. Những kiểu tấn công DOS 71

3.5.3.1. Tấn công dựa vào lỗi lập trình ( Programing Flaws) 71

3.5.3.2. Tấn công kiểu SYN Flood 72

3.5.3.3. Kiểu tấn công Land Attack 72

3.5.3.4. Kiểu tấn công UDP flood 73

3.5.3.5. Tấn công kiểu Teardrop 73

3.5.3.6. Kiểu tấn công Smurf Attack 74

3.5.3.7. Tấn công kiểu Winnuke 75

3.5.3.8. Distributed DoS Attacks ( DDos ) 75

3.5.4. Tấn công DDOS thông qua Trin00 75

3.5.5. Các biện pháp phòng chống DOS 76

3.6. TấN CÔNG QUA MạNG KHÔNG DÂY (WLAN) 78

3.6.1. Tấn công bị động 79

3.6.1.1. Quét bị động 80

3.6.1.2. Phát hiện SSID 80

3.6.1.3. Lựa chọn địa chỉ MAC 81

3.6.2. Tấn công chủ động 82

3.6.3. Tấn công Man in the middle 82

3.6.4. Tấn công giả mạo (Wireless Spoofing) 83

3.6.4.1. Giả mạo địa chỉ IP 84

3.6.4.2. Giả mạo địa chỉ MAC 85

3.6.4.3. Chống tấn công giả mạo 86

CHƯƠNG IV: ĐáNH GIá Hệ THốNG AN NINH MạNG 87

4.1. KHảO SáT 87

4.2. XáC ĐịNH NGUY CƠ GÂY MấT AN TOàN TớI Hệ THốNG 88

4.3. XáC ĐịNH CáC ĐIểM YếU TồN TạI TRONG Hệ THốNG MạNG 88

4.3.1. Đánh giá mức độ an toàn hệ thống 88

4.3.2. Đánh giá mức độ an toàn mạng 89

4.3.3. Đánh giá mức độ an toàn ứng dụng 90

4.3.4. Đánh giá mức độ an toàn vật lý 90

4.4. PHÂN TíCH CáC BIệN PHáP Đã áP DụNG ĐốI VớI Hệ THốNG MạNG 91

4.5. XÂY DựNG CáC CHíNH SáCH, GIảI PHáP ĐảM BảO AN TOàN AN NINH 91

4.6. LậP BáO CáO CHI TIếT Về CáC CÔNG VIệC Đã THựC HIệN 92

CHƯƠNG V: ứNG DụNG THựC Tế 93

ĐáNH GIá ĐIểM YếU AN NINH CủA Hệ THốNG MạNG Và Sử DụNG FOUNDSTONE Để ĐáNH GIá ĐIểM YếU AN NINH 93

5.1. MÔ Tả THIếT Bị FOUNDSTONE 93

5.2. CáC TíNH NĂNG CHíNH CủA FOUNDSTONE 95

5.2.1. Tìm kiếm tất cả các tài nguyên đang hiện hữu trong hệ thống mạng 95

5.2.2. Xác định điểm yếu trên tài nguyên mạng 95

5.2.3. Phân tích tương quan các mối nguy hiểm trong hệ thống 96

5.3. ĐáNH GIá ĐIểM YếU AN NINH CủA Hệ THốNG MạNG TầNG 5 – KHOA AN TOàN THÔNG TIN – HọC VIệN Kỹ THUậT MậT Mã 98

5.3.1. Khảo sát 98

5.3.1.1. Phạm vi khảo sát 98

5.4.1.3. Nội dung khảo sát 98

5.3.2. Kết quả đánh giá từ hệ thống dò quét điểm yếu Foundstone 99

5.5. MộT Số KếT QUả ĐáNH GIá KHáC 102

5.5.1. Kết quả đánh giá tại Ngân hàng Nông nghiệp và phát triển Nông thôn 102

5.5.1. Kết quả đánh giá tại Ngân hàng công thương Việt Nam 106

KếT LUậN 109

TàI LIệU THAM KHảO 111

PHụ LụC 112

 

docx19 trang | Chia sẻ: netpro | Lượt xem: 4780 | Lượt tải: 1download
Bạn đang xem nội dung tài liệu Đồ án Nghiên cứu đánh giá hệ thống an ninh mạng và sử dụng Foundstone để đánh giá điểm yếu an ninh, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
ng nghiệp và phát triển Nông thôn        104 Hình 23: Sơ đồ mạng tại Ngân hàng công thương Việt Nam        107 DANH MụC CáC SƠ Đồ Sơ đồ 1: Sơ đồ tổ chức bộ nhớ        60 Sơ đồ 2: Push một giá trị vào stack        61 Sơ đồ 3: Pop một giá trị ra khỏi stack        62 Sơ đồ 4: Sơ đồ ví dụ về chương trình tràn bộ đệm        65 GIảI THíCH THUậT NGữ Danh mục các từ viết tắt: OSI : Open Systems Interconnection IP : Internet Protocol TCP : Transmission Control Protocol PC : Personal Computer DNS : Domain Name System ICMP : Internet Control Message Protocol SMTP : Simple Mail Transfer Protocol SNMP : Simple Network Management Protocol IPSec : Internet Protocol Security SSL : Secure Socket Layer SSH : Secure Socket Shell NAT : Network Address Translation NTP : Network Time Protocol PAT : Port Address Translation NIS : Network Information Service NFS : Network File System TTL : Time to live CTĐT : Chuyển tiền điện tử TĐDLĐT : Trao đổi dữ liệu điện tử HĐH : Hệ điều hành CSDL : Cở sở dữ liệu Danh mục các từ chuyên môn – thuật ngữ: Server: Máy chủ Client: Máy trạm Host: Một máy tính nào đó, có thể là máy chủ hoặc máy trạm hoặc máy tính cá nhân Hacker: Kẻ tấn công Victim: Đối tượng tấn công của hacker User: Người sử dụng Username và Password: Là tên đăng nhập và mật khẩu để người sử dụng có thể truy nhập vào hệ thống Account: Tài khoản của người sử dụng, được xác định dựa trên username và password Daemon:  Là một chương trình chạy trên một cổng nhất định nào đó. Nó sẽ chịu đáp ứng lại mọi yêu cầu của client khi client kết nối đến server trên cổng đó. Ví dụ như smtp daemon theo mặc định chạy trên cổng 25. Để có thể check mail, máy tính phải kết nối đến server này trên cổng 25, cổng mà smtp daemon đang nắm giữ. Sequence number: Là những số xuất hiện trong phần header của 1 gói tin TCP. Mục đích của sequence number là để các gói tin được nhận theo đúng trình tự như khi chúng được gửi đi. Root: Quyền cao nhất trong các hệ thống mã nguồn mở. Quyền này ngang với quyền Administrator trong hệ điều hành Windows. IP Spoofing: Là một kĩ thuật dùng để đạt quyền truy nhập đến các máy bằng cách lừa router hoặc firewall rằng thông tin được đến từ mạng được tin cậy. Man in the Middle: người đứng giữa. Giả sử khi 2 máy đang trao đổi dữ liệu, người thứ ba đứng ở giữa thực hiện chặn bắt và xem trộm thông tin của 2 máy đó thì người đứng giữa đó gọi là Man in the Middle và hành động chặn bắt, xem trộm đó gọi là tấn công Man in the Middle Session Replay: là loại tấn công mà người tấn công can thiệp vào chuỗi và bắt giữ một chuỗi gói tin hoặc các lệnh của một ứng dụng nào đó, biến đổi thông tin nắm được và gởi ngược trở lại nhằm lừa hệ thống. Buffer: Là một phần được đặt trước (xác định cho một mục đích cụ thể nào đó) của bộ nhớ dùng để chứa dữ liệu khi dữ liệu được xử lý. Port: Là các ứng dụng chạy trên giao thức TCP/IP mở các kết nối tới các máy tính khác. Các port là một tập hợp các con số, đứng sau địa chỉ IP. Ví dụ: dịch vụ HTTP tồn tại trên port mặc định là port 80, … Systemroot: Là thư mục chứa file hệ thống của Windows Registry: Là một cơ sở dữ liệu dùng để lưu trữ thông tin về những sự thay đổi, những lựa chọn, những thiết lập từ người sử dụng Windows. Registry bao gồm tất cả các thông tin về phần cứng, phần mềm, người sử dụng. Registry luôn được cập nhật khi người sử dụng tiến hành sự thay đổi trong các thành phần của Control Panel, File Associations, và một số thay đổi trong menu Options của một số ứng dụng,... Command line: Là các dòng lệnh để thực hiện một hành động nào đó. Trong Windows, command line là Command Prompt còn trong Linux, command line là Shell Shellcode: Là một đoạn mã chương trình dùng để thực hiện một mục đích nào đó. Thí dụ như đoạn Shellcode để làm tràn bộ đệm, … LờI Mở ĐầU Trong xu thế toàn cầu hóa công nghệ thông tin như hiện nay, hầu như bất kỳ một cơ quan, tổ chức nào dù lớn hay nhỏ đều trang bị cho mình một hệ thống mạng để phục vụ nhu cầu trao đổi thông tin, truyền tải dữ liệu hoặc buôn bán trực tuyến qua mạng Internet. Ngay cả trong các cơ quan chính phủ, việc sử dụng Internet để làm phương tiện liên lạc cũng là một trong những nhu cầu rất cần thiết. Đó là cấu nối để người trong nước có thể liên hệ và trao đổi thông tin với người nước ngoài, người trong khu vực này có thể liên hệ và trao đổi thông tin với người ở khu vực khác, ... Như vậy, việc sử dụng công nghệ thông tin và nhất là hệ thống mạng, hệ thống Internet là vô cùng cần thiết. Thế nhưng, vấn đề đặt ra là làm thế nào để có thể bảo vệ an toàn được cho hệ thống mạng? Làm thế nào để thông tin trao đổi giữa nơi này với nơi khác không bị kẻ khác đánh cắp? Làm thế nào để có thể tạo ra một hệ thống mạng an toàn ổn định và có thể vận hành một cách trơn tru, không có khiếm khuyết? Từ đó, thuật ngữ an toàn thông tin rađời. An toàn thông tin là một trong những vấn đề quan trọng hàng đầu, khi thực hiện kết nối mạng nội bộ của các cơ quan, doanh nghiệp, tổ chức với Internet. Ngày nay, các biện pháp an toàn thông tin cho máy tính cá nhân cũng như các mạng nội bộ đã được nghiên cứu và triển khai. Tuy nhiên, vẫn thường xuyên có các mạng bị tấn công, có các tổ chức bị đánh cắp thông tin,… gây nên những hậu quả vô cùng nghiêm trọng. Những vụ tấn công này nhằm vào tất cả các máy tính có mặt trên Internet, các máy tính của các công ty lớn như AT&T, IBM, các trường đại học và các cơ quan nhà nước, các tổ chức quân sự, nhà băng,… và trong đó, có những vụ tấn công được xây dựng với quy mô khổng lồ (có tới 100.000  máy tính bị tấn công). Những con số này chỉ là phần nổi của tảng băng trôi. Khó có thể thu thập được đầy đủ các số liệu tin cậy về các vụ đột nhập của hacker và các sự cố an ninh khác, vì chính các nạn nhân từ chối không tự nhận họ bị thiệt hại. Có thể thấy xu hướng gia tăng của các vụ đột nhập nhập mạng internet qua các số liệu thống kê về các sự cố an ninh đựơc lưu trữ tại ủy Ban Chịu Trách Nhiệm Về Các Vấn Đề Khẩn Cấp Các Máy Tính Mạng Internet (Internet Computer Emergency Response Team, viết tắt là CERT): Năm Số sự cố 1989 1990 1991 1992 132 252 406 773 Từ các sự cố về an toàn, các nhu cầu về an toàn như vậy, việc đánh giá một hệ thống mạng có đảm bảo được yêu cầu an toàn hay không là một việc làm rất cần thiết cho bất kỳ hệ thống mạng nào. Bởi vậy, em đã quyết định chọn đề tài:“Nghiên cứu đánh giá hệ thống an ninh mạng”, để có thể giúp cho các công ty, các tổ chức hay bất kỳ một hệ thống mạng nào có thể xác định được các nguy cơ, các hiểm họa tiềm tàng trong hệ thống từ đó đưa ra các biện pháp nhằm khắc phục, giảm thiểu các nguy cơ có thể đe dọa đến hệ thống mạng. Đồng thời, em cũng đi tìm hiểu về Foundstone – một công cụ đánh giá an toàn hệ thống mạng mạnh nhất hiện nay để trợ giúp trong quá trình đánh giá được nhanh chóng và chính xác. Nội dung chính của đồ án được chia làm 5 chương như sau: Chương 1: Tổng quan về các điểm yếu trong hệ thống mạng Chương này trình bày một cách tổng quan về các điểm yếu xuất hiện trong hệ thống mạng. Đây là những điểm yếu phổ biến trong các giao thức, các hệ điều hành, các thiết bị mạng đang được sử dụng. Chương này cũng đưa ra cách phân loại các lỗ hổng bảo mật để làm nền tảng cho quá trình đánh giá hệ thống mạng Chương 2: Các phương pháp tấn công mạng Đây là chương mô tả về một số phương pháp tấn công mà hacker thường sử dụng để khai thác vào các lỗ hổng của hệ điều hành Windows, Linux, tấn công từ chối dịch vụ và một số cách khai thác qua hệ thống mạng không dây. Từ việc nghiên cứu các phương pháp tấn công, đồ án có đưa ra một số biện pháp nhằm phòng chống giảm thiểu các rủi ro gây mất an toàn từ các lỗ hổng này. Chương 3: Đánh giá hệ thống an ninh mạng Chương này nói về các bước để đánh giá được một hệ thống an ninh mạng. Để đánh giá được một hệ thống mạng, ngườiđánh cần phải có một quy trình cụ thể về các công việc sẽ phải thực hiện trước khi tiến hành đánh giá một hệ thống mạng. Chương 4: ứng dụng thực tế: Đánh giá điểm yếu an ninh của hệ thống mạng và sử dụng Foundstone để đánh giá Các chương trước mới chỉ là cơ sở lý thuyết trước khi tiến hành đánh giá một hệ thống mạng. Bây giờ là việc áp dụng tất cả các cơ sở lý thuyết đó để đưa vào đánh giá một hệ thống thực tế. Trong chương này, đồ án có trình bày về đánh giá điểm yếu an ninh mạng cho hệ thống mạng tầng 5 – khoa An toàn thông tin – học viện Kỹ thuật Mật Mã có sử dụng Foundstone để đánh giá. Ngoài ra, đồ án còn đưa ra một số kết quả đánh giá từ hệ thống mạng của Ngân hàng Nông nghiệp và phát triển nông thông; hệ thống mạng của Ngân hàng công thương Việt Nam. Thế nhưng do giới hạn nên đồ án chỉ đưa ra một số kết quả chính chứ chưa đưa ra chi tiết toàn bộ các kết quả đã tiến hành đánh giá trong thực tiễn. Sau hơn 3 tháng nghiên cứu cùng với sự hướng dẫn nhiệt tình của PGS. TS Lê Mỹ Tú - Giám đốc học viện Kỹ thuật Mật Mã, TS. Trần Đức Sự - trưởng khoa An toàn thông tin và các thầy cô trong khoa An toàn thông tin - Học viện Kỹ thuật Mật Mã, cuối cùng em đã hoàn thành xong đồ án của mình. Đây là một đề tài  TS. Trần Đức Sự  CHƯƠNG I: tổng quan về các ĐIểM YếU TRONG hệ thống mạng Các điểm yếu bảo mật trong một hệ thống mạng là các điểm yếu có thể tạo nên 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 cập bất hợp pháp vào hệ thống. Các điểm yếu bảo mật có thể nằm ngay tại các dịch vụ cung cấp như web, email, dịch vụ chia sẻ tập tin, … hay trên các giao thức như SMTP, LDAP, DHCP, … và ngay chính trên các hệ điều hành cũng tồn tại rất nhiều điểm yếu. Các hệ điều hành như Unix, Linux, Windows Server 2000, Windows Server 2003, Windows XP và các phiên bản sau đều có tồn tại những điểm yếu nghiêm trọng mà kẻ tấn công hoàn toàn có thể dựa vào đó để khai thác, chiếm quyền điều khiển hệ thống. Ngoài ra, trên các trang thiết bị mạng dùng để cung cấp sự an toàn cho hệ thống cũng có thể tồn tại các điểm yếu mà người quản trị không thể nào biết hết được. Trong chươngđầu tiên này, em sẽ trình bày một cách tổng quan về một số các điểm yếu trong giao thức, trong hệ điều hành, trong các trang thiết bị mạng và cách phân loại các lỗ hổng bảo mật khi thực hiện phân tích đánh giá mức an toàn hệ thống mạng 2.1. NHữNG ĐIểM YếU TRONG BảO MậT Hiểu được những điểm yếu trong hệ thống mạng là một vấnđề hết sức quan trọng để tiến hành những chính sách bảo mật có hiệu quả và còn giúp cho người quản trị bảo mật được mạng trước khi bị hacker tấn công. Cisco xác định những điểm yếu bảo mật gồm có: Các kẽ hở trong giao thức Các lỗ hổng tồn tại trong hệ điều hành Các điểm yếu trong các trang thiết bị mạng Các điểm yếu khi cấu hình Chính sách yếu 2.1.1. Các kẽ hở trong giao thức Để nối kết các hệ thống có nguồn gốc khác nhau thì những hệ thống này phải mở, ví dụ như để bộ sản phẩm Norton Anti Virus có thể cài đặt và chạy được trên hệ điều hành Windows thì Norton phải hiểu được cấu trúc cũng như nền tảng của Windows thì mới có thể tạo ra một phần mềm tương thích với Windows. Điều đó có nghĩa là các giao thức cũng như giao diện Windows phải được chuẩn hóa;  mà chuẩn hóa đồng nghĩa với việc công bố các đặc tả kỹ thuật cho ai nấy đều biết. Mặt trái của việc công bố và áp dụng rộng rãi các tiêu chuẩn là các hacker có thể biết các nhược điểm có trong các giao thức và triệt để khai thác chúng. Đối chiếu từng công nghệ của những mạng tin học cụ thể với mô hình OSI, ta có thể thấy rằng các mối nguy hiểm có thể tiềm tàng ngay trong từng bộ phận, đặc biệt ở các giao diện và giao thức được sử dụng phổ biến nhất. Dưới đây là một ví dụ về các kẽ hở đã được phát hiện trong những giao thức chủ chốt thuộc họ TCP/IP: 2.1.1.1. Giao thức SMTP (RFC 821, 2821) Trong giao thức chuyển thư điện tử đơn giản SMTP vốn không có cơ chế xác thực, cho nên thư điện tử rất dễ bị kẻ xấu mạo danh. Nếu mail server được thiết lập để cho phép kết nối cổng SMTP thì bất cứ ai cũng có thể đưa đến đó những lệnh chuyển một bức thư điện tử với địa chỉ người gửi tùy ý, gây ra lẫn lộn thật giả rất tai hại (trường hợp của phần lớn các virus mới). 2.1.1.2. Giao thức LDAP (RFC 1777, 3384) Việc kết nối trong giao thức LDAP (phiên bản 2 và 3) được client thực hiện trực tiếp qua cổng 389, trước khi yêu cầu LDAP làm những việc như tìm kiếm (search), bổ sung (add),… Không có gì bảo đảm rằng client sẽ kết nối đến đúng server LDAP, bởi vì trong CSDL tên miền, hacker có thể thay đổi tên server LDAP thành server LDAP khác. Hoặc hacker cũng có thể cài đặt một server LDAP khác và giả làm server LDAP thực sự. Mặt khác, mọi thông tin trao đổi giữa client và server LDAPđều ở rạng rõ (plain text), tức là chưa được mã hóa, nên hacker có thể dễ dàng đọc và thay đổi. 2.1.1.3. Giao thức DHCP (RFC 2131, 2132, 2224) Giao thức DHCP cung cấp cơ chế gán các địa chỉ IP động cho những thiết bị để chúng có thể có địa chỉ khác nhau mỗi khi chúng nối vào mạng. Ngày 08/5/2002, trung tâm điều phối cứu hộ an ninh máy tính (CERT/CC) đã cảnh báo về một kẽ hở của giao thức đó. Trung tâm CERT/CC cho biết rằng những kẻ hở này là kiểu lỗi tràn bộ đệm hướng ngăn xếp (stack - based) và có thể bị khai thác bằng cách gửi một thông điệp DHCP có chứa một giá trị hostname lớn. Mặc dù thư viện “minires” dẫn xuất từ thư viện “resolver” của phần mềm BIND 8, nhưng những kẻ hở nói trên không ảnh hưởng tới các phiên bản hiện hành của BIND. Ngày 16/01/2003, tập đoàn phần mềm ISC (Internet Software Consortium), một tổ chức phi lợi nhuận, cũng đã thừa nhận sự tồn tại của một số lỗi tràn bộ đệm trong phần mềm mã nguồn mở nổi tiếng thực hiện giao thức DHCP. Ngoài việc cấp các dữ liệu cấu hình, phần mềm này còn cho phép máy chủ dịch vụ DHCP cập nhật động cho máy chủ dịch vụ tên miền DNS, do đó không cần cập nhật thủ công DNS nữa. Trong khi kiểm tra, ISC đã tìm thấy các lỗi của những chương trình còn xử lý sai sót (error handling routines) trong thư viện “minires”được dùng bởi hàm NSUpdate để giải quyết vấn đề tên máy (hotname). Ngay sau đó, các phiên bản 3.0pl2 và 3.0.1RC11 của phần mềm ISC DHCP đã được sửa lỗi. 2.1.1.4. Giao thức FTP (RFC 959, 2228, 2640, 2773) FTP là một giao thức có nhiều kẽ hở lớn, kể cả khi được tăng cường bằng các cơ chế an ninh như IPSec và SSH. Nhưng dù bất ổn như thế, cho đến nay trong thực tiễn FTP vẫn rất hayđược dùng để tải các tệp lên máy chủ ở xa. Sau đây là một số trường hợp sơ hở của FTP: a. Khi gửi lệnh PASV Khi client FTP gửi lệnh PASV, một hacker có thể nhanh tay kết nối vào cổng TCP của server FTP trước client này Có thể so sánh địa chỉ đó với địa chỉ IP của client để phát hiện tin tặc, nhưng biện pháp này sẽ vô nghĩa nếu haker dùng chung (ở chế độ multiuser) cùng một máy trạm hoặc máy proxy với nạn nhân Có thể phòng bằng cách thiết lập cấu hình sao cho HĐH từ chối mọi tín hiệu yêu cầu SYN sau yêu cầu đầu tiên, nhưng một số HĐH lại không cho thiết lập như vậy. Có thể cắt bỏ cuộc truyền nếu kiểm tra thấy có nhiều kết nối cùng được chấp nhận bằng ACK trên một cổng, nhưng biện pháp này không chắc chắn vì tín hiệu ACK cũng có khi bị mất hoặc trễ. b. Gửi lệnh PORT Khi client FTP gửi lệnh PORT rồi chờ, một hacker có thể kịp kết nối riêng với server và được server cho truy cập vào cổng TCP của client. Client không thể phân biệt vì nó là kết nối của máy chủ hợp pháp. c. Khi máy chủ kết nối Một hacker có thể yêu cầu máy chủ FTP cho kết nối vào cổng TCP với địa chỉ IP bất kỳ và gửi một file được chọn bởi chính hacker. Đó là kẽ hở nghiêm trọng nếu server này có quyền nối kết tường lửa hoặc các cổng đặc biệt khác. 2.1.1.5. Giao thức Telnet (RFC 854-861) Bản thân giao thức Telnet không có cơ chế đảm bảo an ninh. Khi cài đặt phần mềm thực hiện giao thức Telnet chúng ta thường phải bổ sung các tùy chọn, thí dụ theo đề xuất RFC 1091, 1184, 1372 của IETF. Trong trường hợp phổ biến nhất, như một terminal ở chế độ truy cập từ xa qua cổng TCP số 23, phần mềm thực hiện Telnet kết nối đến server yêu cầu xác thực người sử dụng bằng cách kiểm tra tên và mật khẩu ở chế độ rõ, nhưng server lại không thể tự xác thực được cho mình. Theo Microsoft, phần mềm thực hiện giao thức Telnet cài sẵn trong HĐH Windows 2000 của họ cũng không bịt được các kẽ hở của giao thức này. Phần mềm Telnet trong HĐH Windows 2000 quả thật đã tiềm ẩn tới 7 kẽ hở, bao gồm 4 lỗi không chống nổi tấn công từ chối dịch vụ, 2 lỗi về đặc quyền ưu tiên và 1 lỗi để lộ thông tin. 2.1.1.6. Giao thức IPSec và SSH Công nghệ an toàn lớp trên như IPSec, SSL và SSH cung cấp cho các ứng dụng mạng một mức an ninh theo chiều ngang (end - to - end security), xét quan hệ giữa hai chủ thể bên nguồn và bên đích. Tuy nhiên trong thực tế chúng phụ thuộc vào hai điều kiện sau: Một hạ tầng an toàn tương ứng, thí dụ có xác thực Những người sử dụng có hiểu biết cao về tin học và luôn thao tác đúng đắn kể cả trong những trường hợp bất thường Điều kiện thứ nhất có thể thực hiện được (thí dụ bằng hạ tầng mã hóa khóa công khai), nhưng điều thứ hai thì hiện nay không có ai dám chắc. Như đã nói ở trên, an toàn cần phải được xét theo chiều dọc trong mô hình mạng OSI. Mức an ninh từ gốc đến đích được xây dựng ở tầng ứng dụng trên cùng và phụ thuộc vào sự an toàn của những tầng dưới. nếu ở dưới là một mạng bô tuyến kiểu Wi-fi với chế độ broadcast thì không có gì đảm bảo rằng hacker không thu nổi tín hiệu trong vùng phủ sóng và không giải mã được 2.1.1.7. Giao thức ICMP (RFC 792) Giao thức ICMP là một mở rộng của giao thức liên mạng IP. ICMP cung cấp một cơ chế cho các thông báo điều khiển và thông báo lỗi. Thí dụ lệnh ping sử dụng các gói ICMP để kiểm tra việc kết nối giữa hai địa chỉ IP. Nhưng hacker có thể lợi dụng các gói tin ICMP không đến đích để do thám một mạng. Nói chung cần phải ngăn cản hoặc chí ít phải lọc những gói tin ICMP không đến đích và những gói tin ICMP đổi hướng (redirect) trong Router. 2.1.1.8. Giao thức NTP v3 (RFC 1305) Giao thức NTP được dùng để đồng bộ và cập nhật thời gian trên các máy chủ và thiết bị mạng từ một số máy chủ NTP. Giao thức này mở cho hacker một cách tấn công bằng che dấu hoặc thay đổi giờ nhằm làm sai thời gian trong các tệp ký sự. 2.1.1.9. Giao thức SNMP (RFC 792) Giao thức SNMP được dùng để quản trị, theo dõi và lập cấu hình cho các thiết bị mạng. Đáng tiếc là những file cấu hình mặc định của SNMP thường không mấy an toàn vì có vài khiếm khuyết và hacker có thể lợi dụng. 2.1.2. Các kẽ hở tồn tại trong hệ điều hành Thực tế hiện nay cho phép liệt kê hàng trăm kẽ hở an ninh trên mạng. Hệ điều hành là phần mềm cơ bản nhất của các máy tính; tuy chúng còn tồn tại khá nhiều nhưng đa số thị phần chỉ thuộc về một vài hệ điều hành nổi tiếng và trong số đó những HĐH chạy trên máy chủ có ảnh hưởng quan trọng đến anh ninh mạng. 2.1.2.1. Hệ điều hành Unix Trong thực tế, các phiên bản Unix chưa phổ biến nhiều tại Việt Nam. Ngoài 2 sản phẩm IBM AIX và Sun Solaris thườngđược sử dụng ở những nơi có yêu cầu cao và điều kiện đầu tư như các ngành ngân hàng, tài chính, viễn thông, hàng không, điện lực, … Tuy nhiên, các phiên bản Unix cũng bị tấn công do có một số kẽ hở an ninh, dù rằng phần lớn đã nhanh chóng được bịt lại. Những kẻ hở sau được coi là nguồn gốc chung của các lỗi đã xảy ra: Các thủ tục gọi hàm từ xa RPC (Remote Procedure Calls) Các dịch vụ ở dạng văn bản rõ (Clear Text Services) Giao thức SNMP (Simple Network management Protocol) Lớp an ninh SSH (Secure Shell) Lớp SSL mở (Open Secure Sockets Layer) Các tài khoản xác thực chung (General Authentication Accounts) không có mật khẩu hoặc chỉ có mật khẩu dễ đoán (weak password) Cấu hình sai (misconfiguration) ở cấp cơ quan doanh nghiệp cho những dịch vụ về mạng như NIS hoặc NFS. Ngoài ra còn một só các kẽ hở riêng, nhưng chúng chỉ xuất hiện trong từng phiên bản của Unix: Rmail (IBM AIX 3.2), lạm dụng stadt (AIX 3.2, 4.1), mount, xdat, xlock (AIX 4.1.3, 4.1.4, 4.2.0, 4.2.1) MGE UPS, rwall daemon, automound (Sun Solaris 2.5.1), printd tmpfile, lprm, ufsdump, ufsrestore, ftp mget (Solaris 2.6) Ftp client, tmpfile, tràn bộ đệm với Xaw và Xterm (HP/UX 10.20), Rdist, chfn (HP/UX 9.x, 10.x), xwcreate/destroy Core dump/dbx, leak usernames trong sshd và rshd, vấn đề symlink với fstab và advfsd trong giao diện OSF1 (Digital Unix 4.0). Lợi dụng routed file, pfdispaly CGI (IRIX 5.2, 5.3, 6.2), IPX tools, suid_exec (IRX 6.3). 2.1.2.2. Hệ điều hành Linux Hiện nay có khá nhiều Website hỗ trợ cho HĐH Linux và họ cũng thường thông báo các bản vá lỗi để người sử dụng cập nhật. Ngoài các lỗi chung giống như có trong Unix, có thể liệt kê một số các kẽ hở an ninh riêng trong từng phiên bản của Linux như sau: GNOME display manager (Redhat Linux), do_mremap (các phiên bản Linux kernel trước 2.4.25) FreeRADIUS (các phiên bản trước 0.9.3) trong Redhat Enterprise Linux AS3 và Redhat Enterprise Linux ES3 Rsync buffer overflow (các phiên bản Linux kernel từ 2.x đến trước 2.5.7w) Phiên bản Redhat Linux 8.0 được phát hành cùng với phần mềm DHCP của ISC có chứa lỗi tràn bộ đệm hướng ngăn xếp (Stack – based buffer overflow). Backdoor của kernel Linux, liên quan đến hàm gọi hệ thống wait4() có mặt trong mọi chương trình máy tính Linux. … 2.1.2.3. Hệ điều hành Windows Hầu hết máy PC đều cài đặt các phiên bản Windows, do đó tác hại của các cuộc tấn công vào HĐH này có khả năng nhân rộng và nhanh hơn các cuộc tấn công vào những HĐH khác. Ngoài ra, rất nhiều hacker có mâu thuẫn với Microsoft nên họ luôn tìm cách moi móc và khai thác các kẽ hở của Windows. Từ vài năm nay, Microsoft đã có bản tin thông báo về những lỗi an ninh của mình. Sau đây là một số thông báo đáng chú ý: Tháng 12/2008, Microsoft cảnh báo về lỗi Zero-day và các hacker đã ra sức khai thác lỗi này Tháng 6/2004, bản tin cảnh báo về một lỗi an ninh trong tính năng DirectPlay trên mạng ngang hàng của Microsoft. Lỗi này xuất hiện trong tất cả các HĐH của Microsoft như: Windows 2000, XP, Windows Server 2003 32 bit, 64 bit. Tháng 4/2004, kẽ hở trong hệ thống giám sát an ninh nội bộ LSASS của các HĐH Windows 2003, Windows 2000 và Windows XP đã cho phép hacker thông qua sâu Sasser rồi virus Bobax để tấn công bằng kiểu DoS và spam Tháng 7/2003, Microsoft đã cảnh báo về 3 lỗi an ninh khá nghiêm trọng trong các HĐH của họ. Đây là những kẻ hở cho phép hacker phá hoại các hệ thống thông tin Tháng 9/2002, Microsoft đã thông báo nhiều lỗi nghiêm trọng do những kẻ hở có trong hầu hết các phiên bản của HĐH Windows. Thông qua những kẻ hở đó, các hệ thống thông tin dùng Microsoft Windows có thể bị tấn công theo kiểu IPSpoofing Tháng 8/2002, Microsoft công bố một kẽ hở mới trong thành phần Active-X được phát hiện trên Windows, có thể cho phép hacker tấn công kiểu DoS. 2.1.3. Điểm yếu trong các trang thiết bị mạng Hầu hết các thiết bị mạng như là server, switch, router… đều có điểm yếu trong bảo mật. Hacker có thể lợi dụng những điểm yếu này để thực hiện tấn công vào hệ thống như tấn công ARP, tấn công theo kiểu man in the middle, … Nếu có một chính sách tốt cho việc cấu hình và lắp đặt cho các thiết bị mạng sẽ làm giảm đi rất nhiều sự ảnh hưởng của điểm yếu này. Ví dụ như với Cisco – một hãng cung cấp thiết bị mạng hàngđầu thế giới. Trong các sản phầm tường lửa PIX, có một số phiên bản có thể bị “treo” và phải khởi động lại nếu bị tấn công kiểu từ chối dịch vụ bằng những thông điệp khai thác giao thức SNMP phiên bản 3. Đây là bản nâng cấp mới nhất của SNMP, cho phép theo dõi tình trạng thiết bị trong mạng. Tuy nhiên, tường lửa PIX không hỗ trợ SNMPv3. Vì thế, một máy chủ SNMP phải được cài đặt trước để dành riêng cho tường lửa Cisco thì mới có thể thực hiện được cuộc tấn công. Hay trong các Router của Cisco, qua cuộc kiểm tra nội bộ, Cisco đã phát hiện được những thiết bị định tuyến của họ chạy hệ điều hành liên mạng IOS (Internetworking Operating System) có thể bị tấn công kiểu từ chối dịch vụ. Bằng việc khai thác kẽ hở trên, hacker có thể gửi những gói tin trực tiếp tới một thiết bị của Cisco và đánh lừa bộ định tuyến, khiến cho thiết bị này ngừng kiểm soát các kênh dữ liệu và buộc phải khởiđộng lại. 2.1.4. Điểm yếu khi cấu hình Đây là lỗi do nhà quản trị tạo ra. Lỗi này do các thiếu sót trong việc cấu hình như là: không bảo mật tài khoản khách hàng, hệ thống tài khoản với password dễ dàng đoán biết, không bảo mật các cấu hình mặc định trên thiết bị hay lỗi trong việc cấu hình thiết bị. Tài khoản người sử dụng không an toàn: Mỗi user account cần có usename và password cho mụcđích bảo mật. Các username và password này thường được truyền đi ở dạng clear text trên mạng. Do đó, cần có chính sách bảo mật user account như mã hoá, xác thực …  Tài khoản hệ thống đặt mật khẩu dễ đoán: Một điểm yếu trong lỗi cấu hình khác là bảo mật account với password dễ dàng bị đánh cắp. Để ngăn chặn tình trạng đó, người quản trị cần có chính sách để không cho phép một password có hiệu lực mãi mãi mà password này phải có một thời hạn kết thúc. Dịch vụ Internet bị lỗi cấu hình: Một vài công ty đã sử dụng địa chỉ thật trên mạng Internetđể đánh địa chỉ cho host và server. Điều này tạo nên điểm yếu mà các hacker sẽ dễ dàng khai thác thông tin. Sử dụng giao thức NAT hoặc PAT có thể giải quyết vấnđề trên. Sử dụng địa chỉ riêng cho phép đánh địa chỉ host và server mà kh

Các file đính kèm theo tài liệu này:

  • docxNghiên cứu đánh giá hệ thống an ninh mạng và sử dụng Foundstone để đánh giá điểm yếu an ninh.docx
Tài liệu liên quan