PHP SSRF
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Деякі функції, такі як file_get_contents(), fopen(), file(), md5_file() приймають URL-адреси як вхідні дані, які вони будуть слідувати, що робить можливими вразливості SSRF, якщо користувач може контролювати дані:
Як пояснено в цьому блозі, навіть функція Wordpress wp_safe_remote_get
вразлива до DNS rebinding, що робить її потенційно вразливою до атак SSRF. Основна валідація, яку вона викликає, це wp_http_validate_url, яка перевіряє, що протокол є http://
або https://
і що порт є одним з 80, 443 або 8080, але вона вразлива до DNS rebinding.
Інші вразливі функції згідно з постом:
wp_safe_remote_request()
wp_safe_remote_post()
wp_safe_remote_head()
WP_REST_URL_Details_Controller::get_remote_url()
download_url()
wp_remote_fopen()
WP_oEmbed::discover()
Більше того, в деяких випадках може бути навіть можливим надсилати довільні заголовки через "вразливості" CRLF у попередніх функціях:
Для отримання додаткової інформації про цю вразливість CRLF, перегляньте цей баг https://bugs.php.net/bug.php?id=81680&edit=1
Зверніть увагу, що ці функції можуть мати інші методи для встановлення довільних заголовків у запитах, такі як:
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)