Wget

Материал из InformationSecurity WIKI
Перейти к: навигация, поиск

Нередко встречаются таски, использующие "особенности" работы с wget.

Рассмотрим некоторые из них

Особенности wget

Ссылки с редиректами

Если требуется сохранить файл с каким то именем и обойти фильтр - то это то что вы ищете!

Суть фичи в том, что wget сохраняет файл не на который указывала ссылка, а на которую указал редирект.

ВАЖНО!!! Работает не везде (на данный момент известно только MacOS)

Пример работы ссылки с редиректом вы можете видеть на изображении:

Wget-redirect.png


Настройка редиректа в NGINX веб-серверах

Для этого требуется отредактировать файл /etc/nginx/sites-enabled/default (файл может отличаться - в зависимости от ОС и ваших настроек)

В главной части вставляем такую строку:


rewrite ^/file1.txt$ http://site.org/file2.txt permanent;


Она будет перенаправлять всех с http://site.org/file1.txt на http://site.org/file2.txt

Настройка редиректа в Apache веб-серверах

В случае с Apache требуется редактировать уже не default, а .htaccess файл. Он должен находиться в папке сайта в которой будет файл с редиректом.

Добавляем в него такую строку

Redirect /file1.txt http://site.org/file2.txt

Перенаправление аналогичное с nginx.

GET параметры

С помощью манипуляцией GET параметров можно манипулировать названием файла и обходить фильтры. Например мы можем загрузить файл с отличающимся расширением:

   http://site.org/file1.txt?.php

В итоге у нас будет сохранен файл file1.txt%3F.php который будет интерпретироваться как php исполняемый файл.


Типичная RCE

Так же не забываем, что wget исключительно терминальная утилита и если должным образом не обработать вводные данные, то может быть rce.

Например введем url сайта

   http://site.org/file1.txt;ls

и исполнится команда ls.


Подробнее об этом вы можете рассмотреть в статье, посвященной rce.

Access List Bypass / Race Condition

Уязвимость под номером CVE-2016-7098 позволяет провести атаку Race Condition и обойти ограничение на формат скачиваемых файлов.

Если упростить, то атака заключается в замедлении скачивания конца файла wget'ом. Файл записывается потоком, а проверка на имя файла происходит после скачивания всего файла, в связи с чем важная часть пейлоада будет записана в файл с нужным разрешением и будет храниться в нем какое то время до конца скачивания (до проверки расширения).

Ссылки

Описание и Exploit


page-requisites parameter

Wget с аргументом page-requisites будет скачивать все ссылки на странице, что в некоторых случаях позволяет обойти фильтрацию URL и скачать нужный нам файл.

Пример райтапа

Boston Key Party CTF 2016 Good Morning and OptiProxy Writeup

Райтапы

SECUINSIDE CTF Quals 2016 - Trendyweb Method #2


Полезные ссылки

официальная вики статья

русскоязычная документация

уязвимости wget

wget rce