PHP面试宝典
安全方面
什么是SQL注入攻击
- SQL注入攻击指的是通过在http请求中注入sql,使得服务器端在处理sql命令的时候一起被执行。
比如:登录操作 用户名是 mumaxiansheng 密码输入 '' or '1'='1' 这样执行的sql语句就是
```
SELECT * from user
WHERE username
='mumaxiansheng' AND password='' or '1'='1'
```
这样不管输入什么密码都可以查询出来
如何防护
- 限制提交的数据字符串长度
- 验证数据的有效性
- 过滤参数中的特殊字符。比如单引号、双引号。
- 不要去拼接sql
Xss攻击(cross site script 跨站脚本)
恶意将代码植入到提供给其它用户使用的页面中。比如在一些博客中加入一些广告链接诱导用户点击。
如何防护
防xss方法其实和防注入很相似,都是一些过滤、代替、实体化等方法 过滤或移除特殊的Html标签:例如:< 、>、<,、> ‘、”、