全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 724|回复: 9

一个最简单的PHP,如何有效的防止注入和xss

[复制链接]
发表于 2021-3-11 13:06:04 | 显示全部楼层 |阅读模式
本帖最后由 shop 于 2021-3-11 13:08 编辑

php一知半解,代码都是摘自百度,请教php大佬,如何有效的防止注入和xss

73_W@GD]MKS@C5IZ}VGSMZT.png (30.64 KB, 下载次数: 0)
发表于 2021-3-11 13:41:19 | 显示全部楼层
这是两个分开的事

防注入 最基本的是不要拼凑 sql 字符串,可以选择 pdo 预处理,也可以选择 orm 框架来操作数据库,或者超轻量级的 medoo

防 xss 不应该在入数据库之前传,进入数据库的应该是原始数据,因为后面可能会对原数据编辑修改 或其它计算,应该从数据库拿出来之后,在展示之前(echo 到 html 的时候)做相应的处理
 楼主| 发表于 2021-3-11 13:07:08 | 显示全部楼层
论坛不让传代码,只能截图了
发表于 2021-3-11 13:07:56 | 显示全部楼层
get来的数据先过滤一遍
发表于 2021-3-11 13:09:17 | 显示全部楼层
最简单办法把username正则一遍不允许特殊字符过
发表于 2021-3-11 13:09:20 | 显示全部楼层
用了预处理了,问题不大。
发表于 2021-3-11 13:11:57 | 显示全部楼层
pdo预处理 已经可以了。 XSS需要把 单双引号与尖括号实体化
 楼主| 发表于 2021-3-11 13:17:23 | 显示全部楼层
额,用了pdo预处理,注入就无效了,可以这样理解么?

楼上说的实体化,是要把get的参数这样处理么,有具体代码么,百度了下,看不太懂 = =
发表于 2021-3-11 13:26:45 | 显示全部楼层
用了预处理加参数绑定就免疫sql注入了
防xss的话用htmlspecialchars函数过一遍传入内容
 楼主| 发表于 2021-3-11 13:36:04 | 显示全部楼层
明白了,多谢~~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2024-4-16 17:22 , Processed in 0.067923 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表