PHP अनुप्रयोगों में कमजोरियों को रोकने के लिए एक मॉड्यूल, स्नफ़लुपेगस 0.5.1 का विमोचन

एक साल के विकास के बाद प्रकाशित परियोजना विमोचन Snuffleupagus 0.5.1, предоставляющего модуль к интерпретатору PHP7 для повышения безопасности окружения и блокирования типовых ошибок, приводящих к появлению уязвимостей в выполняемых PHP-приложениях. Модуль также позволяет создавать आभासी पैच для устранения конкретных проблем без изменения исходных текстов уязвимого приложения, что удобно для применения в системах массового хостинга, на которых невозможно добиться поддержания всех пользовательских приложений в актуальном виде. Накладные расходы от работы модуля оцениваются как минимальные. Модуль написан на языке Си, подключается в форме разделяемой библиотеки («extension=snuffleupagus.so» в php.ini) и द्वारा वितरित एलजीपीएल 3.0 के तहत लाइसेंस प्राप्त।

Snuffleupagus предоставляет систему правил, позволяющую использовать как типовые шаблоны для повышения защиты, так и создавать собственные правила для контроля входных данных и параметров функций. Например, правило «sp.disable_function.function(«system»).param(«command»).value_r(«[$|;&`\\n]»).drop();» позволяет не изменяя приложения ограничить использование спецсимволов в аргументах функции system(). Предоставляются встроенные методы для блокирования таких классов уязвимоcтей, как проблемы, связанные डेटा क्रमांकन के साथ, असुरक्षित PHP मेल() फ़ंक्शन का उपयोग, XSS हमलों के दौरान कुकी सामग्री का रिसाव, निष्पादन योग्य कोड के साथ फ़ाइलें लोड करने के कारण समस्याएं (उदाहरण के लिए, प्रारूप में) चरण), खराब गुणवत्ता वाली यादृच्छिक संख्या पीढ़ी और प्रतिस्थापन गलत XML निर्माण.

Предоставляемые в Snuffleupagus режимы повышения защиты PHP:

  • कुकीज़ के लिए "सुरक्षित" और "सेमसाइट" (सीएसआरएफ सुरक्षा) झंडे स्वचालित रूप से सक्षम करें, एन्क्रिप्शन कुकी;
  • हमलों के निशान और अनुप्रयोगों के समझौते की पहचान करने के लिए नियमों का अंतर्निहित सेट;
  • "की जबरन वैश्विक सक्रियताकठोर" (उदाहरण के लिए, एक तर्क के रूप में पूर्णांक मान की अपेक्षा करते समय एक स्ट्रिंग निर्दिष्ट करने के प्रयास को अवरुद्ध करता है) और इसके विरुद्ध सुरक्षा प्रकार का हेरफेर;
  • डिफ़ॉल्ट अवरोधन प्रोटोकॉल रैपर (उदाहरण के लिए, उनकी स्पष्ट श्वेतसूची के साथ "फ़ार: //" पर प्रतिबंध लगाना);
  • लिखने योग्य फ़ाइलों को निष्पादित करने पर प्रतिबंध;
  • eval के लिए श्वेत-श्याम सूचियाँ;
  • उपयोग करते समय टीएलएस प्रमाणपत्र जांच सक्षम करना आवश्यक है
    कर्ल;
  • क्रमबद्ध ऑब्जेक्ट में एचएमएसी जोड़ना यह सुनिश्चित करने के लिए कि डिसेरिएलाइज़ेशन मूल एप्लिकेशन द्वारा संग्रहीत डेटा को पुनः प्राप्त करता है;
  • लॉगिंग मोड का अनुरोध करें;
  • XML दस्तावेज़ों में लिंक के माध्यम से libxml में बाहरी फ़ाइलों की लोडिंग को अवरुद्ध करना;
  • अपलोड की गई फ़ाइलों की जांच और स्कैन करने के लिए बाहरी हैंडलर (अपलोड_वैलिडेशन) को कनेक्ट करने की क्षमता;

के बीच में परिवर्तन в новом выпуске: Улучшена поддержка PHP 7.4 и реализована совместимость с находящейся в разработке веткой PHP 8. Добавлена возможность журналирования событий через syslog (для включения предложена директива sp.log_media, которая может принимать значения php или syslog). Обновлён предлагаемый по умолчанию набор правил, в который добавлены новые правила для выявленных в последнее время уязвимостей и техник атак на web-приложения. Улучшена поддержка macOS и расширено применение платформы непрерывной интеграции на базе GitLab.

स्रोत: opennet.ru

एक टिप्पणी जोड़ें