Защита dle v 1.2
Автор:myzikk(дал идею Zloy или просто Злое Чудо)
Часть 1.
Качаем и устанавливаем программу @Text Replacer (http://1001soft.com/download/text_replacer-3445-0.html)
У Вас должен быть розкодирован файл \engine\inc\include\init.php(его можно взять с нула от мид теам для вашей версии dle)
Открываем программу и добавляем вот такие настройки:
Вы спросите для чего мы меняем название файла с паролями от mysql.
Я Вам отвечу чтоб хац.хакер не мог вытащить наш файл например как сейчас актуально редактировать исходный код загрузки файлов и вытаскивать Ваш dbconfig.
После того как вы сделали как на скрине Вы нажимаете найти, затем заменить.И не забудьте переименовать сам dbconfig.php в ваше название которые Вы использовали в программе.
Если Вы все сделали правильно у Вас ни на сайте ни в админке ошибок не должно быть.
Дальше такое же проделиваете с файлами config.php, и другими главными файлами.
А также можно в целях безопасности сменить пути engine/data.
Часть 2.
Тут я розкажу о способе защиты используя .htaccess которая запретит вызывать залитые шеллы.(при включеном safe_mod)
1.Открываем .htaccess (делаем доступ по IP+использование определенных php файлов)
Добавляем после RewriteEngine On
2.Защита admin.php(Вписываем в файл)
На этом мы и закончим.Так же прошу Вас следить на официальном сайте за обновлениями уязвимостей dle
По возможности будем дописывать нашу защиту.
UPD kzpromo
Открываем engine/inc/files.php
Находим
заменяем на
Теперь загрузка шеллов,через админскую и юзерскую загрузку нам не грозит! ;)
Автор:myzikk(дал идею Zloy или просто Злое Чудо)
Часть 1.
Качаем и устанавливаем программу @Text Replacer (http://1001soft.com/download/text_replacer-3445-0.html)
У Вас должен быть розкодирован файл \engine\inc\include\init.php(его можно взять с нула от мид теам для вашей версии dle)
Открываем программу и добавляем вот такие настройки:
Вы спросите для чего мы меняем название файла с паролями от mysql.
Я Вам отвечу чтоб хац.хакер не мог вытащить наш файл например как сейчас актуально редактировать исходный код загрузки файлов и вытаскивать Ваш dbconfig.
После того как вы сделали как на скрине Вы нажимаете найти, затем заменить.И не забудьте переименовать сам dbconfig.php в ваше название которые Вы использовали в программе.
Если Вы все сделали правильно у Вас ни на сайте ни в админке ошибок не должно быть.
Дальше такое же проделиваете с файлами config.php, и другими главными файлами.
А также можно в целях безопасности сменить пути engine/data.
Часть 2.
Тут я розкажу о способе защиты используя .htaccess которая запретит вызывать залитые шеллы.(при включеном safe_mod)
1.Открываем .htaccess (делаем доступ по IP+использование определенных php файлов)
Добавляем после RewriteEngine On
#Защита(by myzikk)
<FilesMatch ".php">
Order allow,deny
Deny from all
</FilesMatch>
<FilesMatch "antivirus.php">
order deny,allow
Allow from all
</FilesMatch>
<FilesMatch "updates.php">
order deny,allow
Allow from all
</FilesMatch>
<FilesMatch "opensearch.php">
order deny,allow
Allow from all
</FilesMatch>
<FilesMatch "keywords.php">
order deny,allow
Allow from all
</FilesMatch>
<FilesMatch "registration.php">
order deny,allow
Allow from all
</FilesMatch>
<FilesMatch "rating.php">
order deny,allow
Allow from all
</FilesMatch>
<FilesMatch "refresh.php">
order deny,allow
Allow from all
</FilesMatch>
<FilesMatch "editpost.php">
order deny,allow
Allow from all
</FilesMatch>
<Files "referer.php">
order deny,allow
Allow from all
</files>
<Files "print.php">
order deny,allow
Allow from all
</files>
<Files "images.php">
order deny,allow
Allow from all
</files>
<Files "vote.php">
order deny,allow
Allow from all
</files>
<Files "addcomments.php">
order deny,allow
Allow from all
</files>
<Files "addpost.php">
order deny,allow
Allow from all
</files>
<Files "addcomments.php">
order deny,allow
Allow from all
</files>
<FilesMatch "\.(avi|mp3|mp4|flv|swf|wmv|png|css|gif|jpeg|jpg|rar|zip|xml|rss)$|^$">
Order deny,allow
Allow from all
</FilesMatch>
<Files "admin.php">-если у Вас другое название файла админки тогда изменяем на свое.
order deny,allow
Deny from all
Allow from 188.445.66.*- Тут Вы указываете Ip'и с которых будет доступ в админ панель
</files>
<Files "addcomments.php">
order deny,allow
Allow from all
</files>
<Files "editcomments.php">
order deny,allow
Allow from all
</files>
<Files "antibot.php">
order deny,allow
Allow from all
</files>
<Files "index.php">
order deny,allow
Allow from all
</files>
<Files "uploads.php">
order deny,allow
Allow from all
</files>
<Files "go.php">
Allow from all
</files>
<Files "rss.php">
Allow from all
</files>
<Files "ajax.php">
Allow from all
</files>
#Защита(by myzikk)
<FilesMatch ".php">
Order allow,deny
Deny from all
</FilesMatch>
<FilesMatch "antivirus.php">
order deny,allow
Allow from all
</FilesMatch>
<FilesMatch "updates.php">
order deny,allow
Allow from all
</FilesMatch>
<FilesMatch "opensearch.php">
order deny,allow
Allow from all
</FilesMatch>
<FilesMatch "keywords.php">
order deny,allow
Allow from all
</FilesMatch>
<FilesMatch "registration.php">
order deny,allow
Allow from all
</FilesMatch>
<FilesMatch "rating.php">
order deny,allow
Allow from all
</FilesMatch>
<FilesMatch "refresh.php">
order deny,allow
Allow from all
</FilesMatch>
<FilesMatch "editpost.php">
order deny,allow
Allow from all
</FilesMatch>
<Files "referer.php">
order deny,allow
Allow from all
</files>
<Files "print.php">
order deny,allow
Allow from all
</files>
<Files "images.php">
order deny,allow
Allow from all
</files>
<Files "vote.php">
order deny,allow
Allow from all
</files>
<Files "addcomments.php">
order deny,allow
Allow from all
</files>
<Files "addpost.php">
order deny,allow
Allow from all
</files>
<Files "addcomments.php">
order deny,allow
Allow from all
</files>
<FilesMatch "\.(avi|mp3|mp4|flv|swf|wmv|png|css|gif|jpeg|jpg|rar|zip|xml|rss)$|^$">
Order deny,allow
Allow from all
</FilesMatch>
<Files "admin.php">-если у Вас другое название файла админки тогда изменяем на свое.
order deny,allow
Deny from all
Allow from 188.445.66.*- Тут Вы указываете Ip'и с которых будет доступ в админ панель
</files>
<Files "addcomments.php">
order deny,allow
Allow from all
</files>
<Files "editcomments.php">
order deny,allow
Allow from all
</files>
<Files "antibot.php">
order deny,allow
Allow from all
</files>
<Files "index.php">
order deny,allow
Allow from all
</files>
<Files "uploads.php">
order deny,allow
Allow from all
</files>
<Files "go.php">
Allow from all
</files>
<Files "rss.php">
Allow from all
</files>
<Files "ajax.php">
Allow from all
</files>
#Защита(by myzikk)
2.Защита admin.php(Вписываем в файл)
$login="admin";
$password="e50e5e9da3d747cdba96d849de57516e";
if (!isset($_SERVER['PHP_AUTH_USER']) || $_SERVER['PHP_AUTH_USER']!==$login || md5($_SERVER['PHP_AUTH_PW'])!==$password) {
header('WWW-Authenticate: Basic realm="LoGin and PaswWort!?"');
header('HTTP/1.0 401 Unauthorized');
exit("ПЕПЯКОДЭНС РИАЛЬНЕПЕПЯКА!!!1 МЖВЯЧНИУБЕЙТЕ МЕНЯ КТОНИБУДЬКОТЭОДОБРЯЕКЛАЦКЛАЦКАгБЕИ!!11 (c) Генератор зла");}
$password="e50e5e9da3d747cdba96d849de57516e";
if (!isset($_SERVER['PHP_AUTH_USER']) || $_SERVER['PHP_AUTH_USER']!==$login || md5($_SERVER['PHP_AUTH_PW'])!==$password) {
header('WWW-Authenticate: Basic realm="LoGin and PaswWort!?"');
header('HTTP/1.0 401 Unauthorized');
exit("ПЕПЯКОДЭНС РИАЛЬНЕПЕПЯКА!!!1 МЖВЯЧНИУБЕЙТЕ МЕНЯ КТОНИБУДЬКОТЭОДОБРЯЕКЛАЦКЛАЦКАгБЕИ!!11 (c) Генератор зла");}
На этом мы и закончим.Так же прошу Вас следить на официальном сайте за обновлениями уязвимостей dle
По возможности будем дописывать нашу защиту.
UPD kzpromo
Открываем engine/inc/files.php
Находим
$allowed_extensions = array ("gif", "jpg", "png", "jpe", "jpeg" );
$allowed_video = array ("avi", "mp4", "wmv", "mpg", "flv", "mp3", "swf", "m4v", "m4a", "mov", "3gp", "f4v" );
$allowed_files = explode( ',', strtolower( $config['files_type'] ) );
$img_result_th = "";
$img_result = "";
$allowed_video = array ("avi", "mp4", "wmv", "mpg", "flv", "mp3", "swf", "m4v", "m4a", "mov", "3gp", "f4v" );
$allowed_files = explode( ',', strtolower( $config['files_type'] ) );
$img_result_th = "";
$img_result = "";
заменяем на
$allowed_extensions = array ("gif", "jpg", "png", "jpe", "jpeg" );
$allowed_video = array ("avi", "mp4", "wmv", "mpg", "flv", "mp3", "swf", "m4v", "m4a", "mov", "3gp", "f4v" );
$allow_conf = str_replace("php",md5(time() - rand(30,60)),strtolower( $config['files_type'] ));
$allowed_files = explode( ',', $allow_conf );
$img_result_th = "";
$img_result = "";
$allowed_video = array ("avi", "mp4", "wmv", "mpg", "flv", "mp3", "swf", "m4v", "m4a", "mov", "3gp", "f4v" );
$allow_conf = str_replace("php",md5(time() - rand(30,60)),strtolower( $config['files_type'] ));
$allowed_files = explode( ',', $allow_conf );
$img_result_th = "";
$img_result = "";
Теперь загрузка шеллов,через админскую и юзерскую загрузку нам не грозит! ;)