Tux

  • تدوينات
    20
  • تعليقات
    3
  • قراءات
    2139

HTTPoxy ثغرة أمنية PHP و CGI

mohammed

325 قراءات

ضهور ثغرة جديدة وخروجها من الفرن (HTTPoxy) بطابع جد حساس للخوادم التي تستعمل PHP و CGI لكن يأثر ايضا على استعمال برمجة السكريبت الآخرى في الخادم،مصدر المشكلة هي متغير HTTP_PROXY
من جهة CGI وما تٌعَرف الثغرة RFC 3875 يقوم باستعمال تلقائي للعلامة الوصفية "HTTP_" لتحديد البرتوكول المستعمل، لذالك اذا اضفنا header في طلب HTTP من نوعية "PROXY" فربما سيتم اعادة كتابة متغير  HTTP_PROXY في الخادم الضحية، وبالتالي يمكن تحديد بروكسي وهمي وعمل هجوم MiTM.
يمكن رأيته افضل في كيفية استعماله،ملف من نوعية cgi نقوم برد ما يوجد بمتغير HTTP_PROXY

test.cgi:

#!/bin/sh
echo "Content-Type:text/plain"
echo ""
echo "HTTP_PROXY='$HTTP_PROXY'"

 في طلب http بطلب تغيير قيمة "Proxy:"

curl -H 'Proxy: AFFECTED' http://my-server-name/cgi-bin/test.cgi

خارج الطلب اذا ضهر HTTP_PROXY='AFFECTED' فيمكنك ان تبحث عن حل في اقرب وقت.

العجيب في الامر ان الثغرة تم اصلاحها في نسخ perl و curl منذ 15 في عام 2001 لكن لزمتنا كل هذا الوقت في cgi، ولإتخاذ اجرائات في اصلاحها هناك بعض ما يمكننا القيام به على حسب نوعية الخادم الذي نستعمل

Apache

لكل الخادم او في ملف للموقع

RequestHeader unset Proxy early

Apache + Mod_Security

SecRule &REQUEST_HEADERS:Proxy "@gt 0" "id:1000005,log,deny,msg:'httpoxy denied'"

HAProxy

http-request del-header Proxy

NGINX و FastCGI

fastcgi_param HTTP_PROXY "";

Varnish

sub vcl_recv {
    [...]
    unset req.http.proxy;
    [...]
}

 



0 تعليقات


Recommended Comments

لاتوجد تعليقات لعرضها .

زوار
انت تقوم بالتعليق كزائر. اذا كنت تمتلك حساب فقم بتسجيل الدخول تسجيل دخول.
اضف تعليق...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoticons maximum are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.