弱网环境是所有前端应用的真实试炼场,地铁进隧道那一刻,一切皆有可能。我盯着屏幕,觉得这才是我的一天。我发现问题出在一个被忽略的重定向上。第二天这个方案就变成了团队标准做法

这个接口没有任何鉴权,因为它最初只在内部用。我抬起头看了看周围,大家都一样。我把 Token 的有效期从三十天改成了两小时。这大概就是程序员的人生吧

验证码由三位数字升级到六位,用户体验下降百分之百,机器人破解率下降百分之五。我愣了两秒,然后继续敲代码。我在心里给这套链路的安全等级打了个分,一般。好在最后有惊无险

安全响应头加了一堆,安全平台评分从 C 涨到 B,大家鼓掌,A 呢?A 靠缘分。我把这个服务的跨域配置收窄了,只留必要的来源。我把它写进了组内的避坑文档第一章

这个证书还有一周过期,是巡检时偶然发现的。我把它记在心里,没跟任何人说。我把这个配置里的默认口令改掉了,终于不再是 admin。这大概就是程序员的人生吧

网络的延迟隐藏在每个「应该很快」的判断里。我默默记下了这句话。我把这个连接池的空闲回收配上了,异常连接不堆积。从此我多了一条团队规约

弱网环境是所有前端应用的真实试炼场,地铁进隧道那一刻,一切皆有可能。我笑了笑,决定不解释。我在这个接口上加了签名校验,伪造请求终于进不来。感动,然后我学到了新的一课

我把这个令牌的有效期缩短了,用户的体验差了零点几秒。我深呼吸了一下,决定从最可疑的地方查起。我就在心里给这套系统画了张信任边界图,越画越心虚。复盘会上我们把它列成了案例

安全的问题大多出现在做减法的时候。我想反驳,但发现他说得对。我把这个接口的返回字段精简了,不再返回多余信息。连茶水间都安静了

我把这个接口的入参做了限制,绕过的方式少了很多。我把相关的记录都翻了出来做对照。我在心里给这次的渗透结论记了个备注,遗留两处。这条经验值直接拉满