Хак сайта на WordPress, кому все это нужно и советы как этого избежать

Привет хабраUser!


Эта история началась около 2-х месяцев назад, когда мой хороший друг Александр, оказывающий услуги хостинга, при очередной проверке всех виртуальных машин антивирусом обнаружил подозрительный .js файл в корневой директории моего сайта, в VDS которую обслуживаю я сам, тогда я не придал этому значение… Но думаю любой администратор хостинга сразу забеспокоился бы.
Закончилось все, спустя только 2 месяца, после блокировки моего сайта корпорацией добра:
image

По тексту, я хочу рассказать Вам:


1. С какими проблемами я сталкивался и как воспринимал их.
2. Как нужно было бы реагировать на самом деле.
3. Кто мне помог в решении проблем и в чем заключалась помощь.
4. Какие выводы я сделал для себя, оказавшись на грани срыва.
5. Кому все это нужно?
6. Практические советы.
7. Подарю новогоднее настроение если позволит НЛО.


Краткое содержание:


Взлом, дальше с VDS начали происходить интересные вещи: Спам рассылки по нескольким тысяч адресатов, установка подозрительных скриптов, появление странных файлов в корне основного сайта. Скажу честно — было страшно… Но похоже я победил тьму).


Вступление:


Я пишу эту статью, еще и как записную книжку, что бы можно было к ней вернуться в случае повторения проблем. Кому интересен процесс борьбы со зловредами, он будет описан ниже. Букв будет много, поэтому, кому нужны практические советы — листаем до конца.

Как взломали мой сайт на моем же хостинге на Debian Wheezy или Хак сайта на WordPress и кому все это нужно


С какими проблемами я сталкивался и как воспринимал их.

Я успокоился сразу после того как не нашел тот самый js скрипт у себя на сайте. Сейчас понимаю, что это было роковой ошибкой.
Мой сайт крутится на Debian Wheezy, установлена панель управления хостингом i-mscp (преемница ispcp), есть еще несколько сайтов, тоже личные, поэтому администратор я один и ни кому не даю доступ на свою VDS.

Все было настроено хорошо, думал я, и поэтому не парился по поводу безопасности, пользовался рутовым ssh и ставил скрипты сторонних писателей на сайт для экспериментов. Сайт на WordPress и для него просто неимоверное количество плагинов. На проверку которых я не уделял времени. Сайт рос и пополнялся все новыми плагинами и скриптами…
Зачем тебе нужные все эти плагины\расширения\скрипты?

Спросил однажды меня мой друг. Я ответил, что мне нужен “социализированный” сайт и мне нравится экспериментировать с различными скриптами, видеть как они влияют функционал сайта и его внешний вид. Я Все время пытался что то улучшить…

Проблема номер два

Прошло 2 недели, после того как я не отреагировал на первую угрозу. Я поимел следующую проблему.
Сижу на работе, и вдруг, мне в почту gmail, в папку spam начинают падать сообщения от моего почтового сервера postfix (там у меня настроена пересылка на личную почту) о том что, такое то сообщение не доставлено. Примерно 50 сообщений, о недоставке, в секунду.
Захожу на сервер и смотрю лог:
tail -f /var/log/mail.log

А там просто неимоверная скорость записи сообщений, останавливаю почтовик:
/etc/init.d/postfix stop

Спам прекращается, пытаюсь выяснить как идет рассылка, но из-за нехватки опыта ни чего не понимаю.
Опытным путем удается выяснить, что если переименовать корневую директорию основного (sysrtfm точка ру) сайта или заблокировать домен в панели управления хостинга, то спам прекращается.
Приходит осознание того, что подломали основной сайт, но как?
Очищаю ВСЮ очередь почтовика на всякий:
postsuper -d ALL
(удаляется ~10000 писем)
часов 8 проверял руками директории сайта на наличие левых скриптов, отключал все плагины, запускал почтовик и снова получал рассылку( грустная рожица

Тут случайно, в корневой директории сайта, обнаруживаю папку css с файлом /css/sys0972500-1.php. Зная примерную структуру своей CMS, понимаю, что его такого файла быть не должно. Скачиваю резервную копию за прошлый месяц, распаковываю, и вижу, что файла там точно быть не должно. Как он там оказался? Этот вопрос пока без ответа, но права у него такие же как у остальных файлов.
Читаем лог апача:
tail -f /var/log/apache2/sysrtfm.ru.log

и видим там:
"POST /css/sys0972500-1.php HTTP/1.1" 404 55665 "-" "-" 

почти каждые 30 секунд.
Видимо кто то запускает этот скрипт издалека, инициируя рассылку.
Казалось бы, заблокировать IP и все, но он почти так же часто меняется. Удалил директорию с файлом, рассылки прекратились. Не приняв, практически, ни каких противодействий, т.к. не понял как произошёл взлом, оставил проблему как есть. Только сменил рутовый пароль на более сложный и по отключал плагины и скрипты которыми уже не пользуюсь.

Следующей обнаруженной проблемой стало, то что, на столько популярный движок WordPress, что его пытается подломать все кому не лень. Почитав логи Apache2, понял, что идет постоянная brute-force login attack на форму входа в административную панель. Но т.к. я об этом давно подозревал, у меня уже был установлен плагин блокировки пользователя после нескольких неудачных попыток входа (User Locker).
tail -f /var/log/apache2/sysrtfm.ru.log

видим там:
"POST /wp-login.php HTTP/1.0" 200 6891 "http://sysrtfm.ru/wp-login.php" "Opera/9.80 (Windows NT 6.1; U; ru) Presto/2.8.131 Version/11.10"

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

Проблема номер три

Прошло 3 недели без спама и левых скриптов.
Зашел на VDS проверить логи и обнаруживаю, что в корне сайта все тот же файл, и опять запускается рассылка, но в гораздо меньших объемах… Взялся за голову.
Начинаю сканировать сайт online антивирусами:

Поиск по форумам результата не дает. Но нахожу одну статейку, которая мне очень помогла) До сих пор, вкладку с ней держу открытой.
В ней описывается процесс включения расширенного логирования почтового сервера, для того чтобы понять какой скрипт запускает рассылку.

Исходный текст статьи под спойлером
Итак, имеем сервер на базе Debian.
Жалоба на исходящий спам с сервера.

Задача: очистить очередь отправлений и обнаружить причину.
Решение: вариантов, конечно, много. Рассмотрим один из них.

1. Подключаемся по SSH и смотрим очередь писем:
mailq

Да, писем много.

2. Отключаем почтовый сервер (стоит postfix)
/etc/init.d/postfix stop


3. Смотрим на соединения на 25й порт:
netstat -apn | grep :25

Если Established нет — значит, спам рассылается не через вредоносный скрипт, который отправляет почту в обход локального почтового сервера.

4. Очищаем очередь писем
Exim:
exipick -i | xargs exim -Mrm

Postfix:
postsuper -d ALL

Sendmail:
rm -rf /var/spool/mqueue/*

Конечно, при условии, что мы это сделать можем (в очереди могут быть реальные письма реальным пользователям).
postsuper -d ALL
postsuper: Deleted: 72849 messages


5. Пробуем включить расширенное логирование почты:
mv /usr/sbin/sendmail /usr/sbin/sendmail.org
touch /usr/sbin/sendmail
chmod +x /usr/sbin/sendmail

echo -n '#!/bin/bash
logger -p mail.info sendmail-ext-log: site=${HTTP_HOST}, client=${REMOTE_ADDR}, script=${SCRIPT_NAME}, pwd=${PWD}, uid=${UID}, user=$(whoami)
/usr/sbin/sendmail.org -t -i' > /usr/sbin/sendmail


6. Запускаем почтовый сервер
/etc/init.d/postfix start


7. Смотрим логи
tail -f /var/log/mail.info

Видим что-то вроде:
Jan 23 16:25:25 danma logger: sendmail-ext-log: site=, client=, script=send.php, pwd=/var/www/danma/data/www/site.ru, uid=33, user=www-data
Jan 23 16:25:25 danma postfix/pickup[11520]: E3CD259403D: uid=33 from=
Jan 23 16:25:25 danma postfix/cleanup[11522]: E3CD259403D: message-id=


Обращаю внимание, что это один из вариантов действий.
Если есть ID письма в жалобе — стоит посмотреть его в логах отправлений.
Бывает так, что на сервере стоит опенрелей.
А еще бывает, что просто подобрали пароль к ящику — на это так же стоит обратить внимание!

Взято от сюда, Автору спасибо!

После включения логирования я увидел, что спам рассылка запускается от этого скрипта (/css/sys0972500-1.php), но это было уже после того когда файл с директорией css появился в 3-й раз…
Как все таки меня подломали? Где? пока я это выяснял меня заразили еще чем то…

Проблема номер четыре

В этот раз мне написал друг, сказав, что на мой сайт его не пускает антивирус касперского,
image
а с другого компа не пускает гугл хром, показывая ту самую красную заглушку из шапки этой статьи… Я был очень огорчен увидев, что гугл забанил мой сайт, написав в панели инструментов вэбмастера примерно следующее:
“С вашего сайта производилась установка вредоносного ПО на клиентские ПК пользователей. Ссылки с которых производилась установка ниже:
Несколько ссылок с сайта”

Яндекс ни чего не подозревал…

Сразу скажу, проблему получилось победить достаточно быстро. Вот что я делал:
  1. Отключил кэширующий плагин CMS, для того чтобы файлы генерировались снова, а не брались вредоносные из кэша
  2. Еще раз проверил сайт по базам online антивирусов, реально пригодился больше всего вот этот antivirus-alarm ru
  3. т.к. в этой проверке было написано:
    содержит сомнительную ссылку по версии гугла: feeds feedburner com
    содержит сомнительную ссылку по версии гугла: www facebook com
    содержит сомнительную ссылку по версии гугла: www liveinternet ru

    То снова по отключал пачку сторонних плагинов Wordpress, социальные кнопки, комментарии итд…
    Переход на сайты соц сетей, куда был кроспостинг моих статей были так же запрещены гуглом, из-за того, что там содержались материалы с моего сайта
  4. Создал запрос в тех поддержку гугл на пересмотр решения о блокировке (на той же странице где описана причина блокировки, раздел “Проблемы безопасности”)
  5. Заполнил форму для сообщения о неверном предупреждении о фишинге.
  6. Т.к. 2 последних пункта рассматриваются 24 часа, я начал активно искать причину возможного взлома. Тут до меня доходит, что я не проверял ftp!
  7. Читаем лог proftpd сервера:
    cat /var/log/proftpd/xferlog
    

    находим там очень интересное:
    176.28.52.119 42278 /var/www/virtual/sysrtfm.ru/htdocs/css/sys0972500-1.php a _ i r admin@sysrtfm.ru ftp 0 * c
    

    И тут я все понял….(грустный смайлик( подломали аккаунт admin@sysrtfm.ru, я быстро поменял пароль и логин. А так же заблокировал все остальные ftp аккаунты. Проверив, что они ни где не задействованы.
    Нашел еще запись:
    31.7.234.34 0 /var/www/virtual/sysrtfm.ru/htdocs/css/c3x.php b _ o r admin@sysrtfm.ru ftp 0 * c
    

    Это все из той же оперы, файлы удалил, но причина блокировки была не в этом.
  8. Дальше завел тему в форуме технической поддержки вэбмастеров гугл тут.
    Там добрые люди, нашли в скриптах, загружаемых с сайтом интересные вещи)
    Что сделал зловред:
    — Модифицировал через ftp файл wp-content/plugins/usernoise/js/usernoise.js приписав в самый конец еще один скрипт: /wp-includes/images/smilies/skynet.js
    Оказалось, что этот скрипт выполнялся только если браузер не гугл хром, загружая на ПК пользователя вредоносное ПО.
    — Затем был заражен файл /wp-content/plugins/lazy-load/js/lazy-load.js в который был прописан скрипт /wp-includes/images/crystal/gocubs.js
  9. Скачал программой WinSCP сайт на свой локальный диск, запустил total commander, перешел в скачанную директорию и запустил поиск выражений по всем файлам:
    cr"±"ipt
    skynet.js
    doc​ument.write
    

    Все найденные вхождения почистил. И вроде даже ни чего лишнего не удалил.
  10. Проверил вручную все скрипты, загружаемые браузером на наличие этих вхождений. Ни чего больше не обнаружил

Спустя 12 часов гугл разблокировал мой сайт, но статистика все равно просела(
Сейчас проблема решена, но теперь я сделал много выводов….

Как нужно было бы реагировать на самом деле.

Сейчас я понимаю, что таких проблем на сайтах любого уровня допускать нельзя, от этого зависит не только ваша безопасность и финансовое положение, но и наиболее важная финансовая безопасность ваших клиентов…
Если бы я отреагировал правильно еще 2 месяца назад, на сообщение моего друга о найденном подозрительном файле js в папке с картинками. Все было бы иначе.
Это стало мне серьезным уроком и теперь я буду более серьезно смотреть на такие вещи! Чего советую и всем начинающим вэб программистам и не только!

Кто мне помог в решении проблем и в чем заключалась помощь

  1. Александр Крайнев — техническая и моральная поддержка, подсказки и советы, хостинг с защитой от ddos (itservices.su) на котором лежит мой сайт.
  2. Google аналитика — не только инструмент для SEO, но и средство поиска уязвимости. Там я смотрел куда чаще всего стучатся пользователи, как и в более примитивном инструменте статистики сайта AWStats. Например у меня, в топ 10 посещаемых страниц входит в первое место страница авторизации WP)))) как не странно тот самый брут форс, нужно что то с этим делать.
  3. Форум инструментов вэбмастеров гугл — очень полезная, оказалось, штука!, всем советую.
  4. Панель отладки Google Chrome — без нее я вообще ни чего не сделал бы… (жмем F12 на исследуемой странице и исследуем исследуем исследуем).
  5. Putty, WinSCP, TotalCommander — как без них) всегда под рукой!


Какие выводы я сделал для себя, оказавшись на грани срыва

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

Кому все это нужно?

Кому все это нужно? Все эти атаки, вирусы, шпионские программы? Многие знают ответ на эти вопросы. Я опишу свою точку зрения:

Есть множество людей\программистов\зловредов которые зарабатывают на том, чтобы предоставить ресурс для рекламных площадок или собирают информацию для ее дальнейшего использования все в тех же рекламных целях. Я думаю, что большинство атак на сайты и зловредных программ существуют для этих целей.
Рекламные компании в последующем покупают этот ресурс, чтобы подороже продать своим клиентам эту рекламную площадку.
Только представьте сеть из 100000 взломанных сайтов на бесплатном движке для блога — их взломал программист-зловред. Продал этот ресурс рекламной компании, рекламная компания готовит материал или ссылки для публикации, а программист в несколько кликов запускает всю эту компанию на взломанных сайтах, этот огромный трафик приносит колоссальные деньги по всему интернету.
Естественно возможных применений может быть масса, от безвредных школьников, которые просто учатся взламывать, до установки вредоносного ПО и кражу личных данных пользователей (передача 3-им лицам параметров кредитных карт, логинов и паролей от соц сетей) Все это носит глобальный характер и программисты-зловреды постоянно ищут уязвимости сайтов и популярных ресурсов.

Практические советы

Таких советов в интернете великое множество, я соберу тут действительно стоящие ИМХО:
  1. Никогда, ни в коем случае не оставляйте стандартные и простые имена пользователей для авторизации на своих сервисах (admin, user, login, administrator итд). Это позволит повысить защищенность на 50% минимум. Плюс к этому используйте капчу или проверку на человечность;
  2. Всегда делайте бэкап, тут не может быть вопросов, резервная копия должна быть всегда! Я например делаю РК локально и раз в ночь сливаю скриптом на яндекс диск через Webdav, а с диска раз в неделю перемещаю все на домашний компьютер:
    Bash скрипт монтирования ЯД, копирования РК и отправки уведомления:
    #!/bin/sh
    # время, когда запускается бэкап
    STARTB="`date +%Y-%m-%d-%H:%M:%S`" 
    # расположение резервных копий
    BACKUPDIR1="/var/www/virtual/sysrtfm.ru/backups/"
    # куда смонтирован яндекс диск
    YDISK="/mnt/yandex.disk"
    # папка на яндекс диске в которую копируем РК
    BTDIR="siteback"
    # путь до папки для РК на ЯД
    TARGETDIR="${YDISK}/${BTDIR}/"
    DATETIME="`date +%Y-%m-%d-%H_%M_%S`"
    # уникальное имя логфайла
    LOGFILEDATE="`date +%Y%m%d`"
    # путь до логфайла
    LOGFILE="/var/log/backupall-${LOGFILEDATE}.log"
    echo `date +%Y-%m-%d-%H:%M:%S`" старт бэкапа" >> $LOGFILE
    # размонтируем диск на всякий пожарный
    umount -f $YDISK >> $LOGFILE
    # монтируем ЯД
    echo `date +%Y-%m-%d-%H:%M:%S` "монтируем ${YDISK}" >> $LOGFILE
    mount -t davfs https://webdav.yandex.ru:443 $YDISK >> $LOGFILE
    #запуск РК
    echo `date +%Y-%m-%d-%H:%M:%S` "бэкапим в ${TARGETDIR}${DATETIME}" >> $LOGFILE
    mkdir ${TARGETDIR}${DATETIME} >> $LOGFILE
    cd $BACKUPDIR1 >> $LOGFILE
    cp -r -f -p * ${TARGETDIR}${DATETIME} >> $LOGFILE
    umount -f $YDISK >> $LOGFILE
    #отправляем админу уведомление
    ENDB="`date +%H:%M:%S`"
    # тема сообщения
    STARTEND="Backup script Start of ${STARTB} End of ${ENDB}"
    mail -s "${STARTEND}" email@domain.com < $LOGFILE
    exit
    


  3. Как бы это не банально звучало, но теперь я всем советую генерировать или придумывать гораздо более сложный пароль. Пароли можно хранить или в блокнотике (АНикиБеники туда не доберутся) или запомнить с 10 раза. Но в любом случае это проще чем восстанавливать доступ и решать проблемы из-за утечки информации;
  4. Если используете популярные web скрипты или CMS, следите за их обновлениями т.к. дырки есть всегда. Старайтесь не использовать не проверенные скрипты без отзывов. Не используйте старые и не поддерживаемые WEB скрипты;
  5. Всегда есть возможность защитить административный WEB интерфейс либо плагином, либо настройкой авторизации через .httpasswd (мастер генерации таких файлов, которые просто нужно положить в защищаемую директорию)
  6. Если есть возможность включения SSL доступа к вашим сервисам — включите его! SFTP, HTTPS, Четыре шага в защите SSH;
  7. Берегите свою почту, на которую все завязано! Сильный пароль, двухэтапная авторизация маст хэв!


Еще более маниакальных советов очень много. Но я считаю, приведенные выше самыми первыми для реализации. Дальше каждый сам для себя решит на сколько далеко он может зайти в защите своих сервисов.

PS:


И так, я победил тьму, и я очень рад) опыт накоплен, сайт работает, система живет) осталось теперь только обсудить это с уважаемым сообществом habrahabr, но для ответа в комментариях мне нужен инвайт, поэтому я прошу НЛО запостить эту статью и подарить мне на Новый Год инвайт)

И я тогда, в свою очередь, зарегистрируюсь в проекте анонимных дедов морозов и подарю залежавшиеся полезные мелочи Хабраюзерам:

С Уважением Иван Левкин.
IMG_0081
Термокружка Canon EF 24-105 с блендой — точная копия одноименного объектива. Кружка оснащена металлической термоколбой для сохранения постоянной температуры напитков, а так же герметично завинчивающейся крышкой с резиновой прокладкой.
sku_35741_4
Compact Slim Retractable Cable Style USB 2.0 Optical Mouse — Black (80CM-Cable)
sku_48166_1
EDUP Ultra-Mini Nano USB 2.0 802.11n 150Mbps Wifi/WLAN Wireless Network Adapter
Поделиться публикацией

Комментарии 30

    +3
    Как-то сумбурно все, так и не понял конкретно, что за уязвимость CMS WordPress в итоге создала проблемы ТС…
      –3
      Честно говоря, я сам еще до конца не разобрался, как именно подломали ftp аккаунт (либо перебором, либо через какой то сторонний плагин CMS). Но WordPress в заголовке т.к. тот кто подломал, знал как модифицировать CMS что бы навредить…
        +3
        Какие файлы ядра WP были модифицированы? В посте описан /css/sys0972500-1.php — случайное имя файла и первая попавшаяся директория (либо из «словаря»)

        Вот из-за таких постов и формируется незаслуженные негативные отзывы о WordPress, а в 99% виноваты кривые ручонки «веб-мастеров» или разрабов плагинов, вспомнить например печально знаменитый Timthumb, уязвимость плагина, а виноват опять кто? — Wordpress конечно!
          0
          Был модифицирован файл
          /wp-content/plugins/lazy-load/js/lazy-load.js
          

          и
          wp-content/plugins/usernoise/js/usernoise.js
          

          Я очень! Люблю WordPress, и мне нравится его использовать! В статье постарался написать как избежать взлома популярной CMS. WordPress же тут просто для примера. Т.к. ситуация реальна. WP на столько популярна среди блогеров, что из-а этой популярности и среди взломщиков оказывается на одном из первых мест…
        • НЛО прилетело и опубликовало эту надпись здесь
            0
            Спасибо за наводку, попробую покопать в этом направлении!
        0
        С некоторых пор я вообще под Windows не ввожу никаких паролей и номеров кредитных карт. Я считаю, что даже самый лучший антивирус не дает 100% гарантии. Сейчас на LinuxMint. А все эксперименты провожу на локальном веб-сервере(мой ноут вполне с этим справляется). В продакшн идет уже протестированный код/плагин. Ну и пароли для фтп должны быть достаточно сложными.
          0
          Полностью поддерживаю! Но, например, я не могу отказаться полностью от Windows, т.к. домашний комп не только мой)))
          Но это тема уже совсем другого разговора.
            0
            Я тоже не могу отказаться от D3, я не предлагаю отказаться от Windows. Рядом можно поставить любой понравившийся дистрибутив. Одно неудобство — нужно перегружаться. Но как-то странно получается, что в последнее время я все реже перегружаюсь под windows.
          +1
          Вот хоть убей, не понимаю людей, которые используют FTP, всякие веб-панели администрирования, phpMyAdmin. Главное ведь наружу всё это добро торчит, а они надеятся, что всё будет хорошо.
          У вас сайт — наружу порты 80, 443, 22 (только с определенных IP). Всё.
          Это не панацея (может и в wordpress уязвимость быть), но это сузит круг подозреваемых до одного.
            +1
            Я всеми руками ЗА этот способ, но как быть с динамическим IP? На работе до пустим их 2, а дома каждый день новый. Если есть способ решить эту проблему — с удовольствием выслушаю!
              0
              Ну тогда хотя-бы авторизация только по сертификатам.
                0
                C этим соглашусь!
                0
                Сделайте хотя бы на подсеть провайдера.
              0
              Нашел сейчас в одном из бэкапов тот файл: sys0972500-1.php
              Начинается он так:
              <?php ${"\x47L\x4f\x42A\x4c\x53"}["\x6dql\x65byzv\x6dj"]="k";${"\x47\x4c\x4fBA\x4c\x53"}["\x70\x6c\x66\x70\x67\x74\x62"]="\x68\x5fdet\x65cte\x64";${"
              


              Могу прислать, если нужно кому.
              Вот так его определил антивирус:

                0
                Ждем пост про настройку бэкапа на ЯД :)
                  0
                  Ссылку на настройку WebDav я уже давал в статье, и скрипт РК тоже. Но если будет интересно, могу написать от А до Я, как бэкапить, в отдельной статье)
                    +2
                    Пароль к фтп в тотал командере сохраняли?
                      0
                      Что то Вы меня пугаете… конечно сохранял…
                      В сборке которой пользуюсь уже лет 5, и ftp пользуюсь только из нее… там много паролей забито.
                        +2
                        Значит самого главного вывода в статье нет :-)
                          0
                          Вооот оно! Прозвучало! Все чаще замечаю, что при установке freeware или opensource софта, кроме необходимого инструмента ставится еще и ненужное «барахло»: всякие менеджеры, загрузчики, оптимизаторы и прочее, понимаю что бесплатное ПО хочет немного себя окупить, но скачивая и устанавливая нужное ПО мы получаем кучу не нужного, и тем более зловредное ПО а это уже мошенничество чистой воды. Тем более это отличный способ получить доступ к чему либо еще и использовать это в своих целях.
                          Тоже самое происходит с приложениями в Android. Скачивая приложение мы получаем в нагрузку и другое! Я уже молчу стабильной тенденции «мотивировать» пользователей соц.сетей к оплате.
                            0
                            Если мне не изменяет память, в самом TotalCommander есть предупреждение, что в нем хранить пароли небезопасно. Поэтому я никогда не хранил пароли в нем. Да неудобно, каждый раз вбивать или копипасить, но если уже сами разработчики предупреждают, легкомысленно этот факт игнорировать.
                              0
                              помните только мастер пароль и храните пароли. Этоже жесть от кучи сайтов пароли помнить.
                            0
                            А теперь внимание вопрос — у вас ос лицензионная?
                            антивирус и другой софт — лицензионный?

                            коментом ниже уже сказали — главного вывода нет.
                            Потому что хранить все пароли надо либо а) в голове, либо б) в специальной софтинке, вроде keepassx, умеющей как хранить пароли в шифрованной базе, так и генерировать сложные пароли вроде такого:
                            «5F~R_G;Q[AnM%^)NRh-Rn}Ts-Kwz=-UUDupzGW{y n4=wN!r%4)K7`Nu/,{: isB»

                            Удачи в переборе такого счастья.
                            Кстати да, я могу вполне спокойно из keepassx копировать и вставлять пароль прямо в процессе демонстрации, например, панели управления боевым хостингом, ничего кроме "********" пользователи не увидят.
                              0
                              Пользуясь случаем, замечу, что любой секурности есть пределы. Потратив немало времени на настройку реплики mysql, IT департамент моей организации пришел к выводу, что усложнение длины генерируемого пароля до 35 символов было перебором. Кто не в курсе — реплика не будет работать, если длина пароля превышает 32 символа.
                                0
                                в аське с момента создания пароли 8 символов. в ms Live аккаунте при логине с телдефона опытным путем было замечено что больше 25 символов низя.
                                А так у меня везде пароли очень длинные
                          +2
                          Сумбурно, слишком много ненужного, а решается все гораздо проще.

                          1. Логировать отсылку почты умеет сам php, не обязательно для этого «насиловать» почтовик — mail.add_x_header и mail.log в помощь

                          2. Почтовик надо настраивать на предмет ограничения рассылки писем (например не более 500 в час), этим же еще и спасетесь от попадания в черные списки. Кроме того можно настроить уведомления о большой очереди и/или большой активности.

                          3. Поиск зловордов онлайн сканерами — это вообще зачем такое чудо чудное? Надо с причиной болезни разбираться, а не с последствиями.
                          Ищите локально!
                          Тот же ClamAV прекрасно найдет вам все залитые php-шеллы и прочую муть (впрочем, мейлеры, к сожалению, не найдет).

                          4. Можно попробовать ai-bolit. Хотя мой опыт на клиентских сайтах «отрицательный» — я так и не понял, как этим инструментом пользоваться. Находит очень много «подозрительных» файлов. Так много, что руками перебрать их нереально.

                          5. В первую очередь анализируйте логи веб-сервера!
                          grep «POST» на лог файл (и на все старые логи) и там будет прекрасно видно «левые» скрипты.

                          В 90% случаев взламывают через уязвимость какого-то из компонет/плагинов/проч. Через неё заливают шелл и потом уже делают все остальное.

                          А статья ни о чем, простите :)
                            0
                            Спасибо, изучу каждый пункт!
                            0
                            Я бы убрал из хаба Wordpress и из тайтла тоже бы убрал — Wordpress здесь абсолютно ни при чём. Во времена моего активного фриланса мне довольно часто приходилось чинить клиентские сайты, в которые был внедрён вредоносный код. В 90% случаев это было сделано по FTP.
                              0
                              Я бы на вашем месте закрыл возможность авторизации по ftp, к тому же, вы — единственный админ — пользуетесь рутовым ssh, так зачем держать потенциально уязвимое место открытым?
                              Для защиты от брута админпанели Wordpress защищает статичный IP и ограничение по авторизации всем, кроме него. Если IP динамика, можно пошаманить на тему смены названия wp-login.php на что-то нестандартное.
                              Кстати, для защиты от исполнения .php можно в папку с css/js или картинками залить .htaccess с php_value engine off. И, конечно, не забываем прописать правильные права доступа chown/chmod

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

                              Самое читаемое