Rya*_*yer 9 validation url server-side
当您使用GET请求通过您的站点传递变量时,您是否在使用它们之前验证它们(正则表达式,过滤器等)?
假设您有网址http://www.example.com/i=45&p=custform.你知道"i"将永远是一个整数,"p"将始终只包含字母和/或数字.是否值得花时间确保没有人试图操纵值然后重新提交页面?
Alf*_*Alf 41
是.毫无疑问.绝不相信用户输入.
为了改善用户体验,可以在客户端上验证输入字段(以及恕我直言).这可以抢先到服务器的往返,只会导致相同的表单和错误消息.
但是,必须始终输入在服务器端验证因为用户只需在GET URL中手动更改输入数据或发送精心设计的POST数据.
在最糟糕的情况下,最终可能会出现SQL注入,甚至更糟糕的是XSS漏洞.
大多数框架已经有一些内置的方法来清理输入,但即使没有这个,通常很容易使用常规异常和查找表的组合来清理输入.
| 归档时间: |
|
| 查看次数: |
783 次 |
| 最近记录: |