Жук для опытов .::Gh0st::. && BlackPrince Хакер, номер #075, стр. 075-068-4 С помощью блокнота я сделал файл описаний mod_shell.xml такого содержания: XML-файл описаний нашего модуля <?xml version="1.0" ?> <mosinstall type="module"> <name>Releated Items</name> <creationDate>/05/Mar/2005</creationDate> <author>Black Prince</author> <copyright>This template is released under the GNU/GPL License</copyright> <authorEmail>BlackPrince@nsd.ru</authorEmail> <authorUrl></authorUrl> <version>1.0</version> <description>Shows related content items based on keywords in the meta key field</description> <files> <filename module="mod_shell">mod_shell.php</filename> </files> </mosinstall> Создав папку mod_shell, я поместил туда файл описаний и скрипт mod_shell.php, после чего заархивировал директорию zip’ом. Теперь модуль готов. В системе администрирования я выбрал меню установки дополнительных модулей и загрузил его со своего диска. Теперь в системе отобразился новый модуль, а сам web-шелл стал доступен по адресу http://site.ru/modules/mod_shell.php. Теперь осталось переименовать наш бэкдор во что-нибудь неброское и удалить из админки новоиспеченный модуль, чтобы не оставить лишних следов. Вот и все, теперь у меня был шелл с правами пользователя, и я без проблем мог сделать полноценный дефейс либо продолжить атаку. Отсюда вывод Как видно, даже если в багтраках нет никаких описаний уязвимостей, если установлена последняя версия форума и даже сами разработчики в ус не дуют, все равно возможно найти уязвимость самостоятельно. Стоит только отыскать путь для выполнения javasript’ов и научиться выполнять элементарное приложение alert(‘hello’), а после этого уже и до кражи пользовательских кукисов недалеко. Однако следует помнить, что CSS-атака, как никакая другая, является браузеро-зависимой, поэтому неплохо было бы проверять ее эффективность на различных платформах. Не забывай, что тестировать баги в форумных движках лучше на своей локальной машине, чтобы избежать лишних вопросов со стороны отдела «К» и не нарушать законов. Что помогло нам при взломе? 1. Обнаружив возможность выполнения простейшего javascript’a, мы путем различных манипуляций нашли, как вставлять более сложные скрипты. 2. Обход фильтрования был осуществлен с помощью применения различных кодировок. Кстати, фильтры частенько грешат слабыми правилами. Иногда достаточно изменить регистр одной буквы, чтобы обойти его. 3. Изучение мануалов производителя помогло составить правильный модуль, давший доступ к web-шеллу. |