Trong bài trước, chúng ta đã tìm hiểu về lỗi XSS (Cross Site Scripting) và hướng khai thác thực tế của XSS Reflected. Có một thể loại khác của XSS được xem là nguy hiểm hơn đó chính là Stored XSS.
Khác với Reflected tấn công trực tiếp vào một số nạn nhân mà hacker nhắm đến, Stored XSS hướng đến nhiều nạn nhân hơn. Lỗi này xảy ra khi ứng dụng web không kiểm tra kỹ lưỡng dữ liệu đầu vào trước khi lưu vào cơ sở dữ liệu (ở đây tôi dùng khái niệm này để chỉ database, file hay những khu vực khác lưu trữ dữ liệu của ứng dụng web).
Với kỹ thuật Stored XSS , hacker không khai thác trực tiếp mà phải thực hiện tối thiểu qua 2 bước.
Đầu tiên hacker thông qua các điểm đầu vào (form, input, text area...) không lọc kỹ để chèn vào CSDL các đoạn mã nguy hiểm.
Tiếp theo, Khi người dùng truy cập vào ứng dụng web và thực hiện các thao tác liên quan đến dữ liệu được lưu này, đoạn mã của hacker sẽ được thực thi trên trình duyệt người dùng.
Đến đây hacker coi như đã đạt được mục đích của mình. Vì lí do này mà kỹ thuật Stored XSS còn được gọi là second-order XSS.
Kịch bản khai thác được mô tả như hình sau:
Reflected XSS và Stored XSS có 2 sự khác biệt lớn trong quá trình tấn công.
Từ những điều này có thể thấy Stored XSS nguy hiểm hơn Reflected XSS rất nhiều, đối tượng bị ảnh hưởng có thế là tất cả nhưng người sử dụng ứng dụng web đó. Và nếu nạn nhân có vai trò quản trị thì còn có nguy cơ bị chiếm quyền điều khiển web.
Nguồn tin: quantrimang.com
Ý kiến bạn đọc
Những tin mới hơn
Những tin cũ hơn