黄石一位做平台运营的老板问:接口对外开放,怕被人刷、被人偷数据,怎么防?我的答案是:三板斧:防重放、防越权、防泄密。三件套落位,接口才敢正式开张迎客。少一斧,就留一道缝,缝都是被人找出来的。黄石做线上生意的,这三斧都得会。
防重放:不许旧录像重播
黑客把你的合法请求录下来原样重发一百遍,库存刷穿,话费刷光。请求都带时间戳和随机数,超时限的一律不认账。好比检票口打孔,一张票只许用一回。黄石有家做票务的客户,上了防重放之后。黄牛刷单的路子当场封死,当月账目就对平了。
防越权:核明白是谁的单
用户A把订单号改成B的。接口来者不拒,这就是水平越权,换个单号便翻墙进去。每个请求都要核对归属:数据是不是调用者自己的。校验逻辑搁在服务端,前端递来的身份别轻信。越权是数据泄露里最常见的一扇暗门,也是堵起来最便宜的一扇。
防泄密:路上、家里都上锁
传输走https加密,防止半路被截。敏感字段落库先加密,日志中的手机号、身份证一律脱敏。泄露常出在日志、导出这种不显眼的地方。测试环境用假数据,别拿真实客户资料练手,测试数据造一套就行。
监控和限流一并配上
调用频率设好上限,异常流量自动告警,接口健康度天天有数,出事有据可查。轻量模板建站500元起,含1年免费维护并交付源码,接口安全基线全都配齐。API 接口开发我们来做,三件套是交付标准,不做选配项。
企业主常挂心头的问题
接口安全要花很多钱不?
三板斧全是开发规范,成本花在设计里而非采购里,缺的只是意识。
怎么晓得接口被刷了?
盯调用量曲线,猛增几倍就是信号,监控告警会自动叫人。
小公司会被盯上吗?
会,扫描工具无差别地扫;接口挂在公网就得设防,越没人守越先中招。
安全检查多久做一次?
接口一变就必须查,平时每季度巡检一轮,变更即查最关键。
总结
末了验斧:黄石的企业做接口,三斧落齐,再上监控限流。防重放、防越权、防泄密。安全靠规范不靠设备,写进开发标准才管用。接口情况报给黄石信服无限,哪一斧缺着一测便知。测完当场补上,给你清单。