Обфускация программного кода – это любые действия, усложняющие его анализ, в том числе:
1. преднамеренное преобразование кода в нечитаемый, включая применение различных способов его кодирования, искусственное усложнение, добавление ненужных участков;
2. разделение кода на отдельные части, загружаемые из различных источников при соблюдении определённых условий;
3. использование в нём названий известных, вызывающих доверие компаний и продуктов;
4. непреднамеренная «обфускация» за счёт неработоспособности, плохо продуманной архитектуры и общего низкого качества кода.
Вредоносный код на веб-сайтах часто состоит из нескольких частей, которые подгружаются из разных источников. Вспомогательная часть обычно располагается на страницах недавно взломанного «хорошего» сайта. Когда она загружается к пользователю в браузер, то подгружает в него основной вредоносный код с серверов злоумышленников.
Злоумышленники могут давать серверам, с которых загружается основная часть вредоносного кода, доменные имена похожие на доменные имена известных компаний. В последнее время резко участились случаи заражения веб-сайтов кодом, основная часть которого загружается с yandex-yandex.uni.cc и ad.yandex-verification.net. К Яндексу эти домены, разумеется, никакого отношения не имеют. Технические подробности приведены ниже. Будьте бдительны!
Чтобы в будущем не допустить заражения вашего сайта вредоносным кодом:
- не сохраняйте пароли в веб-браузерах, файловых менеджерах, а также FTP-, SFTP-, SCP- и SSH-клиентах;
- используйте стойкие пароли, регулярно меняйте их, чтобы злоумышленники не смогли подобрать пароль по словарям или перебором (рекомендуем использовать пароль из не менее чем 10 букв, цифр и специальных символов);
- используйте на рабочих станциях и серверах антивирус, следите за тем, чтобы его ядро и базы регулярно обновлялись;
- настройте файрволлы и сетевую инфраструктуру так, чтобы были разрешены только необходимые для работы соединения;
- регулярно устанавливайте обновления для вашей CMS, а если используете CMS собственной разработки – применяйте WAF (Web Application Firewall) и правила безопасного программирования;
- зарегистрируйте сайт в Яндекс.Вебмастере, чтобы иметь возможность самостоятельно запускать его перепроверку, а также посмотреть информацию о найденном коде в случае заражения.
Прочитать полную версию записи, а также узнать, как удалить вредоносный код на стороне сервера можно здесь.