Dataflow analysis находит candidate paths от недоверенных sources к чувствительным sinks. Он помогает профессиональному security reviewer расставить приоритеты проверки кода. Exploitability подтверждается отдельным анализом уязвимости и runtime-контекстом.
Broad audit проекта
Начните с read-only deep-security audit настроенного проекта:
python -m src.cli audit --profile deep_security --skip-persistence
Для долговечного артефакта добавьте --format json --output <report.json>. До интерпретации
проверьте project и CPG freshness. --skip-persistence отключает audit/dashboard projections,
но не уменьшает analysis scope.
Targeted taint path
В разрешённой security role/full MCP profile используйте
codegraph_security_taint_analysis_run для именованного метода и одной пары source/sink.
Допустимые source categories: user_input, file_read, network, env. Sink categories:
sql, command, file_write, xss, buffer.
Agent-facing call использует текущий project context. Не передавайте raw storage path. Если tool отсутствует в активном profile, запросите правильную role/profile, не подставляйте retired name.
Проверка finding
- Подтвердите, что source действительно контролируется атакующим в этом execution context.
- Пройдите каждый call и assignment в найденном path.
- Проверьте sanitization, validation, encoding, authorization и переходы trust boundary.
- Убедитесь, что sink достижим с указанной формой данных.
- Зафиксируйте code revision, categories, evidence refs и reviewer verdict.
Отсутствие path означает, что он не найден в текущем графе, лимитах и language support. Оставшиеся источники, приёмники и границы среды исполнения проверяются в AppSec-анализе.
Источники контракта
src/mcp/tools/security_suite/security.py— targeted MCP tool и category contract;src/analysis/dataflow/taint/propagator.py— taint propagation;src/analysis/dataflow/taint/models.py— path model;src/cli/analysis_commands/audit_commands.py— broad audit integration.