Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!
sh00t — Тестирование безопасности — это не так просто, как кликнуть правой кнопкой мыши > Сканировать. Это запутанная и сложная игра. Что, если вы упустили проверить одну-единственную вещь и потом пожалели об этом? Sh00t — это высоконастраиваемая, интеллектуальная платформа, которая понимает жизнь охотников за багами и делает акцент на ручном тестировании безопасности. | Kitploit
Тестирование безопасности — это не так просто, как кликнуть правой кнопкой мыши > Сканировать. Это запутанная и сложная игра. Что, если вы упустили проверить одну-единственную вещь и потом пожалели об этом? Sh00t — это высоконастраиваемая, интеллектуальная платформа, которая понимает жизнь охотников за багами и делает акцент на ручном тестировании безопасности.
Поделиться
root@kitploit:~
Среда тестирования для специалистов по ручному тестированию безопасности
Sh00t
это менеджер задач, позволяющий сосредоточиться на проведении тестирования безопасности
предоставляет контрольные списки To Do тестовых сценариев
помогает создавать отчёты об ошибках с настраиваемыми шаблонами ошибок
Возможности:
Динамический менеджер задач для замены простых редакторов или инструментов управления задачами, которые НЕ предназначены для безопасности
Автоматизированный, настраиваемый контрольный список тестовых сценариев безопасности для замены Evernote, OneNote или других инструментов, которые НЕ предназначены для безопасности
Управление пользовательскими шаблонами ошибок для разных целей и автоматическая генерация отчёта об ошибке
Поддержка нескольких оценок и проектов для логического разделения ваших различных потребностей
Используйте как бумагу — всё сохраняется автоматически
Экспорт автоматически сгенерированного отчёта об ошибке в Markdown и слепая отправка на HackerOne! (В разработке)
Интеграция с JIRA, ServiceNow - скоро
Экспорт отчёта об ошибке в Markdown - скоро
Настройка всего под капотом
Установка:
Установите Docker, если его нет. Пользователи Windows 10 Home или пользователи старых версий, обратитесь к инструкциям по альтернативной установке ниже.
Загрузите образ Sh00t Docker: docker pull pavanw3b/sh00t:latest
Создайте том для сохранения данных между контейнерами Docker: docker volume create --name sh00t
Вы профи в Django и хотите настроить всё самостоятельно? Мы также позаботились о вас: Ручная установка
Используете машину без Hyper-V, например Windows Home? Вы можете использовать Docker Toolbox и Docker Quickstart Terminal. Ваш Sh00t будет запущен на IP-адресе вашего Docker по умолчанию: http://YOUR_DOCKER_IP:8000/. IP-адрес будет отображаться при запуске Quickstart Terminal. Вы также можете найти его с помощью docker-machine ls и docker-machine ip MACHINE_NAME.
Если вы хотите перейти на Docker-версию Sh00t из предыдущей установки, не теряя существующих данных, вам необходимо вручную заменить файл /root/sh00/db/db.sqlite3 в контейнере Docker на файл из вашей старой установки sh00t.
Использование Sh00t в дальнейшем:
Запустите контейнер: docker start sh00t
Войдите на http://YOUR_IP:8000/ в вашем любимом браузере
Войдите с sh00t / sh00t, если вы не изменили его
Остановите контейнер, если хотите: docker stop sh00t
и повторяйте!
Примечание: Всегда используйте docker start и docker stop. Вы можете потерять данные, если удалите контейнер или том.
Обновление
Важно поддерживать ваш Sh00t в актуальном состоянии, чтобы воспользоваться новыми функциями и исправлениями ошибок.
Удалите существующий контейнер: docker container rm -f sh00t
Не волнуйтесь, ваши данные в безопасности, если вы не удалите том Docker.
Загрузите последний образ Docker: docker pull pavanw3b/sh00t:latest
Запустите новый контейнер с последним кодом, но всё ещё со старыми данными: docker run -d -p 8000:8000 --name sh00t -v sh00t:/root/sh00t/db pavanw3b/sh00t:latest
Удаление
Если вы хотите удалить все образы, контейнеры и тома Sh00t, можно выполнить следующие команды. Примечание: Это деструктивная операция, её нельзя отменить.
Sh00t написан на Python и работает на Django Web Framework. Если вы столкнулись с ошибками, поиск по сообщению об ошибке в Google, скорее всего, поможет. Если вы не уверены, пожалуйста, создайте новый issue на GitHub.
Глоссарий:
Flag: Flag — это цель, в которую стреляют (sh00ted). Это тестовый сценарий, который необходимо проверить. Флаги генерируются автоматически на основе выбранной методологии тестирования. Ошибка может быть найдена или нет — но цель состоит в том, чтобы прицелиться и выстрелить (sh00t) в него. Флаг содержит подробные шаги для тестирования. Если ошибка подтверждена, то это называется sh0t.
Sh0t: Sh0ts — это ошибки. Обычно Sh0t содержит техническое описание ошибки, затронутые файлы/URL, шаги воспроизведения и рекомендации по исправлению. Большая часть содержимого Sh0t генерируется одним нажатием, и нужно изменить только динамический контент, такой как затронутые параметры, шаги. Sh0ts могут принадлежать Assessment.
Assessment: Assessment — это оценка тестирования. Это может быть оценка приложения, программы — как пользователь хочет управлять. Это часть проекта.
Project: Project содержит assessments. Project может быть логическим разделением того, что вы делаете. Это может быть разная работа, bug bounty — решать вам.
Template: Templates — это ваши шаблоны ошибок. Они используются с Sh0t. Это для замены работы копирования-вставки при создании новой ошибки. Создайте шаблоны для всех ваших ошибок, оставьте переменные, которые будут меняться в вашем фактическом отчёте об ошибке, такие как URL, затронутая область и т.д., которые будут заменены при загрузке шаблона в ваш Sh0t.
Case Master: Case Master — это набор тестовых сценариев. Это отдельные тесты, которые вы будете выполнять на своей цели. Настройка тестовых сценариев поможет вам управлять тестированием и охватить всё, что вам понадобится в вашем Assessment. У каждого хакера будут свои тестовые сценарии. Держите их короткими и лёгкими для выполнения. Хранение полного списка тестовых сценариев в вашем Sh00t — самая важная часть использования Sh00t. Тестовые сценарии станут Flags, которые необходимо протестировать, когда вы начинаете новый Assessment.
Module Master: Modules — это логическая часть тестов. Например, управление пользователями и сессиями — это пример Module. Modules похожи на категории тестирования.
Methodology Master: Methodology — это ваш подход к тестированию. OWASP Testing Guide V4 и Web Application Hacker Handbook (WAHH) являются примерами Methodology и поставляются по умолчанию с Sh00t. Вы можете создать свою собственную Methodology, Modules и Test Cases. У вас могут быть разные Methodologies для официальной работы и личного bug bounty. Methodology поможет вам их разделить.
Как это работает?
Начните с создания нового Assessment. Выберите методологию, с которой хотите тестировать. Сегодня доступно 330 тестовых сценариев, сгруппированных в 86 Flags, принадлежащих 13 Modules, которые созданы на основе методологии тестирования "Web Application Hacker's Handbook". Modules & Flags можно выбрать вручную и настроить. После создания Assessments с Flags тестировщик должен проверить их либо вручную, либо полуавтоматически с помощью сканеров, инструментов или как требуется, и отметить как "Done" по завершении. При выполнении оценки мы часто сталкиваемся с пользовательскими тестовыми сценариями, специфичными для определённого сценария в приложении. Новый Flag можно легко создать в любой момент.
Всякий раз, когда Flag подтверждается как действительная ошибка, можно создать Sh0t. Можно выбрать наиболее подходящий шаблон ошибки, и sh00t автоматически заполнит отчёт об ошибке на основе выбранного шаблона.
Кто может использовать Sh00t?
Инженеры по безопасности приложений: пентест и оценка уязвимостей
Охотники за багами (bug bounty)
Независимые исследователи безопасности
Синяя команда, разработчики, исправляющие ошибки
Любой, кто хочет взламывать
Скриншоты:
Панель управления:
Работа с флагом:
Редактирование в полноэкранном режиме:
Выбор методологии и тестовых сценариев при создании новой оценки:
Заполнение ошибки с предварительно заполненным шаблоном: