PHP SSRF
Last updated
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Eğitim AWS Kırmızı Takım Uzmanı (ARTE) GCP Hacking'i öğrenin ve pratik yapın: HackTricks Eğitim GCP Kırmızı Takım Uzmanı (GRTE)
file_get_contents(), fopen(), file(), md5_file() gibi bazı fonksiyonlar, kontrol edilebilen veriler varsa SSRF zafiyetlerini mümkün kılacak URL'leri girdi olarak kabul eder:
As bu blog yazısında açıklandığı gibi, Wordpress fonksiyonu wp_safe_remote_get
DNS rebinding'e karşı savunmasızdır ve bu da onu SSRF saldırılarına karşı potansiyel olarak savunmasız hale getirir. Çağırdığı ana doğrulama wp_http_validate_url'dir, bu da protokolün http://
veya https://
olduğunu ve portun 80, 443 veya 8080'den biri olduğunu kontrol eder, ancak DNS rebinding'e karşı savunmasızdır.
Yazıya göre diğer savunmasız fonksiyonlar şunlardır:
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()
Ayrıca, bazı durumlarda önceki fonksiyonlardaki CRLF "açıkları" aracılığıyla keyfi başlıklar göndermek bile mümkün olabilir:
Bu CRLF açığı hakkında daha fazla bilgi için bu hatayı kontrol edin https://bugs.php.net/bug.php?id=81680&edit=1
Bu fonksiyonların, isteklerde keyfi başlıklar ayarlamak için başka yöntemleri olabileceğini unutmayın, örneğin:
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Eğitim AWS Kırmızı Takım Uzmanı (ARTE) GCP Hacking'i öğrenin ve pratik yapın: HackTricks Eğitim GCP Kırmızı Takım Uzmanı (GRTE)