扫描依赖罐以"打电话回家"?



最近我们在应用程序中发现了一个罐子,正在打电话回家。查看详情: https://github.com/nextgenhealthcare/connect/issues/3431(

这是非常不受欢迎的行为。

在我们的一个迂腐中检测到这一点的最佳方法是什么?

附言。我可以解压缩所有罐子并扫描HttpClientUrlConnection,但是有很多方法可以连接到外部系统,最好我不想重新发明轮子。

我知道OWASP依赖关系检查,但打电话回家本身不是CVE。

如果您扫描您的罐子,并且它们确实具有网络连接,那么该怎么办?您无法重新编译源代码,因为您没有源代码。找到一些你无能为力的情况(除了找到替代方案(。

唯一的方法是防火墙您的应用程序或网络,使用容器,并对应用程序与之通信的内容进行细粒度控制。基本上以零信任运行您的罐子!

我想这真的归结为信任你的 jar 文件,这意味着反过来信任制作所有内容的人进入 jar 文件。(设计,编码,构建,分发,维护(。整个 SDLC

如果你遇到零信任的问题,你可以让JVM(安全管理器(,操作系统(SELINUX/System Cap's/Docker(或网络(防火墙/代理/IDS((或三者兼而有之(来控制和审计访问尝试。,然后根据您设置的策略拒绝或允许这些访问。

可以扫描 jar 中的网络调用,但我敢肯定,如果 jar真的想混淆它的网络行为,它将能够做到,特别是如果它可以运行 shell 命令,或动态加载 jar 本身。

您今天扫描的 jar 在下次更新时可能没有相同的行为?经典的供应链攻击。

如果你不信任你的jar,那么如果你必须建立这种信任,要么思想扫描,要么审核源代码。

有很多工具可以做到这一点。我不确定我是否可以在这里推荐我已经成功的特定产品,所以我不会。

相关内容

  • 没有找到相关文章

最新更新