Инструмент представляет собой автоматизированный S3-совместимый инспектор Bucket, который помогает пользователям извлекать ресурсы, выявлять случаи раскрытия конфиденциальной информации и даже искать пользовательские ключевые слова, а также регулярные выражения в общедоступных хранилищах, сканируя файлы, в которых данные хранятся в виде обычного текста.
Инструмент может сканировать buckets, развернутые на Amazon Web Services (AWS), Google Cloud Storage (GCS), DigitalOcean Spaces, и даже пользовательские домены/URL-адреса, которые могут быть связаны с этими платформами.
По умолчанию работает в гостевом режиме, то есть пользователю не нужно указывать какие-либо токены API или ключи доступа для запуска сканирования. Инструмент извлекает максимум 1000 файлов, которые возвращаются в XML-ответе. Если в корзине хранилища содержится более 1000 записей, которые пользователь хочет просканировать, он может предоставить учётные данные платформы для полного сканирования.
😮 Возможности
🌟Выполняется сканирование более чем 80 уникальных сигнатур RegEx, которые могут помочь выявить секретные уязвимости, помеченные в соответствии с их серьезностью, в неправильно настроенном хранилище. Пользователи могут изменять или добавлять свои собственные сигнатуры в regexes.json файл.
🌟Поставляется с более чем 80 уникальными сигнатурами регулярных выражений в vulnFiles.json, которые позволяют пользователям помечать конфиденциальные файлы на основе их названий или расширений.
🌟Режим Dig позволяет передавать целевые объекты, не относящиеся к S3, и извлекать URL-адреса из тела ответа для сканирования.
🌟Извлекает все URL-адреса, поддомены и домены, которые могут присутствовать в открытом хранилище, что дает возможность обнаружить скрытые конечные точки и, таким образом, получить преимущество перед другими традиционными инструментами для сбора данных.
💻 Установка и использование
git clone https://github.com/redhuntlabs/BucketLoot.git
cd BucketLoot
go build
Для режима полного сканирования необходимо изменить файл credentials.json и добавить учетные данные для целевых платформ, на которых вы хотите выполнить полное сканирование.
1️⃣ Базовое сканирование
Указать в качестве аргумента целевой URL или целевой файл (файлы).
./bucketloot https://myvulninstance.s3.amazonaws.com/
OR
./bucketloot targets.txt
2️⃣ Дополнительные флаги
Инструмент определяет, является ли целевая конечная точка URL-адресом, не относящимся к хранилищу, и если да, то извлекает из него все URL-адреса, ищет все действительные и неправильно настроенные хранилища и сканирует их.
./bucketloot https://myvulninstance.s3.amazonaws.com/ -dig
Полное сканирование (поддерживается только для AWS).
./bucketloot https://myvulninstance.s3.amazonaws.com/ -full
Сохранение ошибок, обнаруженных во время сканирования.
./bucketloot https://myvulninstance.s3.amazonaws.com/ -log-errors
Флаг -max-size позволяет указать максимальный размер файла, который необходимо просканировать (в байтах).
./bucketloot https://myvulninstance.s3.amazonaws.com/ -max-size 13521
Сохранить выходные данные в формате JSON.
./bucketloot https://myvulninstance.s3.amazonaws.com/ -save myscan.json
Поиск определённых ключевых слов или регулярных выражений в содержимом файлов из открытого хранилища.
./bucketloot https://myvulninstance.s3.amazonaws.com/ -search 'admin'
./bucketloot https://myvulninstance.s3.amazonaws.com/ -search 'admin:::login:::password:::API:::.*dev-instance'
Флаг -slow предназначен для систем с низкой пропускной способностью сети, где важна согласованность результатов. Он позволяет выполнять все сканирования последовательно, а не параллельно.
./bucketloot https://myvulninstance.s3.amazonaws.com/ -slow
