Борьба с хакерскими атаками на PHP сайты

Опубликовано Vladimir - пт, 16.07.2010 - 10:58

Добавить комментарий

Содержимое данного поля является приватным и не предназначено для показа.

Filtered HTML

  • Допустимые HTML-теги: <a href hreflang> <em> <strong> <cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <p> <br><b><i> <img src alt height width>
  • Строки и абзацы переносятся автоматически.
  • Адреса веб-страниц и email-адреса преобразовываются в ссылки автоматически.

Защита от сканирования

При атаке в первую очередь запускается сканирование сайта

Для этого можно использовать библиотеку PHP IDS (Intruder Detection System) -

1. Библиотеку копируем в корень приложения в каталог IDS

2. Настраиваем конфиг файл (переименовываем IDS/Config.ini.php в IDS/Config.ini)

3. Прописываем base_path - абсолютный путь к IDS

4. Ставим use_base_path = true

5 Интегрируем вызов в всое web-приложение до обработчика параметров запроса (например в начало index.php)

require_once 'IDS/Init.php';
$request = array(
'REQUEST' => $_REQUEST,
'GET' => $_GET,
'POST' => $_POST,
'COOKIE' => $_COOKIE
);
$init = IDS_Init::init('IDS/Config/Config.ini');
$ids = new IDS_Monitor($request, $init);
$result = $ids->run();

Фильтрация HTML вводимого пользователем

При написании веб приложения часто требуется, чтобы пользователь мог вводить

html. При этом опасность возрастает.

Для проверки и очистки HTML пригодится HTML Purifier

Копируем библиотеку в доступное место и используем:

<?php
require_once '/path/to/htmlpurifier/library/HTMLPurifier.auto.php';

$purifier = new HTMLPurifier();

$clean_html = $purifier->purify($dirty_html);
?>