项目检查

四百条发现,哪些值得您花一天时间?

SENTINEL AI 的另一半读取的不是网络,而是项目:源代码、依赖库、遗留的密码、打包方式和已发布的网站。然后判断哪些发现真正需要人来处理。

检查内容

问题藏身的五个地方

代码

源代码

项目代码中的危险写法和常见错误。

依赖

依赖库

来自开放 OSV 数据库、涵盖 PyPI 和 npm 的约 24 万条已公开漏洞。本地文件仅 4 MB,离线检查。每个结果旁都显示数据库的时效。

机密

密码与密钥

误入代码或配置中的凭据。

打包

构建与部署

项目如何构建和运行。

网站

已发布的网站

只有在指定负责人声明其有权测试该地址后才会进行,该声明写入带签名的日志。只发送普通 GET 请求:不提交、不注入、不暴力破解。

来源可以是服务器上的文件夹、压缩包、代码仓库地址或网站地址。

关键所在

检查之上的那一层

任何工具都能运行检查。难的是判断四百条发现中哪些值得花一天时间,并说清原因。为此我们使用与攻击检测相同的算法。

是证据,不是判决

每项检查给出的都是带权重的证据,而不是定论。

项目的上下文

这是测试代码,这个值是“changeme”,这个包从未被导入,这个库只在开发时安装。

一个原因,一项任务

关于同一个过期库的四十条警告,只是一个决定,而不是四十个。

面向四类读者的解释

是什么、意味着什么、该怎么做,支持六种语言。

同一份带签名的日志

包括是谁发起了检查。

报告

可以直接发送的报告

一个文件:发现了什么、意味着什么、需要修复什么,按重要性排序。可在任何浏览器中打开,可保存为 PDF,发给团队、承包商或管理层。

顺序

重要的在前

任务按评分排序,而不是按警告数量。

清晰

修复什么

每项任务都有解释和具体措施。

诚实

数据库的时效

来自四个月前数据库的结论,就是四个月前的结论,报告会如实写明。

坦白地说

检查做不到的事

  • 发现的原始问题不比专业扫描器多

    Semgrep、CodeQL、Trivy 或 ZAP 同样能找出原始问题。价值在于判断哪些发现重要。

  • 看不到逻辑错误

    错误的权限,以及系统各部分衔接中的缺陷,任何扫描器都看不到,仍需要人来审视。

  • 结果干净不等于保证

    它只说明这些检查没有发现问题,而不是项目就安全了。控制台会在每个结果旁注明这一点。

  • 网站检查只读不写

    它发现的是从外部可见的问题,而不是需要发起攻击才能证实的问题。

试点

用您自己的数据来验证

试点部署在您网络内部的一台服务器上。您将看到平台在您的环境中发现了什么,以及有多少告警不再打扰您的分析师。

申请试点 →