Snuffleupagus പ്രോജക്റ്റ് കേടുപാടുകൾ തടയുന്നതിനായി ഒരു PHP മൊഡ്യൂൾ വികസിപ്പിക്കുന്നു

പദ്ധതിയുടെ അതിരുകളിൽ സ്നഫ്ലുപാഗസ് വികസിപ്പിക്കുന്നു модуль для подключения к интерпретатору PHP7, предназначенный для повышения безопасности окружения и блокирования типовых ошибок, приводящих к появлению уязвимостей в выполняемых PHP-приложениях. Модуль также позволяет создавать виртуальные патчи для устранения конкретных проблем без изменения исходных текстов уязвимого приложения, что удобно для применения в системах массового хостинга, на которых невозможно добиться поддержания всех пользовательских приложений в актуальном виде. Модуль написан на языке Си, подключается в форме разделяемой библиотеки («extension=snuffleupagus.so» в php.ini) и വിതരണം ചെയ്തത് LGPL 3.0 പ്രകാരം ലൈസൻസ്.

Snuffleupagus предоставляет систему правил, позволяющую использовать как типовые шаблоны для повышения защиты, так и создавать собственные правила для контроля входных данных и параметров функций. Например, правило «sp.disable_function.function(«system»).param(«command»).value_r(«[$|;&`\\n]»).drop();» позволяет не изменяя приложения ограничить использование спецсимволов в аргументах функции system(). Аналогично можно создавать വെർച്വൽ പാച്ചുകൾ для блокирования известных уязвимостей.

Судя по проведённым разработчиками тестам Snuffleupagus почти не снижает производительность. Для обеспечения собственной безопасности (возможные уязвимости в прослойке для защиты могут служить дополнительным вектором для атак) в проекте применяется доскональное тестирование каждого коммита в разных дистрибутивах, используются системы статического анализа, код оформляется и документируется для упрощения проведения аудита.

Предоставляются встроенные методы для блокирования таких классов уязвимоcтей, как проблемы, ബന്ധപ്പെട്ട ഡാറ്റ സീരിയലൈസേഷനോടൊപ്പം, സുരക്ഷിതമല്ലാത്ത PHP മെയിൽ() ഫംഗ്‌ഷന്റെ ഉപയോഗം, XSS ആക്രമണ സമയത്ത് കുക്കി ഉള്ളടക്കങ്ങളുടെ ചോർച്ച, എക്‌സിക്യൂട്ടബിൾ കോഡ് ഉപയോഗിച്ച് ഫയലുകൾ ലോഡുചെയ്യുന്നത് മൂലമുള്ള പ്രശ്നങ്ങൾ (ഉദാഹരണത്തിന്, ഫോർമാറ്റിൽ phar), മോശം നിലവാരമുള്ള റാൻഡം നമ്പർ ജനറേഷൻ കൂടാതെ പകരംവയ്ക്കൽ തെറ്റായ XML നിർമ്മാണങ്ങൾ.

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

  • കുക്കികൾക്കായി "സുരക്ഷിത", "സമസൈറ്റ്" (CSRF സംരക്ഷണം) ഫ്ലാഗുകൾ സ്വയമേവ പ്രവർത്തനക്ഷമമാക്കുക, എൻക്രിപ്ഷൻ കുക്കി;
  • ആക്രമണങ്ങളുടെ അടയാളങ്ങൾ തിരിച്ചറിയുന്നതിനും ആപ്ലിക്കേഷനുകളുടെ വിട്ടുവീഴ്ച ചെയ്യുന്നതിനുമുള്ള ബിൽറ്റ്-ഇൻ നിയമങ്ങളുടെ കൂട്ടം;
  • നിർബന്ധിത ആഗോള സജീവമാക്കൽ "കണിശമായ" (ഉദാഹരണത്തിന്, ഒരു പൂർണ്ണസംഖ്യ മൂല്യം ഒരു ആർഗ്യുമെന്റായി പ്രതീക്ഷിക്കുമ്പോൾ ഒരു സ്ട്രിംഗ് വ്യക്തമാക്കാനുള്ള ശ്രമത്തെ തടയുന്നു) കൂടാതെ പരിരക്ഷയും തരം കൃത്രിമത്വം;
  • ഡിഫോൾട്ട് തടയൽ പ്രോട്ടോക്കോൾ റാപ്പറുകൾ (ഉദാഹരണത്തിന്, "phar://" നിരോധിക്കുന്നു) അവരുടെ വ്യക്തമായ വൈറ്റ്‌ലിസ്റ്റിംഗ്;
  • എഴുതാൻ കഴിയുന്ന ഫയലുകൾ എക്സിക്യൂട്ട് ചെയ്യുന്നതിനുള്ള നിരോധനം;
  • ഇവാലിന് ബ്ലാക്ക് ആൻഡ് വൈറ്റ് ലിസ്റ്റുകൾ;
  • ഉപയോഗിക്കുമ്പോൾ TLS സർട്ടിഫിക്കറ്റ് പരിശോധന പ്രവർത്തനക്ഷമമാക്കേണ്ടതുണ്ട്
    ചുരുളൻ;

  • ഒറിജിനൽ ആപ്ലിക്കേഷൻ സംഭരിച്ച ഡാറ്റ ഡീസിയലൈസേഷൻ വീണ്ടെടുക്കുന്നുവെന്ന് ഉറപ്പാക്കാൻ സീരിയലൈസ് ചെയ്ത ഒബ്‌ജക്റ്റുകളിലേക്ക് HMAC ചേർക്കുന്നു;
  • ലോഗിംഗ് മോഡ് അഭ്യർത്ഥിക്കുക;
  • XML പ്രമാണങ്ങളിലെ ലിങ്കുകൾ വഴി libxml-ൽ ബാഹ്യ ഫയലുകൾ ലോഡ് ചെയ്യുന്നത് തടയുന്നു;
  • അപ്‌ലോഡ് ചെയ്ത ഫയലുകൾ പരിശോധിക്കുന്നതിനും സ്കാൻ ചെയ്യുന്നതിനും ബാഹ്യ ഹാൻഡ്‌ലറുകൾ (upload_validation) ബന്ധിപ്പിക്കുന്നതിനുള്ള കഴിവ്;

Проект создан и используется для защиты пользователей в инфраструктуре одного из крупных французских операторов хостинга. ഇത് ശ്രദ്ധിക്കപ്പെടുന്നു, что просто подключение Snuffleupagus позволило бы защититься от многих опасных уязвимостей, выявленных в этом году в Drupal, WordPress и phpBB. Уязвимости в Magento и Horde могли бы быть блокированы включением режима
«sp.readonly_exec.enable()».

അവലംബം: opennet.ru

ഒരു അഭിപ്രായം ചേർക്കുക