Создание сайта, дизайн, web дизайн
Главная Работы Услуги Цены Контакты

 Главная
 Работы
 Услуги
 Цены
 Контакты
 

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

Немного теории о том, как это происходит и как от этого защититься.

Злоумышленник размещает на сервере свои скрипты, которые получают список домашних директорий пользователей и начинают поиск директорий для upload, где разрешена запись всем.
Найдя такие директории, они закачивают туда свои скрипты и через них производят попытку взлома.

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

Для решения этой проблемы нами был разработан и протестирован на FreeBSD следующий скрипт, который рекурсивно обходит пользовательские директории и создает .htaccess файл, отключающий исправление скриптов:


#!/bin/sh
HOME=/home
NOBODY=nobody

htaccess () {
cat "$j/.htaccess"

RemoveType php
Options -ExecCGI -Indexes
EOF
}

fixupload () {
if [ -e "$j/.htaccess" ]; then
if [ -z "`grep RemoveType "$j/.htaccess"`" ]; then
htaccess
fi
else
htaccess
chown $i:$i "$j/.htaccess"
fi
}

cd $HOME
for i in *; do
if [ -d $i/public_html ]; then
# Fix 777 upload
for j in `find $i/public_html -type d -perm 777`; do
fixupload
done
# Fix 775 nobody upload
for j in `find $i/public_html -type d -perm 775 -group $NOBODY`; do
fixupload
done
# Fix 755 nobody upload
for j in `find $i/public_html -type d -perm 775 -user $NOBODY`; do
fixupload
done
fi
done

Вам нужно только изменить значение двух переменных, указав расположение домашних директорий пользователей и пользователя, из-под которого запускается веб-сервер Apache.

Афоризм дня:
Говорите правду - и вы будете оригинальны.
А.В. Вампилов
© 2004-2017 LABDESIGN.RU   e-mail: