一、Xss 跨站脚本攻击
通过表单注入js代码,当数据被执行的时候,跨域获取网站的数据
防范:使用htmlspecialchars()将特殊字符转换为 HTML 实体
二、Csrf 跨站请求伪造
通过模拟表单上传用户信息 伪造用户 进行恶意提交
防范:生成表单的时候给表单一个token,后台接受到数据的时候验证token
三、Sql 注入攻击
把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。
例如正常输入1是从数据库查询ID为1的文章,而在后面加上or 1 = 1,因为1 = 1 所以这条sql永远是成功的。
防范:addslashes()转义特殊字符、mysql预处理先把sql结构发送过去,后发送数据
四、DOS、DDOS攻击
模拟正常的用户去请求,但是不做任何操作
防范:1、同一时间同个ip访问次数限制(作用不大,攻击者可以使用肉鸡,不断的变换ip)
2、如果网站不需要国外进行访问,可以禁止国外ip访问。
3、提高服务器的性能
五、上传文件攻击
通过上传头像或者其它上传接口传脚本文件,从而执行脚本代码获取数据。
上传的php文件中,存在eval方法 将字符串 code
作为PHP代码执行
防范:严格检查文件后缀名和mime类型(一般防范不了恶意的攻击)
文件上传到第三方或其他服务器
禁掉上传目录的文件执行权限
nginx 配置特定的目录不执行php代码