Rate this post

Máy chủ web thường lưu trữ một số ứng dụng web trên cùng một địa chỉ IP, đề cập đến từng ứng dụng thông qua máy chủ ảo. Trong một yêu cầu HTTP đến, máy chủ web thường gửi yêu cầu đến máy chủ ảo mục tiêu dựa trên giá trị được cung cấp trong tiêu đề Máy chủ. Nếu không xác thực đúng giá trị tiêu đề, kẻ tấn công có thể cung cấp đầu vào không hợp lệ để khiến máy chủ web:

  • gửi yêu cầu đến máy chủ ảo đầu tiên trong danh sách
  • gây ra chuyển hướng đến miền do kẻ tấn công kiểm soát
  • thực hiện đầu độc bộ nhớ cache web
  • thao tác chức năng đặt lại mật khẩu

Các bài viết liên quan:

Mục tiêu kiểm tra

Đánh giá xem tiêu đề Máy chủ lưu trữ có được phân tích cú pháp động trong ứng dụng hay không.

Bỏ qua các kiểm soát bảo mật dựa trên tiêu đề.

Làm thế nào để kiểm tra

Thử nghiệm ban đầu đơn giản như cung cấp một miền khác (tức là attacker.com) vào trường tiêu đề Máy chủ lưu trữ. Đó là cách máy chủ web xử lý giá trị tiêu đề quyết định tác động. Cuộc tấn công có hiệu lực khi máy chủ web xử lý đầu vào để gửi yêu cầu đến máy chủ do kẻ tấn công kiểm soát cư trú tại miền được cung cấp chứ không phải máy chủ ảo nội bộ nằm trên máy chủ web.

GET / HTTP/1.1
Host: www.attacker.com
[...]

Trong trường hợp đơn giản nhất, điều này có thể gây ra chuyển hướng 302 đến miền được cung cấp.

HTTP/1.1 302 Found
[...]
Location: http://www.attacker.com/login.php

Ngoài ra, máy chủ web có thể gửi yêu cầu đến máy chủ ảo đầu tiên trong danh sách.

X-Forwarded Host Header Bypass

Trong trường hợp việc chèn tiêu đề Máy chủ lưu trữ được giảm thiểu bằng cách kiểm tra đầu vào không hợp lệ được đưa vào qua tiêu đề Máy chủ lưu trữ, bạn có thể cung cấp giá trị cho tiêu đề X-Forwarded-Host.

GET / HTTP/1.1
Host: www.example.com
X-Forwarded-Host: www.attacker.com
...

Có tiềm năng sản xuất đầu ra từ phía khách hàng như:

...
<link src="http://www.attacker.com/link" />
...

Một lần nữa, điều này phụ thuộc vào cách máy chủ web xử lý giá trị tiêu đề.

Web Cache Poisoning

Sử dụng kỹ thuật này, kẻ tấn công có thể thao túng bộ đệm web để cung cấp nội dung bị nhiễm độc cho bất kỳ ai yêu cầu. Điều này phụ thuộc vào khả năng đầu độc proxy bộ nhớ đệm do chính ứng dụng chạy, CDN hoặc các nhà cung cấp hạ lưu khác. Do đó, nạn nhân sẽ không kiểm soát được việc nhận nội dung độc hại khi yêu cầu ứng dụng dễ bị tấn công.

GET / HTTP/1.1
Host: www.attacker.com
...

Phần sau sẽ được phục vụ từ bộ nhớ cache của web, khi nạn nhân truy cập ứng dụng dễ bị tấn công.

...
<link src="http://www.attacker.com/link" />
...

Password Reset Poisoning

Chức năng đặt lại mật khẩu thường bao gồm giá trị tiêu đề Máy chủ lưu trữ khi tạo liên kết đặt lại mật khẩu sử dụng mã thông báo bí mật đã tạo. Nếu ứng dụng xử lý miền do kẻ tấn công kiểm soát để tạo liên kết đặt lại mật khẩu, nạn nhân có thể nhấp vào liên kết trong email và cho phép kẻ tấn công lấy mã đặt lại, do đó đặt lại mật khẩu của nạn nhân.

... Email snippet ...

Click on the following link to reset your password:

http://www.attacker.com/index.php?module=Login&action=resetPassword&token=<SECRET_TOKEN>

... Email snippet ...

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Contact Me on Zalo
Call now