Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
SecretScrub — Обрабатывает выходные данные SARIF от инструментов статического анализа, чтобы обнаруживать и удалять захардкоженные секреты в исходном коде, создавая чистую копию без исходных секретов. | Kitploit
Инструменты/GitHubGitHub/nccgroup/secretscrub
Статический анализ кода (SAST)Аудит конфигурацииDevSecOpsУтилиты и фреймворкиОбнаружение Секретов
GitHubnccgroup/secretscrub

SecretScrub

Обрабатывает выходные данные SARIF от инструментов статического анализа, чтобы обнаруживать и удалять захардкоженные секреты в исходном коде, создавая чистую копию без исходных секретов.

Репозиторий
52 лет назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

SecretScrub

SecretScrub избавит вас от всех ваших грязных захардкоженных секретов. Этот скрипт обрабатывает файлы в формате SARIF, который генерируется различными инструментами статического анализа. Инструмент сканирует каталог в файловой системе и создаёт новую копию каталога, в которой все обнаруженные в SARIF-файлах экземпляры секретов замаскированы. Поскольку секреты часто хранятся в истории Git, каталог .git исключается из результирующей копии.

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

ToolVersionComments
Trivy0.37.0
Gitleaks8.15.2Работает только с отчётами, созданными с использованием опции --no-git, которая сканирует файловую систему, но не нижележащий репозиторий Git, если он существует.
ccs1d055c542dbdb6e7b96279d4df03ea9b556eb27aВывод ccs должен быть предварительно обработан в формат SARIF с помощью прилагаемого скрипта ccs2sarif.py.
cq011697a9e371e37a6ac9f714b3980672bc6108e7Вывод CQ должен быть предварительно обработан в формат SARIF с помощью прилагаемого скрипта cq2sarif.py. Поскольку вывод CQ может быть очень зашумлённым, рекомендуется выполнять операцию маскирования отдельно или называть файлы так, чтобы CQ-файл появлялся последним в каталоге.
BinDetectВстроенный инструмент, который обнаруживает двоичные файлы, обычно пропускаемые другими инструментами, ориентированными на текст.

Из-за различий в выводе SARIF возможно, что вывод, созданный будущими версиями инструмента, будет работать некорректно.

Dependencies

Зависимости перечислены в файле requirements.txt. Кратко, требуются следующие пакеты:

Package

Usage

Command Line Usage

Using previously-generated tool output

root@kitploit:~
$ python secretscrub.py --input <path> --srcdir <path> --outdir <path> [--report <path>]

Invoking the tools

root@kitploit:~
$ python secretscrub.py --analyse-with <analysis-tool-list> --srcdir <path> --outdir <path> [--report <path>]

ПРИМЕЧАНИЕ. Для работы инструменты должны присутствовать и быть установлены в текущей системе:

Docker Container

Docker-образ, собранный из этого дерева исходников, включает инструмент SecretScrub и копии инструментов Trivy, GitLeaks, ccs и cq.

Если он был собран с тегом secretscrub:latest, следующая команда запустит полный анализ и операцию маскирования с сопутствующим отчётом.

root@kitploit:~
sudo docker run -it -v <source-path>:/src:ro -v <output-path>:/out secretscrub:latest --analyse-with trivy,gitleaks,bindetect

Обратите внимание, что это подразумевает монтирование двух томов в контейнер. Первый -- <source-path> -- должен содержать исходный, незамаскированный исходный код. Второй -- <output-path> -- получит замаскированные выходные данные и отчёт.

Suggested Workflow

В следующих примерах предполагается, что исходный код хранится в подкаталоге с именем src, а SecretScrub установлен в подкаталоге с именем tools.

Using the Command Line

root@kitploit:~
$ python tools/secretscrub.py --analse-with trivy,gitleaks,bindetect --srcdir src --outdir src-redacted

Using the Docker Container

root@kitploit:~
sudo docker run -it -v <source-path>:/src:ro -v <output-path>:/out secretscrub:latest --analyse-with trivy,gitleaks,bindetect
Скачать инструмент
Version
asn12.7.0
filetype1.2.0
py7zr0.20.5
pyzipper0.3.6
regex2023.5.5
sarif-tools1.0.0
ParameterDefinition
inputРасположение результатов SARIF, которые должны быть обработаны. Может содержать несколько SARIF-файлов, которые могут быть созданы с помощью разных поддерживаемых инструментов.
srcdirРасположение исходного кода, который был отсканирован для создания результатов CQ, подлежащих обработке.
outdirРасположение, где будут храниться замаскированные исходные файлы.
placeholderЗаполнитель, вставляемый вместо всех обнаруженных секретов. Может принимать следующие подстановки:
- ${tool} Имя инструмента, использованного для обнаружения секрета
- ${rule} Имя правила, использованного для обнаружения секрета
- ${regex} Регулярное выражение, связанное с правилом, использованным для обнаружения секрета
- ${yaml} Структура в стиле YAML flow, содержащая (если известно) только имена инструмента и правила, использованных для обнаружения секрета
- ${yaml_regex} Структура в стиле YAML flow, содержащая (если известно) имена инструмента и правила, а также регулярное выражение, использованное для обнаружения секрета
process-archivesПереключатель для указания
reportРасположение и имя CSV-отчёта, который должен быть создан и содержать сведения о вычищенных секретах.
report-encryptionЕсли файл отчёта создаётся, метод шифрования, который следует использовать. Возможные значения: none, zip-aes256. По умолчанию: zip-aes256
log-levelУровень журналирования, используемый для вывода инструмента. Возможные значения: critical, fatal, error, warning, info, debug. По умолчанию: info
ParameterDefinition
analyse-withСписок инструментов для запуска, разделённый запятыми. Может включать любое из следующих: trivy, gitleaks, ccs. cq, bindetect
srcdirРасположение исходного кода, который был отсканирован для создания результатов CQ, подлежащих обработке.
outdirРасположение, где будут храниться замаскированные исходные файлы.
placeholderЗаполнитель, вставляемый вместо всех обнаруженных секретов. Может принимать следующие подстановки:
- ${tool} Имя инструмента, использованного для обнаружения секрета
- ${rule} Имя правила, использованного для обнаружения секрета
- ${regex} Регулярное выражение, связанное с правилом, использованным для обнаружения секрета
- ${yaml} Структура в стиле YAML flow, содержащая (если известно) только имена инструмента и правила, использованных для обнаружения секрета
- ${yaml_regex} Структура в стиле YAML flow, содержащая (если известно) имена инструмента и правила, а также регулярное выражение, использованное для обнаружения секрета
reportРасположение и имя CSV-отчёта, который должен быть создан и содержать сведения о вычищенных секретах.
report-encryptionЕсли файл отчёта создаётся, метод шифрования, который следует использовать. Возможные значения: none, zip-aes256. По умолчанию: zip-aes256
log-levelУровень журналирования, используемый для вывода инструмента. Возможные значения: critical, fatal, error, warning, info, debug. По умолчанию: info
ToolComments
TrivyКоманда trivy должна быть установлена и доступна в PATH.
GitLeaksКоманда gitleaks должна быть установлена и доступна в PATH.
ccsФайл ccs.py должен находиться в подкаталоге с именем ccs внутри каталога, содержащего файл secretscrub.py.
cqФайлы cq.py и fn.py должны находиться в подкаталоге с именем cq внутри каталога, содержащего файл secretscrub.py.
bindetectВ настоящее время он включён в состав secretscrub, и дальнейшая установка не требуется.