Lỗ hổng trong giao thức mạng

Một phần của tài liệu Nghiên cứu một số lỗ hổng thiếu an ninh trong ứng dụng công nghệ thông tin, phương pháp và công cụ kiểm soát, xử lý lỗ hổng (Trang 27)

a. Giao thức SMTP

Trong giao thức truyề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).

b. Giao thức LDAP

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ật. Mặt khác, mọi thông tin trao đổi giữa client và server LDAP đều ở dạ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.

28

Giao thức DHCP cung cấp cơ chế gán các địa chỉ IP động cho những thiết bị để chung có thể có địa chỉ khác nhau mỗi khi chúng nối vào mạng.

Ngày 08/05/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 gí 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 xót (error handling routines) trong thư việc “minires” được dùng bởi hàm NSUpdate để giải quyết vấn đề tên máy (hostname). Ngay sau đó, các phiên bản 3.0pl2 và 3.0RC11 của phần mềm ISC DHCP đã được sửa lỗi.

d. Giao thức FTP

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 được dùng để tải các tệp tin lên máy chủ ở xa. Sau đây là một số trường hợp sở hở của FTP:

 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 hacker dùng chung (ở chế độ multiuser) cùng một máy trạm hoặc máy proxy với nạn nhân.

29

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ễ.

 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 vủa máy chủ hợp pháp.

 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.

e. Giao thức Telnet

Bản thân giao thức Telnet không có cơ chế bảo đảm 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.

30 f. 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ó 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 nội bộ kiểu Wifi với chế độ broadcast thì khồn có gì đảm bảo rằng hacker không thu tín hiệu trong vùng phủ sóng và không giải mã được.

g. Giao thức ICMP

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.

h. Giao thức NTP v3

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 si thời gian trong các tệp ký sự

31 i. Giao thức SNMP

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

j. Giao thức TSL/SSL

Trong vài năm qua, một số lỗ hổng đã được phát hiện trong các Transport Layer Security protocol, đặc biệt là khi chúng liên quan đến HTTPS

Transport Layer Security (TLS), sự kế thừa của Secure Sockets Layer (SSL), là ứng dụng phổ biến nhất và sử dụng rộng rãi của mật mã thực tế trên thế giới. Nhất thường được sử dụng là để đảm bảo cho các phiên trình duyệt web, nhưng nó có ứng dụng rộng rãi cho các nhiệm vụ khác, chẳng hạn như bảo vệ các máy chủ email hay bất kỳ loại transaction.TLS client-server cũng có thể được sử dụng để hầm một mạng lưới toàn bộ ngăn xếp để tạo ra một VPN, và để cung cấp chứng thực và mã hóa các Session Initiation Protocol (SIP). SSL / TLS có thể được sử dụng để cung cấp chứng thực mạnh mẽ của cả hai bên trong một phiên truyền thông, mã hóa dữ liệu mạnh mẽ của quá cảnh giữa chúng, và đảm bảo tính toàn vẹn của dữ liệu trong quá cảnh. Trong vài năm trở lại đây, các loại hình tấn công đã được thiết kế để tận dụng lợi thế của tính lựa chọn của SSL / TLS kiến trúc, thiết kế và điểm yếu của các bộ mã hoá sử dụng trong SSL / TLS để mã hóa và thành lập chính. Có thể kể đến các dạng tấn công vào giao thức này:

• Browser Exploit Against SSL/TLS (BEAST) attack • Compression Ratio Info-leak Made Easy (CRIME) attack • Timing Info-leak Made Easy (TIME) attack

• Browser Reconnaissance and Exfiltration via Adaptive Compression of Hypertext (BREACH) attack

• Lucky 13 attack • RC4 biases in TLS

32 1.2.2.3. Lỗ hổng 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 an ninh mạng.

a. 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ồn, đ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ở su đượ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 managerment 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 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 stdt (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, Iprm, ufsdump, ufsrestore, ftp mnet (Solaris 2.6)

33

 FTP client, tmpfile, tràn bộ đệm với Xaw và Term (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).

b. Hệ điều hành Linux

Hiện nay có khá nhiều Website hỗ trợ cho Hệ điều hành 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ư 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...

c. 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ệ điều hành này có khả nâng nhân rộng và nhanh hơn các cuộc tấn công vào hệ điều hành 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.

34

Những năm gần đây 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ỗ hổng 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ệ điều hành như: Windows 2000, XP, Windows Server 2003 32 bit, 64 bit

1.2.2.4. Lỗ hổng trong ứng dụng a. Lỗ hổng ứng dụng Web a. Lỗ hổng ứng dụng Web

Ngày nay, các ứng dụng web ngày càng đóng một vai trò quan trọng đối với mọi tổ chức. Điều này trở nên rõ ràng khi các ứng dụng web bị tấn công sẽ làm ảnh hưởng nghiêm trọng đến các chức năng hoạt động của tổ chức. Một loạt các cuộc tấn công nhằm vào các hệ thống website với các kỹ thuật rất tinh vi và khác nhau. Có thể kể đến các cuộc tấn công:

+ DDoS gây ảnh hưởng nghiêm trọng đến việc cung cấp dịch vụ web cho người dùng và thiệt hại nặng nề cho đươn vị chủ quản web. Một số cuộc tấn như: tấn công DDoS làm hàng loạt website thuộc hệ thống của Công ty Cổ phần truyền thông Việt Nam (VCCorp) và các website được hỗ trợ vận hành bởi đơn vị này đồng loạt gặp sự cố gây thiệt hại hàng chục tỷ đồng, hay các cuộc tấn công vào các website thương mại điện tử như Én bạc, Rồng bay...

+ Tấn công dạng SQL Injection nhằm truy cập website bất hợp pháp đánh cắp chỉnh sửa cơ sở dữ liệu, phá hoại trang web.

Ngoài ra còn rất nhiều các loại tấn công khác nhằm vào các website có thể kể đến như XSS, deface...

Có thể nói website luôn luôn là mảnh đất màu mỡ mà các tin tặc nhằm đến, và tìm cách khi thác lỗ hổng..

35

b. Lỗ hổng bảo mật heartbleed trong ứng dụng OpenSSL

Lỗi Heartbleed là cực kỳ nghiêm trọng, nó làm lộ một lượng lớn các khóa mã cá nhân và các thông tin bí mật khác lên Internet do để lộ nội dung trên bộ nhớ của máy chủ, nơi lưu trữ các thông tin nhạy cảm nhất, bao gồm thông tin cá nhân như tên truy cập, mật khẩu, số thẻ tín dụng. Điều này cho phép những kẻ tấn công có thể lấy được mã cá nhân và giải mã các thông tin đã được mã hóa trên máy chủ, thậm chí giả mạo máy chủ.

OpenSSL là một công nghệ mã hóa được sử dụng rất phổ biến trên hàng triệu website để mã hóa việc truyền tin và bảo vệ các dữ liệu nhạy cảm như email, mật khẩu ngân hàng…. Nhưng một kẽ hở nghiêm trọng gọi là “Heartbleed” (Trái tim rỉ máu) trong OpenSSL đã tạo lỗ hổng để tội phạm mạng có thể lấy được những thông tin nhạy cảm từ bộ nhớ của hệ thống.

36

Chương 2. MỘT SỐ LỖ HỔNG THIẾU AN NINH TRONG ỨNG DỤNG CÔNG NGHỆ THÔNG TIN

2.1. LỖ HỔNG BẢO MẬT TRONG GIAO THỨC TSL/SSL 2.1.1. Giới thiệu [10] 2.1.1. Giới thiệu [10]

Giao thức Secure Sockets Layer (SSL) được sử dụng rộng rãi cho việc đảm bảo thông tin liên lạc an toàn qua mạng Internet. Giao thức SSL cho phép mã hóa đối xứng bằng cách sử dụng thuật toán mã hóa khối hoặc mật mã dòng. Trong thực tế quá trình triển khai , thông thường sử dụng mật mã khối, và tin tặc cũng tận dung sơ hở này để thực hiện các cuộc tấn. Luận văn trình bày sẽ cho thấy một kẻ tấn công tấn công man- in-the-middle sau đó lựa chọn bản rõ ( các hàm tiên tri) với SSL để nhanh chóng khôi phục lại bản rõ thật. Trong trường hợp của HTTPS. chúng ta sẽ chứng minh rằng một kẻ tấn công có thể giải mã và có thông tin của HTTP Cookie [10]

2.1.2.Mô tả tấn công BEAST lên bộ giao thức SSL/TLS

BEAST (Browser Exploit Against SSL/TLS) là kỹ thuật khai thác điểm yếu của chế độ mã khối CBC và mức độ bảo mật yếu của trình duyệt web. Lỗ hổng loại này tồn tại trong các phiên bản SSL2.0, SSL 3.0/TLS 1.0 có hỗ trợ chế độ mã khối CBC.

Một phần của tài liệu Nghiên cứu một số lỗ hổng thiếu an ninh trong ứng dụng công nghệ thông tin, phương pháp và công cụ kiểm soát, xử lý lỗ hổng (Trang 27)

Tải bản đầy đủ (PDF)

(91 trang)