SQL Injection as a Feature
10 months ago
- #software-development
- #sql-injection
- #tech-horror-story
- 文章描述了一个设计糟糕的应用程序如何从简单的报表页面演变成SQL注入即服务(SIAAS)平台的十年历程。
- 初始提交显示这是个带日期范围和关键词筛选的标准报表页面,由于持续的功能需求,逐渐演变成原始SQL查询文本框。
- 开发者添加了下拉式报表类型选择,导致出现数十个命名混乱的报表,最终转向数据库驱动的报表命名方式。
- 有人为超级管理员创建了编写自定义SQL查询的秘密页面,这个页面后来完全取代了原始报表功能。
- 平台添加了阻止INSERT、UPDATE和CREATE命令的安全措施,并引入查询超时机制来管理慢查询。
- 作者接手该工具后,发现了表连接中的关键缺陷,修复了DELETE命令问题,却在某天突然被公司保安护送离职。