Trang chủ Dạy và họcBảo Mật XSS lưu trữ ( Store XSS)

XSS lưu trữ ( Store XSS)

Bởi Lê Huy

1.XSS lưu trữ (Store XSS) là gì?

XSS lưu trữ (còn được gọi là XSS thứ hai hoặc liên tục) phát sinh khi ứng dụng nhận dữ liệu từ một nguồn không đáng tin cậy và đưa dữ liệu đó vào các phản hồi HTTP sau này theo cách không an toàn. Giả sử một trang web cho phép người dùng gửi nhận xét về các bài đăng trên blog và được hiển thị cho những người dùng khác. Người dùng gửi nhận xét bằng yêu cầu HTTP như sau: POST /post/comment HTTP/1.1 Host: vulnerable-website.com Content-Length: 100 postId=3&comment=alone&name=Duc&email=users%40gmail.com Sau khi nhận xét này được gửi, bất kỳ người dùng nào truy cập bài đăng trên blog sẽ nhận được những điều sau trong phản hồi của ứng dụng: <p>alone</p> Giả sử ứng dụng không thực hiện bất kỳ quá trình xử lý dữ liệu nào khác, kẻ tấn công có thể gửi nhận xét độc hại như thế này: <script>/* Bad stuff here... */</script> Theo yêu cầu của kẻ tấn công, nhận xét này sẽ được mã hóa URL dưới dạng: comment=%3Cscript%3E%2F*%2BBad%2Bstuff%2Bhere...%2B*%2F%3C%2Fscript%3E Giờ đây, bất kỳ người dùng nào truy cập bài đăng trên blog sẽ nhận được thông tin sau trong phản hồi của ứng dụng: <p><script>/* Bad stuff here... */</script></p> Tập lệnh do kẻ tấn công cung cấp sau đó sẽ thực thi trong trình duyệt của người dùng nạn nhân, trong bối cảnh phiên của họ với ứng dụng. xss lưu trữ

2.Tác động của các cuộc tấn công XSS lưu trữ.

Nếu kẻ tấn công có thể kiểm soát tập lệnh được thực thi trong trình duyệt của nạn nhân thì chúng thường có thể xâm phạm hoàn toàn người dùng đó. Kẻ tấn công có thể thực hiện bất kỳ hành động nào có thể áp dụng đối với tác động của các lỗ hổng XSS được phản ánh .

Về khả năng khai thác, điểm khác biệt chính giữa XSS được phản ánh và XSS lưu trữ là lỗ hổng XSS lưu trữ cho phép các cuộc tấn công độc lập trong chính ứng dụng. Kẻ tấn công không cần phải tìm cách bên ngoài để xúi giục người dùng khác thực hiện một yêu cầu cụ thể có chứa hoạt động khai thác của họ. Thay vào đó, kẻ tấn công đặt hoạt động khai thác của chúng vào chính ứng dụng và chỉ đợi người dùng gặp phải nó.

Bản chất khép kín của việc khai thác tập lệnh chéo trang lưu trữ đặc biệt có liên quan trong các trường hợp lỗ hổng XSS chỉ ảnh hưởng đến người dùng hiện đã đăng nhập vào ứng dụng. Nếu XSS được phản ánh thì cuộc tấn công phải được tính thời gian một cách ngẫu nhiên: người dùng bị xúi giục thực hiện yêu cầu của kẻ tấn công vào thời điểm họ chưa đăng nhập sẽ không bị xâm phạm. Ngược lại, nếu XSS lưu trữ thì người dùng được đảm bảo đăng nhập vào thời điểm họ gặp phải lỗi khai thác.

3.XSS lưu trữ trong các ngữ cảnh khác nhau.

Có nhiều loại kịch bản chéo trang lưu trữ khác nhau. Vị trí của dữ liệu lưu trữ trong phản hồi của ứng dụng xác định loại tải trọng nào được yêu cầu để khai thác dữ liệu đó và cũng có thể ảnh hưởng đến tác động của lỗ hổng bảo mật.
Ngoài ra, nếu ứng dụng thực hiện bất kỳ xác thực hoặc xử lý nào khác đối với dữ liệu trước khi dữ liệu lưu trữ hoặc tại thời điểm dữ liệu lưu trữ được tích hợp vào các phản hồi, thì điều này thường sẽ ảnh hưởng đến loại tải trọng XSS cần thiết.

4.Ví dụ về 1 cuộc tấn công xss lưu trữ.

Related Posts

Để lại một bình luận