Dịch vụ 301party.com tiết lộ lỗ hổng bảo mật trong ứng dụng web thông qua chuyển hướng mở có chủ ý

Nhóm Cộng đồng BigGo
Dịch vụ 301party.com tiết lộ lỗ hổng bảo mật trong ứng dụng web thông qua chuyển hướng mở có chủ ý

Một dịch vụ web mới có tên 301party.com đã xuất hiện như một công cụ kiểm thử và đồng thời là minh chứng cho những rủi ro bảo mật nghiêm trọng trong các ứng dụng web. Dịch vụ này cố ý cung cấp chức năng chuyển hướng mở, cho phép người dùng chuyển hướng các yêu cầu HTTP đến bất kỳ đích nào họ chỉ định. Mặc dù được thiết kế như một tiện ích để kiểm thử hành vi chuyển hướng, nền tảng này đã khơi dậy các cuộc thảo luận về những tác động bảo mật của các dịch vụ như vậy.

Khai thác lỗ hổng bỏ qua hệ thống xác thực

Dịch vụ này đã tìm thấy ứng dụng thực tế trong cộng đồng các nhà phát triển và nhà nghiên cứu bảo mật, những người cần bỏ qua các hạn chế nghiêm ngặt về URL callback trong hệ thống xác thực. Nhiều nền tảng chặn địa chỉ localhost hoặc 127.0.0.1 trong cấu hình callback của họ, nhưng 301party.com cung cấp các cách giải quyết thông minh thông qua các bản ghi DNS của mình. Dịch vụ ánh xạ localhost.301party.com trực tiếp đến 127.0.0.1, hiệu quả trong việc phá vỡ các biện pháp bảo mật này.

Bạn không thể thêm 127.0.0.1 hoặc localhost làm URL callback...hãy xem tôi làm thế nào.

Khả năng này làm nổi bật một điểm yếu cơ bản trong cách nhiều hệ thống xác thực xác thực URL chuyển hướng, chỉ tập trung vào tên miền thay vì độ phân giải IP thực tế của chúng.

Bản ghi DNS:

  • localhost.301party.com → 127.0.0.1
  • metadata.301party.com → 169.254.169.254
  • ipv6.metadata.301party.com → [::169.254.169.254]

Những lối tắt nguy hiểm đến tài nguyên nhạy cảm

Có lẽ đáng lo ngại nhất là những lối tắt được định nghĩa trước của dịch vụ nhắm đến các tài nguyên hệ thống nhạy cảm. Nền tảng này cung cấp các đường dẫn trực tiếp đến dịch vụ metadata AWS , hệ thống tệp cục bộ và địa chỉ mạng nội bộ. Những lối tắt này bao gồm truy cập đến dịch vụ metadata instance AWS tại 169.254.169.254, các tệp hệ thống cục bộ như /etc/passwd, và các dải mạng nội bộ.

Các chuyên gia bảo mật trong cộng đồng đã lưu ý rằng trong khi các trình duyệt hiện đại chặn chuyển hướng file://, nhiều thư viện HTTP client backend sẽ mù quáng theo dõi những chuyển hướng này. Điều này tạo ra một lỗ hổng nghiêm trọng khi các ứng dụng tìm nạp và hiển thị nội dung dựa trên URL do người dùng cung cấp có thể vô tình tiết lộ dữ liệu nội bộ nhạy cảm.

Dịch vụ metadata AWS : Một địa chỉ IP đặc biệt được sử dụng bởi Amazon Web Services để cung cấp thông tin instance cho các máy ảo đang chạy

Các phím tắt được định nghĩa sẵn:

  • /metadata → Dịch vụ metadata của AWS (169.254.169.254)
  • /metadata6 → Dịch vụ metadata của AWS IPv6
  • /localhost → 127.0.0.1
  • /zeroes → 0.0.0.0
  • /passwd → file:///etc/passwd
  • /services → file:///etc/services
  • /environ → file:///self/proc/environ

Những đặc điểm kỹ thuật và vấn đề triển khai

Việc kiểm thử của cộng đồng đã tiết lộ một số hành vi kỹ thuật thú vị trong dịch vụ. Nền tảng này hỗ trợ các mã trạng thái HTTP không chuẩn ngoài các chuyển hướng 3xx thông thường, bao gồm trạng thái 451 (Không khả dụng vì lý do pháp lý) và thậm chí trạng thái 0, điều này gây ra sự cố hệ thống. Người dùng cũng đã phát hiện ra rằng dịch vụ có thể tạo ra chuỗi chuyển hướng đệ quy, mặc dù các trình duyệt cuối cùng sẽ từ bỏ sau khi theo dõi quá nhiều chuyển hướng.

Dịch vụ này chứng minh cách chức năng chuyển hướng có thể bị lạm dụng theo những cách không mong đợi, đóng vai trò như một công cụ kiểm thử hữu ích và một ví dụ cảnh báo về rủi ro bảo mật trong các ứng dụng web.

Các mã trạng thái HTTP có sẵn:

  • 301, 302, 303, 307, 308 (chuyển hướng tiêu chuẩn)
  • 451 (Không khả dụng vì lý do pháp lý)
  • Hỗ trợ các mã trạng thái tùy chỉnh
  • Trạng thái 0 gây ra sự cố hệ thống

Kết luận

Mặc dù 301party.com phục vụ các mục đích kiểm thử hợp pháp, sự tồn tại của nó nhấn mạnh những cân nhắc bảo mật quan trọng cho các nhà phát triển web. Dịch vụ này hiệu quả chứng minh cách các chuyển hướng mở có thể được vũ khí hóa để bỏ qua kiểm soát xác thực và truy cập tài nguyên nhạy cảm. Các tổ chức nên xác thực cẩn thận không chỉ các miền trong URL chuyển hướng, mà còn cân nhắc những tác động bảo mật của việc theo dõi chuyển hướng đến tài nguyên nội bộ hoặc nhạy cảm.

Tham khảo: 301party.com: the intentionally open redirect