CHƢƠNG 2 : NGHIấN CỨU MỘT SỐ KỸ THUẬT PHềNG THỦ
3.2. Đề xuất phƣơng ỏn phũng thủ
3.2.3. Cross Site Scripting (XSS)
- Cỏch tấn cụng
Phƣơng phỏp Cross Site Scripting (đƣợc viết tắt là XSS) là phƣơng phỏp tấn cụng bằng cỏch chốn thờm những đoạn mó cú khả năng đỏnh cắp hay thiết lập đƣợc những thụng tin quan trọng nhƣ cookies, mật khẩu, … vào mó nguồn ứng dụng web để từ đú chỳng đƣợc chạy nhƣ là một phần của ứng dụng web và cú chức năng cung cấp hoặc thực hiện những điều hacker muốn.
Phƣơng phỏp này khụng nhằm vào mỏy chủ hệ thống mà chủ yếu tấn cụng trờn chớnh mỏy ngƣời sử dụng. Hacker sẽ lợi dụng sự kiểm tra lỏng lẻo
Số húa bởi Trung tõm Học liệu http://www.lrc-tnu.edu.vn/
từ ứng dụng và hiểu biết hạn chế của ngƣời dựng cũng nhƣ biết cỏch đỏnh vào sự tũ mũ của họ dẫn đến ngƣời dựng bị mất thụng tin một cỏch dễ dàng.
Thụng thƣờng hacker lợi dụng địa chỉ URL để đƣa ra những liờn kết là tỏc nhõn kớch hoạt những đoạn chƣơng trỡnh đƣợc viết bằng ngụn ngữ mỏy khỏch nhƣ VBScript, JavaScript, css… đƣợc thực thi trờn chớnh trỡnh duyệt của nạn nhõn.
Hay:
Phần in đậm là đoạn mó đƣợc thờm vào với mục đớch đỏnh cắp cookies của nạn nhõn.
Vớ dụ trờn chỉ minh họa một cỏch đơn giản là thờm đoạn mó của mỡnh vào trang web thụng qua URL. Nhƣng thực sự thỡ cú rất nhiều cỏch để thờm đoạn mó JavaScript với mục đớch tấn cụng kiểu XSS. Hacker cú thể dễ dàng lợi dụng Document Object Model (DOM) để thay đổi ngữ cảnh và nội dung ứng dụng web. Sau đõy là danh sỏch nơi cú thể chốn đoạn mó:
Số húa bởi Trung tõm Học liệu http://www.lrc-tnu.edu.vn/
Phần in đậm là phần cú thể đặt đoạn mó đỏnh cắp thụng tin. - Cỏch phũng thủ.
Với những dữ liệu, thụng tin nhập của ngƣời dựng, ngƣời thiết kế ứng dụng web cần phải thực hiện vài bƣớc cơ bản sau:
Tạo ra dỏnh sỏch những thẻ HTML đƣợc phộp ứng dụng. Xúa bỏ thẻ <script>.
Lọc ra bất kỳ một đoạn mó JavaScript/ Java/ VBScript/ ActiveX /Flash Related nào.
Lọc dấu nhỏy đơn hay kộp.
Lọc ký tự Null ( vỡ khả năng thờm một đoạn mó bất kỳ sau ký tự Null khiến cho ứng dụng đó lọc bỏ thẻ <script> vẫn khụng nhận ra do ứng dụng nghĩ rằng chuỗi đó kết thỳc từ kớ tự Null này).
Xúa những kớ tự “ > ”, “ < “.
Số húa bởi Trung tõm Học liệu http://www.lrc-tnu.edu.vn/
Đố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 bản trờn mỏy của họ hay khụng? Tựy vào mức độ tin cậy mà ngƣời dựng quyết định.
- Nhận xột:
Kĩ thuật XSS khỏ phổ biến và dễ dàng ỏp dụng, tuy nhiờn mức độ thiệt hại chỉ dừng lại ở mức tấn cụng trờn mỏy nạn nhõn thụng qua những liờn kết hay form lừa đảo mà hacker đƣa đến cho nạn nhõn. Vỡ thế, ngoài việc ứng dụng kiểm tra tớnh đỳng đắn của dữ liệu trƣớc khi sử dụng thỡ việc cần nhất là ngƣời dựng nờn cảnh giỏc trƣớc khi vào một trang web mới. Cú thể núi nhờ vào sự cảnh giỏc của ngƣời dựng thỡ 90% đó đạt đƣợc sự bảo mật trong kĩ thuật này.