防漏洞
去年冬天,防漏洞我住的防漏洞小区换了新门禁。刷卡改成扫脸,防漏洞物业说“更安全”。防漏洞结果第三天,防漏洞业主群里就有人发了一张照片:一个外卖员举着手机,防漏洞屏幕上是防漏洞一张翻拍的门禁卡照片,对着摄像头晃了两下,防漏洞门开了。防漏洞物业连夜升级系统,防漏洞加了个“活体检测”——要求眨眼。防漏洞一周后,防漏洞又有人用一段眨眼视频破了。防漏洞 这不是防漏洞段子。漏洞从来不在技术本身,防漏洞而在于人总假设“对手不会那么干”。 我干了八年渗透测试,说白了就是合法找漏洞。客户常问一句话:“我们用了某某大厂的产品,应该没问题吧?”我一般回:“你家用的是大厂锁,但钥匙藏在门口地垫下,锁再好有什么用?” 去年给一家小银行做测试。他们刚上线一套人脸识别转账,宣传“毫秒级比对,误识率低于百万分之一”。我拿了一张客户经理的朋友圈自拍,打印出来,剪成合适大小,贴在手机前置摄像头前。系统提示“请张嘴”,我拿另一部手机播放了一段张嘴视频。转账成功。全程不到两分钟。 问题出在哪?他们的活体检测只判断“有没有动作”,不判断“动作是不是来自真人”。算法工程师坐在实验室里,默认输入是摄像头直采。可攻击者不会按你的假设出牌。 更常见的漏洞在流程上。有次我去一家公司,前台登记后给了我一张访客卡。我刷开门禁,没去会议室,直接坐电梯上了机房楼层。电梯需要刷卡?我跟着一个员工进去了——他刷完卡,我伸手挡了一下门,说了句“谢谢”。没人问我是谁。机房门口有指纹锁,但旁边的消防通道门虚掩着。我推门进去,拍了三张机柜照片,出来时保安还在看手机。 事后报告里我写:物理安全形同虚设。客户不服气:“我们有监控啊。”我调出监控录像,画面里我戴着口罩和帽子,背对摄像头,全程没露脸。他们沉默了。 防漏洞这件事,最怕“差不多就行”。写代码的觉得输入框加个长度限制就够了,运维的觉得防火墙开了端口就安全了,行政的觉得贴了“禁止尾随”的牌子就没人尾随了。每个环节都留一道缝,连起来就是一扇门。 我自己的习惯:出门前检查三样东西——手机、钥匙、门有没有反锁。听起来像强迫症。但去年我们小区有户人家被盗,警察调监控发现,小偷挨个拉车门,拉到第三辆开了——车主用遥控锁车,但有个门没关严,信号被干扰了。车主说:“我明明听到锁车声了。”对,你听到了,但车没锁上。 漏洞利用的就是这种“明明”。明明设了密码,明明装了摄像头,明明培训过。可攻击者不跟你讲“明明”,他只找那个“但是”。 所以我现在给建议,不说“加强安全意识”这种废话。我说具体的:门禁卡别放一起,分开装;快递单上的电话用记号笔涂掉再扔;手机里别存身份证照片;公司电脑离开座位按Win+L,别嫌麻烦。这些都是小事,但漏洞就是小事堆出来的。 上个月那个眨眼视频被破的新闻底下,有人评论:“道高一尺魔高一丈。”我觉得不对。道和魔从来不是交替领先,是道总在假设魔不会来,而魔一直在找道打盹的时候。 防漏洞,说到底就是别打盹。