krone
VIP Members
-
26/07/2016
-
141
-
259 bài viết
XSS stored in Markdown via Label references
Label references được định dạng trong các trường Markdown có thể sử dụng để chèn các mã javascript trên Gitlab page.
Mô tả:
Một tidle symbol theo sau escape string dạng double quote tạo một liên kết tới Label được đặt tên trước.
Ví dụ:
Các bước thực hiện:
Ảnh hưởng:
Kẻ tấn công có thể chèn các mã javascript để đánh cắp SSH key hoặc password của người dùng được lưu trữ trên trình duyệt khi người dùng truy cập file thông qua preview của Gitlab.
Mô tả:
Một tidle symbol theo sau escape string dạng double quote tạo một liên kết tới Label được đặt tên trước.
, kẻ tấn công có thể nhập vào một mã tuỳ biến javascript trong double quote. Các entities được decode hiển thị trong trình preview của Gitlab, khiến các mã javascript hoạt động một cách tự nhiên trên trình duyệt của người dùng.~"label name"
Ví dụ:
Mã:
~"<img src=x onerror="alert('XSS stored in Markdown')">"
Các bước thực hiện:
- Chỉnh sửa file README.md trong project.
- Nhập mã javascript tuỳ chỉnh
~"<img src=x onerror="alert('XSS stored in Markdown')">"
- Commit để lưu thay đổi, sau đó xem nội dung qua trình preview của Gitlab.
- Trình alert của mã javascript hiển thị trên trang chính.
Ảnh hưởng:
Kẻ tấn công có thể chèn các mã javascript để đánh cắp SSH key hoặc password của người dùng được lưu trữ trên trình duyệt khi người dùng truy cập file thông qua preview của Gitlab.