Воруй-убивай, пиши-качай

в 15:03, , рубрики: python, информационная безопасность, метки:

В январе этого года в одном из сервисов ICQ была найдена уязвимость. Она была связана с доступом к файлам, которые когда-то пользователи передавали друг-другу. Уязвимость устранили, но такие ситуации отнюдь не уникальные.
Ниже мы рассмотрим еще один сервис предназначенный для файлообмена между пользователями.
image

Сегодня один из заказчиков прислал мне ТЗ используя сайт droplr.com. Сервис действительно удобный. Я не пользуюсь всякими дропбоксами и подобными просто из-за низкой скорости интернета. Но данный сервис мне понравился, всё достаточно удобно, интерфейс, клиенты под различные платформы, но самое главное — можно качать чужие фалы.
Когда я перешел по ссылке от заказчика, стало ясно, что у на droplr используется сокращатель ссылок. В результате страница для загрузки файла имеет примерно такой вид: http://d.pr/[a-z]{1}/[A-z0-9]{4}
В случае с первым вхождением используется лишь один символ нижнего регистра, который как показало время совершенно безразличен системе.
Вторая последовательность длиной в 4 символа может состоять из строчных, прописных латинских символов и цифр.
Учитывая, что сервисом пользуется огромная масса народа, можно предположить, что при брутфорсе второго параметра мы будем часто натыкаться на чужие файлы, ведь общее число возможных вариантов — 14776336.
Обычно, подобные задачи я пишу на PHP или голом BASH, там есть всё что нужно, прямо из коробки. Но нужно развиваться, поэтому решил остановиться на Python, поскольку некоторый опыт работы с ним уже есть.

Судя по задаче нам необходимо как-то обращаться к сервису, в Python для этого есть много реализаций и интерфейсов, я решил остановиться на requests, поскольку эта библиотека обладает всеми требованиями, которые нам необходимы.
В случае, если у вас стоит pip, то установка займет всего несколько секунд.
pip install requests

Для парсинга страницы существует мощная библиотека под названием BeautifulSoup. Установка через pip тоже элементарна.
pip install bs4

Скачать скрипт можно на GitHub

Как я и думал, после первых 5 минут работы было найдено порядка 10 изображений с персональными данными, да еще какими!

Воруй убивай, пиши качай
Админка сайте, включая некоторые данные о юзерах.

Воруй убивай, пиши качай
А вот и номера телефонов

image
Один день из жизни LR.

Автор: akamajoris

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js