在多数 Web 应用的功能设计中,“处理输入”都是不可避免的一环。
但真正值得警惕的,并不是输入本身,而是系统在设计阶段对输入所做出的默认假设。
很多安全问题并不是因为代码写错了,而是因为系统在一开始就过度信任了输入来源。
一、输入并不是问题,信任才是问题
在开发过程中,开发者往往会在不自觉中建立一些默认认知:
-
输入来自“正常用户”
-
数据格式大致符合预期
-
异常情况只是偶发
这些假设在功能验证阶段看似合理,但一旦系统暴露在更复杂的运行环境中,这些前提条件就会逐渐失效。
当系统缺乏足够的约束机制时,输入本身就可能成为系统行为的决定因素,而不再只是被动的数据载体。
订阅专栏 解锁全文
116

被折叠的 条评论
为什么被折叠?



