当前位置:首页 > 科研成果库

别只盯着防火墙:被低估的软件供应链安全,才是企业的命门

2026-10-10 03:54:50小研科研成果库9
去年Log4j漏洞爆出来那会,我亲眼见一家上市互联网公司的安全总监,在会议室蹲了整整三天三夜没回家。 全公司几百个项目,谁也说不清楚到底多少个服务引了这个烂大街的日志包。 一边要扫漏洞打补丁,一边要应对监管问询,头发一把一把掉。 这就是典型的软件供应链安全出事——你没惹别人,别人把坑埋在了对你用的东西里。

什么是软件供应链?说白了就是你用的每一行代码,都可能带坑

现在还有人从零开始写一整套软件吗?基本没有了。做电商要引支付SDK,做前端要拉开源组件,做后端要找现成的算法库,哪怕是创业小团队,一个项目里九成代码都是第三方来的,自己写的业务逻辑可能才不到一成。 说白了,现在做软件就是拼积木。你拿来拼的每一块积木,都有可能是被人动过手脚的。 可能是开源社区的某个不知名维护者偷偷加了后门,可能是第三方服务商的开发流程出了纰漏,甚至可能是你的内部同事把带漏洞的共享组件传到了公司仓库。 所有这些环节连起来,就是软件供应链。 企业软件供应链风险传导路径图企业软件供应链风险传导路径图 说实话,我之前遇到过一个做社区团购的创业团队,技术负责人拍着大腿跟我吐槽。他们为了赶618大促,在网上找了个免费的万人砍价活动组件,直接就上线了。半年之后对账,才发现每天有上百个用户的微信授权信息被偷偷转到了一个陌生的境外服务器。组件早就下架了,作者都找不到。找谁说理去?

现在软件供应链安全的坑,到底坏在哪儿?

放在十年前,攻击者要进你系统,得天天扫端口撞防火墙,挖你网站的0day漏洞,成本高不说,还不一定能成。 现在呢?人家直接给上游投毒,你自己把带毒的代码拉进来运行,等于给坏人开了后门,防火墙根本防不住。 更恶心的是什么?是依赖传递。你自己项目直接引入的第三方依赖可能才十几个,但是这十几个每个又依赖了几十个,几十个再往下传,一个项目牵出上千个依赖是常事儿。 你根本不可能一行一行看完上千个依赖的所有代码。哪一层出问题,你连根都摸不到。 开源软件依赖树漏洞层级示意图开源软件依赖树漏洞层级示意图 之前NPM上出过好几次抢注废弃包投毒的事儿,原来的作者不维护了,攻击者注册个一模一样名字的包,故意写错点东西,把偷密钥的代码藏进去,好多老项目没人更新依赖,稀里糊涂就中招了。 还有不少企业觉得,我用的都是大公司的开源项目,肯定安全吧?错了。大公司的开源项目也会出问题,也会被人挖漏洞投毒,之前太阳风事件不就是么?知名的IT管理软件,上游被投毒,全球多少大公司政府机构中招,这个瓜大家应该都还记得吧。 好多中小老板还在说,我们就是个小公司,没多少钱,攻击者不会盯我们的。太天真了。现在攻击者都是自动化扫描批量抓肉鸡,你有漏洞就直接拿,拿去挖矿发垃圾邮件,不管你大小,都能赚钱。

别被割韭菜,企业做软件供应链安全先抓这几件事

别被割韭菜,企业做软件供应链安全先抓这几件事别被割韭菜,企业做软件供应链安全先抓这几件事 现在随便一个安全展,到处都是喊着"软件供应链安全"卖平台的,一张嘴就是几十万上百万,很多中小公司根本吃不消,也不需要。 其实不用搞那么复杂,先把基础的几件事做好,就能挡住八成以上的风险。 第一件事,先把你所有项目的依赖理清楚,做软件成分分析。别糊里糊涂,项目里到底用了哪些第三方代码,哪个版本,有没有已知漏洞,先搞清楚。现在免费工具多的是,Snyk、Dependabot都能自动扫,发现高危漏洞直接提醒你升级,花不了多少钱,甚至免费就能用。先把已知的坑填上,比啥都强。 第二件事,能少用第三方依赖就少用。我见过太多前端开发,为了做个日期转换都要引一个几KB的包,就为了少写三行代码,平白多一个风险点,真的值得吗?养成习惯,能用原生实现的就别引包,引包之前先看看这个包最近还维护吗,星多不多,有没有人报过漏洞,别什么乱七八糟的都往项目里塞。 第三件事,别放过内部供应链。很多公司只盯着外部开源,忘了自己内部团队共享的组件库。内部组件很多都是业务线赶项目临时写的,根本没做过安全测试,各个团队传着用,出了问题一样炸锅。内部组件也要按规矩做安全扫描,这个不能省。 不过话说回来,软件供应链安全本来就是整个生态的事儿,不是靠企业自己就能搞定的。现在行业里推的SLSA供应链安全等级,要求开发者对每一个发布的版本做签名做验证,让你能溯源能验真,这个方向肯定是对的。以后说不定我们用的每一个软件包,都像超市卖的牛奶一样,扫个码就能知道哪来的,经过了什么环节,出了问题直接召回。这一天早点来就好了。 真的,现在网络安全的战场早就变了。以前是坏人在外面,你砌个高墙就能防住。现在坏人藏在你用来砌墙的砖头里。你不提前查清楚每一块砖头,等墙塌了再哭,晚了。