- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
VK приобрела 70% в структуре компании-разработчика red_mad_robot
Которая участвовала в создании RuStore
Оксана Мамчуева
Что делать, если ваша email-рассылка попала в спам
10 распространенных причин и решений
Екатерина Ткаченко
Здравствуйте Уважаемые админы!
Столкнулся с такой проблемой, на шеред сервере (ОС Centos 5.5 , Apache2 как mod-itk, php5) начали периодически появлятся дорвеи в папках сайтов клиентов, а в некоторых папках проявлялись саповские ссылки, начал копаться в логах фтп и как не странно выяснил что лилось всё это добро по фтп и как правило с апи адреса того же провайдера что и клиента , насторожила информация одного клиента который запросил данные у своего провайдера и выяснил что в указанное в логах время данный апи адрес не использовался ни у кого из пользователей, ну и тут же случился казус с падением нескольких сервисов (причина банальна , полностью вычищен каталог /var/log)кроме нескольких файлов которые были чем то заняты в тот момент, ну сразу же я фаерволом закрыл 22 порт оставив вход под один апи (свой) сменил рут пароль и восстановил из бекапа логи, ну и начал копать на предмет чегото постороннего, проверил на рекруты , слава богу никого, и тут человечек один (клиент пожаловался на посторонние файлы у себя в папках ну и дал данный файлик (в заголовке которого красовалась надпись <?php # Web Shell by oRb ) не долго думая запустил команду
find /var/www/ \( -regex '.*\.php$' -o -regex '.*\.cgi$' \) -print0 | xargs -0 egrep -il "r0nin|m0rtix|r57shell|c99shell|phpshell|void\.ru|phpremoteview|directmail|bash_history|brute *force"
от её вывода мне стало плохо(((( .... ну в общем удадлил всё что она нашла , сменил всем пароли от фтп и от аккаунта сменил рутовый ещё раз и сменил пасс от БД , увы времени копаться как это попало на сервер не было да и страшно стало что бы не запустили более интересные команды на сервере чем чистка логов и вставка доров и фреймов.
Придвижу сразу массу упрёков на школнастройку сервера, и отвечу я конечно не спец в этом деле , но в php.ini все шелловские функции и некоторые другие внесены в disabled_function , cgi-bin в следствии не использования отключён для алиаса стандартного в апаче прописано deny from all как бы то что нарыл всё применил (в рамках разумного) но увы не спасло.... вобщем кто как посоветует бороться с подобным г..... напастью ?
и после бессоной ночи никак не соображу как эту команду
find /var/www/ \( -regex '.*\.php$' -o -regex '.*\.cgi$' \) -print0 | xargs -0 egrep -il "r0nin|m0rtix|r57shell|c99shell|phpshell|void\.ru|phpremoteview|directmail|bash_history|brute *force"
заставить удалять то что она находит (я сделал это через mc) но хочется всунуть в крон это дело и сканить периодически такие шеллы и при нахождении удалять
ну и в мыслях поставить антивирь , вроде как говорят они ловят вэб шеллы?
вобщем прошу Вашего профессионального совета :)
P.S. панелька на сервере ISP Manager
1) пользователю WWW, от которого выполняется apache, запретить писать в папках в которых могут выполнятся скрипты PHP.
2) Если на сайте есть возможность загрузки файлов на сервер в какие то папки, то запретить в этих папках выполнение скриптов PHP
3) Кроме тех папок, в которые разрешено закачивать файлы, пользователь www не должен быть владельцем папок и файлов.
4) Для всех папок выставить права 701. Владелец папок не WWW.
То есть если шел зальют, хакер не сможет получить список файлов и записать что либо.
Записать он сможет только в определенную папку, в которой скрипты PHP не выполняются.
Поставить автоматический анализ логов ACCESS.LOG, который будет находить в них строки
union
mysql
select
../../../
/etc
passwd
и так далее
При обнаружении таких запросов IP можно блокировать фаерволом и отправлять сообщение админу о попытке взлома.
Разумеется файлов с такими названиями на сайте быть не должно.
в mysql запретить создание файлов
Apache-mpm-itk работает под владельцем аккаунта.
Искать дырки в скриптах PHP
Основной способ заливки шела – mysql иньекция.
Когда данные принятые от пользователя, не проверяются на корректность и передаются на исполнение Mysql
Проверить, что бы все числовые данные, принимаемые от пользователя приводились явно к числу командой
$val=intval($_GET[‘val’]);
Для строковых данных использовать addslashes() для удаления спец символов
zexis, вы тупите. Речь о шаред хостинге.
Проблема в том что это шеред сервер и проверять тем более заставлять что то менять в скриптах юзеров я думаю нереально, а вот решения делать это глобально (типа парсить запросы к БД) как то я особо не встречал. Может есть рекомендации применительно к шеред хостингу, скажем так малой кровью....
babiy, /tmp в отдельный раздел, и в noexec, для начала.
phpMyAdmin обновлен?
babiy, /tmp в отдельный раздел, и в noexec, для начала.
phpMyAdmin обновлен?
раздел отдельный, по поводу noexec неуверен, phpmyadmin обновлял
Стопс соврал, нефига он у меня не отдельный раздел, завтра перемонтирую, у меня лвм думаю проблем не будет.
Еще рецепт: просить Андрейку настроить мод_секурити. Или же разбираться с ним самому. :)
Мод_секурити имею ввиду.
Надо найти источник загрузки шела, и устранить его, перевести php как php-cgi что бы ограничить круг заливки шелла, так как через mod_php через разные "щели" можно залазить. ну а дальше стнадртная схема, нашли дырку и залатали.
find /var/www/ \( -regex '.*\.php$' -o -regex '.*\.cgi$' \) -print0 | xargs -0 egrep -il "r0nin|m0rtix|r57shell|c99shell|phpshell|void\.ru|phpremoteview|directmail|bash_history|brute *force" | awk '{print "rm -f "$1""}' | sh
+ в php.ini
disable_functions = exec, system, passthru, scandir, popen, shell_exec, proc_open, proc_close, proc_nice, get_current_user, getmyuid, posix_getpwuid, apache_get_modules, virtual, posix_getgrgid, getmyinode, fileowner, filegroup, getmypid, apache_get_version, apache_getenv, apache_note, apache_setenv, disk_free_space, diskfreespace, dl, ini_restore, openlog, syslog, highlight_file, show_source, symlink, disk_total_space, ini_get_all, get_current_user, posix_uname