Импорт отчетов из инструментов безопасности
Система поддерживает импорт результатов сканирования из внешних инструментов безопасности. Результаты сканирования обрабатываются следующими способами:
- парсинг на основе универсальных форматов вывода (SARIF);
- парсинг на основе форматов отчетов, поддерживаемых инструментами безопасности.
Ниже представлен список форматов, поддерживаемых инструментами безопасности.
| Инструмент безопасности | Формат файла | Название формата |
|---|---|---|
| Aqua | HTML внутри JSON | Custom HTML Report |
| CodeScoring | JSON | Custom CodeScoring JSON |
| ESLint | JSON | ESLint Report JSON |
| External | JSON | SARIF 2.1.0 |
| GitLab Advanced SAST | JSON | GitLab SAST Report JSON |
| Gitleaks | JSON | Gitleaks JSON Report |
| Grype | JSON | Grype Vulnerability Report JSON |
| KCS | JSON | KCS (Kubescape) JSON |
| KICS | JSON | KICS Scan Results JSON |
| Manual | JSON | ASOC Manual Issue Format JSON |
| OWASP Dependency Track | JSON | CycloneDX-based JSON |
| PT AI | JSON | PT Application Inspector JSON |
| PVS | JSON | SARIF 2.1.0 |
| SASTAV | JSON | SASTAV Security Scan Report JSON |
| Semgrep | JSON | Semgrep Results JSON |
| Solar Appscreener | JSON | Custom JSON (SCA/DAST/SAST) |
| Stingray | JSON | Stingray Defect Report JSON |
| Trivy | JSON | Trivy Vulnerability Report JSON |
| TruffleHog | JSON / NDJSON | TruffleHog Findings JSON |
Рекомендации по выбору формата отчета
Чтобы обеспечить максимально точный импорт, рекомендуется указывать конкретный инструмент безопасности и формировать отчет в формате, которые указан для этого инструмента в таблице выше. Надежность сочетаний инструментов и форматов проверена, поэтому подобные отчеты распознаются в TRON.ASOC с наибольшей точностью.
Импорт отчета в универсальном формате SARIF 2.1.0 без указания инструмента безопасности (либо с указанием инструмента, которого нет в списке выше) также поддерживается, однако полнота и точность распознавания данных будут зависеть от того, насколько отчет из инструмента безопасности соответствует спецификации SARIF, поскольку не все инструменты безопасности формируют SARIF-отчеты в полном и строгом соответствии со спецификацией.
Технических ограничений на размер импортируемого отчета или количество найденных уязвимостей не предусмотрено, однако при импорте очень большого объема данных возможно замедление процесса импорта. Если содержимое файла не соответствует формату, импорт завершается с ошибкой парсинга и отчет в систему не загружается.
При повторной загрузке отчета о сканировании тем же инструментом происходит следующее:
- проблемы, отсутствовавшие в ранее загруженных отчетах, не создаются — учитываются проблемы, присутствующие в загруженном отчете;
- у проблем, повторно встретившихся в новом отчете, обновляется время последнего обнаружения.
При включении параметра Частичный импорт проблемы, которые были импортированы из ранних отчетов, не перезаписываются при импорте следующих отчетов. Например, если первый отчет содержит 5 проблем, а второй — 2 новых проблемы, то при включенном параметре Частичный импорт итоговое количество найденных проблем составит 7 (а не 2, которые остались бы при отключенном параметре).
Загрузка отчета в систему
Чтобы загрузить в систему отчет о сканировании, выполненном вне системы, выполните следующие шаги:
- Перейдите в раздел Проекты → Название проекта → Слои проекта.
- Нажмите кнопку дополнительных действий (
) возле необходимой проверки.

Вы можете загружать отчеты в формате SBOM для некоторых инструментов. Подробнее о загрузке SBOM-отчетов см. в разделе SBOM-отчеты.
- Выберите вариант Импортировать результаты.
- В открывшейся форме загрузите SARIF-файл с результатами.
- Установите параметр Частичный импорт, если не требуется закрывать отсутствующие проблемы.
- Нажмите кнопку Сохранить.

Ниже представлен пример отчета в формате SARIF.
{
"version": "2.1.0",
"runs": [
{
"tool": {
"driver": {
"name": "MySecurityScanner",
"rules": [
{
"id": "SEC001",
"name": "InsecureLibraryUse",
"helpUri": "https://example.com/rules/SEC001-CVE-2023-12345",
"properties": {
"tags": ["security", "CWE-79", "injection"],
"references": [
"https://cwe.mitre.org/data/definitions/79.html",
"https://nvd.nist.gov/vuln/detail/CVE-2023-12345"
]
}
}
]
}
},
"properties": {
"category": "dependency-analysis"
},
"results": [
{
"ruleId": "SEC001",
"level": "error",
"message": {
"text": "Vulnerable library detected: lodash@4.17.11"
},
"locations": [
{
"physicalLocation": {
"artifactLocation": {
"uri": "src/utils/parser.js"
},
"region": {
"startLine": 42,
"snippet": {
"text": "const _ = require('lodash');"
}
}
}
}
],
"codeFlows": [
{
"threadFlows": [
{
"locations": [
{
"location": {
"physicalLocation": {
"artifactLocation": {
"uri": "src/utils/parser.js"
},
"region": {
"startLine": 42
}
}
}
}
]
}
]
}
],
"properties": {
"input_issue_id": "ISSUE-00123",
"security-severity": 8.5,
"info_links": [
"https://cwe.mitre.org/data/definitions/79.html",
"https://nvd.nist.gov/vuln/detail/CVE-2023-12345"
],
"library_name": "lodash",
"library_version": "4.17.11"
}
}
]
}
]
}