Анонс, сервис проверки PHP кода на вредоносные консрукции.
15 октября, 2010
Из десяти скачанных тем WordPress из публичного доступа в шести были различные eval конструкции, с зашифрованным содержимым методами gzinflate(str_rot13(base64_decode('DZZUzqR1AlGv0ruuEgt8ApqZLuG9t8mmlWvPhyc5/fwnCD0p9CL+/PPfP3+V53
Достаточно печальная тенденция. После ручной расшифровки eval блоков предстаёт содержимое, подобное этому http://lenta.iadlab.ru/2010/09/21/wordpress-eval/.
Подобные скрипты способны:
1. Получить информацию о файлах текущего сайта, включая конфигурационный файл, в котором написан пароль для подключения к базе данных.
2. Ко всем данным базы данных сайта и при получении пароля из пункта 1, ко всем базам доступным этому логину (обычно это все базы сервера, т.к. мало кто заморачивается созданием отдельных логинов).
3. Скачать информацию с любого другого сервера и развернуть хакерский инструментарий где-нибудь в папке с открытым доступом (обычно папки, в которые загружаются рисунки доступны на запись). Таким образом хакер сможет в любой момент подключиться к серверу и выполнить любую команду(в соответствии с полученным доступом).
4. Выполнение произвольных команд. Использую PHP функцию system можно выполнить любой скрипт в консоле (от прав текущего пользователя). При удачном стечении обстоятельств возможно получение прав суперпользователя root.
И всё это может произойти как только вы скопировали тему(плагин) в каталог сайта. Первый вход в админку сайта вызовет индексацию темы, что уже может привести к выполнению вредоносных процедур.
В общем, был подготовлен сервис, для проверки PHP кода:
1. Проверка на eval конструкции, выполнение раскрытия этих конструкций
2. Проверка кода на содержание функций способных получить информацию, либо причинить деструктивные действия.
Сервис проходит стадию внутреннего тестирования и будет доступен по адресу http://uneval.com/ на ближайших выходных. По факту открытия будет более полный обзор.
Удачного дня!
Ну и накуя спрашивается 🙂 Ты бы еще при возникновении идеи опубликовал бы «анонс» 🙂 Через уй знает сколько чего (дней, месяцев, человеко-лет) откроется ер знает что, еуй знает для чего 🙂 Ждитя ля 🙂
Нет, ну, конечно, есть «научные» объяснения почему не надо делать анонс еще не запущенного сервиса/сайта, но я решил так… По-человечьи 🙂
Запланированное открытие в воскресенье. Данным анонсом я хотел показать важность безопасности при использовании непровереного кода. Мир и щастьие всем =)
Ну ты как бэ со сроками пролетел 🙂
на полную реализацию проекта ещё кучу работы. но уже можно тестить.