为了账号安全,请及时绑定邮箱和手机立即绑定

php表单安全过滤究竟要怎么做?

php表单安全过滤究竟要怎么做?

鸿蒙传说 2018-10-04 16:10:18
网上好多方法,看来看去也不知道该用什么。具体需要过滤什么才能做到安全?用什么函数?用什么函数或方法过滤不和谐词语最合适?最好给出一整套代码。片段看得太多,已经乱了。。。
查看完整描述

2 回答

?
慕的地8271018

TA贡献1796条经验 获得超4个赞

1.防止表单重复提交,1.用表单令牌可以解决,2.点击提交按钮后,立即禁用button按钮

2.防止表单提交多余的数据, PHP 接收POST的时候,需要过滤,哪些是表单的,哪些的用户构造的

3.防止SQL注入,进行类型强制转换和采用PDO绑定参数方式操作数据库(参见thinkphp数据库类)

4.防止XSS攻击,需要过滤掉 <script> <iframe>等危险的HTML代码(参见thinkphp的 I 函数)

5.防止csrf攻击,每次进行增删查改之前,验证一个token 即可(参见Yii2的写法)

你要问代码的话, 问问题千万不要直接要代码,只能你贴出你的代码,让我们帮你排错,拒绝伸手党,肯定是没有的,这都是结合各个优秀的框架和开源项目积累总结的
代码的话,可能要写好久好久


查看完整回答
反对 回复 2018-10-10
?
largeQ

TA贡献2039条经验 获得超7个赞

首先在客户端通过JS进行初步数据过来是有效的手段,但是请注意,一切在客户端进行的验证都是非安全的,都是可以绕过的

然后是在代码层进行数据过滤,例如php有些函数可以用来进行一些简单的过滤操作:
strip_tags 可以去掉文本内容中的所有html标签
htmlspecialchars 可以对文本内容中的html标签进行转义
addslashes 可以对内容中的特殊符号进行转义

这些函数可以进行初步过滤,然后具体的内容就需要自己编写相应的规则了,例如清除js代码或者其他的敏感词汇,需要自己编写对应的正则进行替换

最后则是在执行sql时进行一些安全操作,如pdo的预处理等


查看完整回答
反对 回复 2018-10-10
  • 2 回答
  • 0 关注
  • 1209 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信