#

SSRF là gì? Cách kiểm tra lỗ hổng bảo mật SSRF

Server Side Request Forgery (SSRF) được biết đến là một trong những cuộc tấn công gây hậu quả nghiêm trọng và khó ngăn chặn bậc nhất. Vậy SSRF là gì? Hôm nay BKHOST sẽ cùng các bạn tìm hiểu.

Server Side Request Forgery (SSRF) là gì?

Server Side Request Forgery (SSRF) la gi

SSRF (Server Side Request Forgery) là một cuộc tấn công lấy những thông tin nhạy cảm từ sever phụ trợ của ứng dụng thông qua tấn công trang web của server. Trong yêu cầu trang web của server, những kẻ tấn công gửi các gói độc hại đến bất kỳ server web kết nối Internet nào. Thay mặt cho kẻ tấn công server web này sẽ gửi các gói đến server phía sau chạy trên mạng nội bộ.

Đăng ký dịch vụ Hosting Giá Rẻ tại BKHOST

BKHOST đang có chương trình khuyến mãi cực tốt dành cho khách hàng đăng ký dịch vụ Hosting Giá Rẻ:

  • Giảm giá cực sâu hàng tuần và hàng tháng. Xem chương trình khuyến mãi mới nhất tại đây: Khuyến mãi hosting.
  • Chỉ từ 5k/tháng.
  • Tặng bảo mật SSL.

Đăng ký ngay:

hosting giá rẻ cho sinh viên

Lỗ hổng này chủ yếu được tìm thấy trong ứng dụng có cơ sở cung cấp URL để tìm nạp dữ liệu từ các máy chủ tương ứng, cũng có trong ứng dụng trong đó hai hoặc nhiều máy chủ từ các máy chủ khác nhau giao tiếp với nhau để chia sẻ thông tin. Để hiểu hơn về SSRF hãy cùng theo dõi ví dụ sau:

Vi du tan cong SSRF

Ở ví dụ trên những kẻ tấn công gửi packet A đến server có sẵn công khai và để đáp ứng truy vấn của người dùng, server công cộng sẽ gửi yêu cầu đến server phụ trợ cùng với packet B, vì yêu cầu này đến từ server công cộng nên server phụ trợ sẽ tin tưởng rằng packet B đến từ mạng nội bộ và chấp nhận packet và gửi phản hồi. Điều này có thể xảy ra vì kẻ tấn công thực hiện yêu cầu thay mặt cho các server khác.

Các loại Server Side Request Forgery (SSRF)

1. Blind SSRF

Trong Blind SSRF, dữ liệu của packet B được gửi đến ứng dụng trong mạng nội bộ đáng tin cậy nhưng kẻ tấn công không thể kiểm soát. Tại đây, kẻ tấn công có thể kiểm soát địa chỉ IP và các cổng của server. Để khai thác loại SSRF này, chúng tôi phải cung cấp URL theo sau là dấu hai chấm và số cổng, chúng tôi có thể tìm thấy các cổng mở và đóng của máy chủ bằng cách quan sát các phản hồi và thông báo lỗi từ máy chủ. Để kiểm tra trạng thái của chúng nên chúng tôi đã thử quy trình này cho các cổng khác nhau.

Ví dụ:

http://example.com:1337http://example.com:9923http://example.com:43http://example.com:22

2. Phản hồi hạn chế/Partial SSRF

Trong loại SSRF này, chúng tôi nhận được phản hồi hạn chế từ server như tiêu đề của trang hoặc có quyền truy cập vào tài nguyên nhưng không thể xem dữ liệu. Chúng tôi chỉ có thể kiểm soát một số phần nhất định của packet B đến ứng dụng nội bộ, có thể sử dụng loại SSRF này để đọc các tệp hệ thống cục bộ như /etc/config, /etc/hosts, etc/passwd và nhiều tệp khác. Chúng ta có thể đọc các tệp trên hệ thống bằng cách sử dụng giao thức file:// . Trong một số trường hợp, XXE injection, DDos, các loại lỗ hổng này có thể hữu ích khi khai thác Lỗ hổng Partial SSRF.

Ví dụ:

file:///etc/hosts
file:///etc/config
file:///etc/passwd

3. SSRF phản hồi đầy đủ

Trong SSRF loại này, chúng tôi có toàn quyền kiểm soát packet B . Từ đó có thể tìm các lỗ hổng trong mạng nội bộ bằng cách truy cập các dịch vụ đang chạy trên mạng nội bộ. Trong loại SSRF này, chúng ta có thể sử dụng các giao thức như file://, dict://, http://, gopher://, v.v. để tạo các yêu cầu khác nhau và khai thác mạng nội bộ nếu phát hiện lỗ hổng. Bằng cách gửi một chuỗi lớn trong yêu cầu gây ra lỗi tràn bộ đệm lỗ hổng loại này có thể khiến ứng dụng gặp sự cố do tràn bộ đệm.

Ví dụ:

http://192.168.1.8/BBBBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

Các yếu tố trong quá trình kiểm tra lỗ hổng SSRF

  • Whitelisting: Server chỉ cho phép một số tên miền được sử dụng trong request, server có danh sách trắng tên miền nếu tên miền trong danh sách đó khớp với tên miền trong request thì chỉ chấp nhận yêu cầu, ngược lại server từ chối yêu cầu.
  • Blacklisting (Danh sách đen): Server loại bỏ tất cả các yêu cầu chứa địa chỉ IP, tên miền và từ khóa khỏi danh sách đen của server.
  • Restricted content (Nội dung bị hạn chế): Server chỉ cho phép người dùng truy cập một số lượng tệp cụ thể, nó chỉ cho phép một số loại phần mở rộng tệp để truy cập công khai.

Các điểm chính để kiểm tra lỗ hổng SSRF

  • Luôn đảm bảo rằng bạn đang thực hiện các yêu cầu tới server phụ trợ thay mặt cho server công cộng chứ không phải từ trình duyệt.
  • Để tìm nạp dữ liệu từ máy chủ, hãy thử http://localhost/xyz/ với http://127.0.0.1/xyz.
  • Server có thể có tường lửa bảo vệ luôn cố gắng vượt tường lửa nếu có thể.
  • Đảm bảo rằng yêu cầu đến từ server chứ không phải từ server cục bộ của bạn.

Tổng kết về SSRF

Vừa rồi BKHOST đã cùng bạn tìm hiểu về Server Side Request Forgery (SSRF) và các loại SSRF. Hy vọng bài viết đã mang đến cho bạn những kiến thức bổ ích.

Nếu còn gặp bất cứ vướng mắc gì về SSRF, hãy để lại ở bên bình luận bên dưới, BKHOST sẽ trả lời bạn trong thời gian sớm nhất.

P/s: Bạn cũng có thể truy cập vào Blog của BKHOST để đọc thêm các bài viết chia sẻ kiến thức về lập trình, quản trị mạng, website, domain, hosting, vps, server, email,… Chúc bạn thành công.

Dịch vụ Cho Thuê Server Riêng tiêu chuẩn quốc tế

BKHOST đang có chương trình khuyến mãi cực tốt dành cho khách hàng đăng ký dịch vụ Server Riêng:

  • Giảm giá lên đến 45%.
  • 100% RAM vật lý.
  • Tặng thêm 16GB RAM.

Đăng ký ngay:

cho thuê máy chủ vật lý

Tôi là Trịnh Duy Thanh, CEO & Founder Công ty Cổ Phần Giải Pháp Mạng Trực Tuyến Việt Nam - BKHOST. Với sứ mệnh mang tới các dịch vụ trên Internet tốt nhất cho các cá nhân và doanh nghiệp trong nước và quốc tế, tôi luôn nỗ lực hết mình nâng cấp đầu tư hệ thống phần cứng, nâng cao chất lượng dịch vụ chăm sóc khách hàng để đem đến những sản phẩm hoàn hảo nhất cho người tiêu dùng. Vì vậy, tôi tin tưởng sẽ đem đến các giải pháp CNTT mới nhất, tối ưu nhất, hiệu quả nhất và chi phí hợp lý nhất cho tất cả các doanh nghiệp.
Bình luận

Thanh toán linh hoạt

Chúng tôi chấp nhận thanh toán như ATM, Visa, Internet Banking, Paypal, Baokim, Ngân lượng

Gọi ĐT tư vấn ngay
Chat ngay qua Zalo
Chat ngay qua Messenger