|
去年十一月,逆向渗透我在一个安全沙龙上碰到老周。逆向渗透他端着杯凉透的逆向渗透咖啡,跟我说了句让我愣住的逆向渗透话:“我现在挖漏洞,不扫端口了,逆向渗透改刷招聘网站。逆向渗透” 老周干了十二年渗透测试。逆向渗透以前他背着一台ThinkPad,逆向渗透Kali跑满,逆向渗透Nmap扫段,逆向渗透Burp抓包,逆向渗透一套流程行云流水。逆向渗透现在他打开的逆向渗透是BOSS直聘和领英。 “你知道一家公司最好的逆向渗透资产测绘工具是什么吗?”他问我。 我摇头。逆向渗透 “是他们自己发的招聘JD。” JD里藏着什么 一家中型电商公司招“资深Java后端”,JD里写了这么几条:熟悉Spring Cloud微服务架构、有RabbitMQ消息队列实战经验、了解Redis集群部署、能独立完成MySQL分库分表方案。 普通人看到的是岗位要求。老周看到的是——技术栈清单。Spring Cloud意味着可能用了Eureka或Nacos做服务发现,RabbitMQ说明有异步通信层,Redis集群大概率没设密码或者用了弱口令,MySQL分库分表中间件逃不出ShardingSphere和MyCat两种。 他不用发一个数据包,就能画出这家公司的网络拓扑草图。 更妙的是“加分项”那一栏。“有Docker/K8s容器化经验者优先”——好,他们正在或已经上了容器编排。“熟悉ELK日志分析平台”——日志系统对外暴露的概率不低。“了解OAuth2.0认证协议”——认证授权模块的实现方式基本锁定。 老周说,这比扫端口精准多了。Nmap扫出来的是一堆开放端口,你还得猜哪个是Web哪个是数据库。JD直接告诉你答案。 人也是入口 招聘信息还有个副产品:人名。 “简历投递至:hr@company.com,抄送技术总监王某某。”一个邮箱格式,一个真实姓名。老周拿着这个名字去GitHub搜,去掘金搜,去CSDN搜。十有八九能翻出对方的技术博客、开源项目、甚至个人微信号。 有次他找到一个技术负责人的GitHub仓库,里面有个半年前的commit,不小心把测试环境的数据库连接串传上去了。host、port、username、password,整整齐齐。那个仓库是public的。 “你说这算社工还是算渗透?”老周笑着问我。 我没接话。因为我想起来,我自己也干过类似的事——把内网地址写进了博客的代码片段里。 防守方的盲区 大多数公司的安全团队盯着防火墙、WAF、IDS。他们做渗透测试,做漏洞扫描,做代码审计。没人管HR发出去的JD里写了什么。 市场部在朋友圈发团建照片,背景里白板上写着“Q4冲刺目标:日活破50万”。技术负责人在知乎回答“如何从零搭建微服务”,把架构图贴得清清楚楚。运维在掘金吐槽“K8s集群又崩了”,评论区有人问用的什么版本,他回了。 这些碎片拼在一起,比任何扫描器都管用。 老周管这叫“逆向渗透”——不从技术漏洞入手,从人的信息暴露入手。先知道你有什么,再去找你哪里弱。顺序反了,效率反而高了。 怎么防 这事难防。你总不能不让HR发招聘。但有些细节可以改:JD里别写具体版本号,别列全套技术栈,加分项别太具体。技术分享可以讲思路,别贴生产环境的配置。团建照片发之前看一眼背景。 最关键的——别把测试环境的凭证传到公开仓库。这话说了八百遍了,每年还是能扫出来几千个。 老周现在接项目,第一步不是要IP段,是要对方近半年的招聘JD和技术博客链接。他说这比什么资产测绘平台都好使。 我问他,那你自己的信息呢? 他愣了一下,掏出手机翻了翻自己的领英。上面写着:精通内网渗透、熟悉域环境攻防、有CISP证书。 “得,我也该改改了。”他把手机揣回兜里,咖啡一口没喝。 |