网络安全深度解析:21种常见网站漏洞及防御指南
一、高危漏洞TOP 10
1. SQL注入(SQLi)
原理:通过构造恶意SQL语句突破系统过滤机制
典型场景:
- 联合查询注入:' union select 1,version(),3--+
- 布尔盲注:and (select substr(user(),1,1)='r')
- 时间盲注:;if(now()=sysdate(),sleep(5),0)/'
防御方案:
- 严格参数化查询(PreparedStatement)
- 使用ORM框架(如Hibernate)
- 白名单过滤特殊字符(<>'"&%等)
2. XSS跨站脚本攻击
类型:
- 反射型:http://xxx.com?name=<script>alert(1)</script>
- 存储型:评论区植入恶意脚本
- DOM型:eval(location.hash.substr(1))
防御方案:
- 输入输出编码(HTML/URL/JavaScript)
- 设置Content-Security-Policy头
- 使用DOMPurify过滤库
3. CSRF跨站请求伪造
攻击流程:
<img src="http://bank.com/transfer?to=hacker&amount=1000000">
防御方案:
- 关键操作使用POST请求
- 添加Anti-CSRF Token
- SameSite Cookie策略
4. 文件上传漏洞
常见绕过手法:
- 双写后缀:shell.pphphp
- 00截断:shell.php%00.jpg
- MIME类型伪造:Content-T