форум общения русскоязычных пользователей CMS Текстпаттерн
Вы не зашли.
Добрый день!
Несколько советов по защите движка что можно сделать.
Заментил в скипте несколько файлов .txt которые находятся в корне сервера и разбросаны по папкам. Неокторые из них которые не используются нужно будит удалить.
Дальше открываем файл в корне сервера .htaccess удаляем все содержимое и копипастим код который я привел ниже, далее сохраняем файл. внес некоторые изменения в файл которые обезопасят конфиги.
#DirectoryIndex index.php index.html #Options +FollowSymLinks Options -Indexes #ErrorDocument 403 default <IfModule mod_rewrite.c> RewriteEngine On #RewriteBase /relative/web/path/ # Block out any script trying to base64_encode crap to send RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR] RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR] RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR] RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR] RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2}) RewriteRule ^(.*)$ index.php [F,L] RewriteCond %{HTTP:Authorization} !^$ RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}] </IfModule> #php_value register_globals 0 <files config.php> order allow,deny deny from all </files> <files config-dist.php> order allow,deny deny from all </files> <files txp_auth.php> order allow,deny deny from all </files> <files admin_config.php> order allow,deny deny from all </files> <Limit ALL> Deny from all </Limit> <files *.txt> Order Deny,Allow Deny From All </files> <files *.ini> Order Deny,Allow Deny From All </files>
Еще нужно создать файл index.php или index.html с пустым содержимым и положить этот файл в папки где отсутствует файл index.php, если файл уже есть ничего заменять не нужно.
Далее защищаем админку ) находим файлик auth.php и вставляем в самом верху код :
$adm_name = "логин"; тут пишем свой логин
$adm_pass = "пароль"; тут пишем свой пасс
function adm_auth(){
Header ("WWW-Authenticate: Basic realm=Alarm_Zone");
Header ("HTTP/1.0 401 Unauthorized");
echo '<html><head><title>access denied...</title></head>
<body><center><h1>Please enter login and password...<br /><br />пожалуйста, введите логин и пароль...</h1></center></body></html>';
exit;
}
if (empty($_SERVER["PHP_AUTH_USER"])){
adm_auth();
}
if ($_SERVER['PHP_AUTH_USER'] != $adm_name && $_SERVER['PHP_AUTH_PW'] != $adm_pass){
adm_auth();
}
идем в файл .htaccess который находится в самом корне сервера и добавляем в него такой код) :
<files txp_auth.php>
order allow,deny
deny from all
</files>
и сохраняем файлик ).
Таким образом имеем вторую защиту админки ) только не забываем про логин и пароль это уже другие, не те что вы вводили первый раз при регистрации.
Отредактированно Лев (23-05-2012 20:08:27)
Неактивен
Лев написал:
# Block out any script trying to base64_encode crap to send
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(\%3D) [OR]
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(\[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(\[|\%[0-9A-Z]{0,2})
RewriteRule ^(.*)$ index.php [F,L]
кажется эту защиту уже взломали... смайлики
код лучше публиковать через тег [code]
если не ошибоюсь, то это копипаст костылей из джомы.
Отредактированно makss (23-05-2012 18:23:38)
Неактивен
makss, Нет это копипаст взят с моего конфига ) а частично из wp. Подправил код первом посту.
Отредактированно Лев (23-05-2012 20:06:06)
Неактивен
бегло посмотрел - не советую к применению.
1. в .htaccess - гробится ЧПУ. да и смысла в таком костыле я не вижу - разве что морально себя успокоить.
2. изменяя txp_auth.php - мы говорим прощай апдейтам на новые версии
Неактивен
пусто, удалите плз
Отредактированно makss (05-06-2012 23:09:32)
Неактивен