Блог AlekNest-а

Защита /tmp в Linux и FreeBSD

domohoz | 21 Ноябрь, 2008 22:11

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

Особо не растекаясь мыслью по древу сразу опишу симптомы болезни: у вас имеется хостинг-сервер под UNIX-системой и "вдруг" обнаружились левые процессы и исходники всякой каки, исполняемые файлы, перл скрипты в директории /tmp. Неприятно. Но бывает.Разбить...

Если по уму, то надо бы найти откуда летит гавно, правда, это не очень быстро и легко. В ряде случаев (особенно если сервак служит для хостинга общего пользования) помогает mod_security, затыкающий многие дыры скриптов и хоста в т.ч. Более-менее актуальный его конфиг можно получить на саппорте Планеты по запросу "mod_security".

Лирическое отступление.
Когда-то я с подельщиком там арендовали сервак - неплохое железо, быстрые каналы . 3 с лихуем года и попросили в течение 3-х дней его освободить. Размер ахуя не описать. Как потом выяснилось "попросили" не только нас, у датацентра сменилось руководство и оно решило сука устроить переселение народов: некоторые украинцы, русские, китайцы лишились серваков. В общем, я очень не советую ходить туда кроме как "за знаниями"

Но в любом раскладе /tmp нада защищать. Первое, что следует сделать, это обеспечить невозможность запустить исполняемый файл. Делается это опцией noexec в fstab. Однако, ещё не встречал, чтобы /tmp на серваке, переданном саппортом был по человечески подключен (т.е. как раздел) в fstab.Посему, обычно приходится прибегнуть к псевдо-файловым системам.

Под линуксом сделаем /tmp как файл
/dev/md0 /tmp mfs rw,noatime,noexec,async,-s64m

Тут пропуск...

Отключаем запуск компиляторов

chmod 000 /usr/bin/perlcc
chmod 000 /usr/bin/byacc
chmod 000 /usr/bin/yacc
chmod 000 /usr/bin/bcc
chmod 000 /usr/bin/kgcc
chmod 000 /usr/bin/cc
chmod 000 /usr/bin/gcc
chmod 000 /usr/bin/i386*cc
chmod 000 /usr/bin/*c++
chmod 000 /usr/bin/*g++
chmod 000 /usr/lib/bcc /usr/lib/bcc/bcc-cc1
chmod 000 /usr/i386-glibc21-linux/lib/gcc-lib/i386-redhat-linux/2.96/cc1

 Если их необходимо опять включить

сhmod 755 /usr/bin/perlcc
chmod 755 /usr/bin/byacc
chmod 755 /usr/bin/yacc
chmod 755 /usr/bin/bcc
chmod 755 /usr/bin/kgcc
chmod 755 /usr/bin/cc
chmod 755 /usr/bin/gcc
chmod 755 /usr/bin/i386*cc
chmod 755 /usr/bin/*c++
chmod 755 /usr/bin/*g++
chmod 755 /usr/lib/bcc /usr/lib/bcc/bcc-cc1
chmod 755 /usr/i386-glibc21-linux/lib/gcc-lib/i386-redhat-linux/2.96/cc1

А теперь сцылки:
http://faq.cpanel.net/show.cgi?qa=104683229406333
http://dedic.ru/node/196
http://www.securitylab.ru/contest/212124.php
http://ilia.ws/archives/149-mail-logging-for-PHP.html
http://dedic.ru/node/76
http://www.crutop.nu/Vbulletin/archive/index.php/t-70276.html
http://snowgate.info/spammers.html
http://dedic.ru/node/2
http://www.configserver.com/blog/index.php?itemid=264
http://www.configserver.com/cp/csf.html

Комментарии

Добавить комментарий
 authimage
 
Бесплатный хостинг блогов - blogbin.net