常见web攻击及应对办法简述
1.sql注入
通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令
解决方案:
不要使用拼接SQL,参数化查询;
对sql进行转义;
数据库用户权限降低
2.CSRF
CSRF及跨站请求伪造,就是用户在非自己本意的情况下,页面访问了非本站点的请求
如A用户登录了A网站,然后打开B网站,B网站利用A网站存储在cookie的sessionId向服务器发请求,比如转账;
解决方案:
1.利用请求头中的referer检验,referer记录了请求来自哪个页面,如https://www.baidu.com/index.jsp,但是这个依赖于浏览器,用户可能关闭referer字段;
2.请求中加入token字段,后台检验token,判断是否和之前发送出去的一致,但是要求开发者代码和逻辑不能有漏洞
3.xml注入
4.代码注入
5.文件上传下载
如文件名带有目录跳转符(如../或..\)改变文件下载的路径,导致可任意下载服务器中的文件(如源代码、配置文件等敏感信息文件)
解决方案:校验文件名等
6.业务资源滥用
服务器后台提供了短信接口、电话接口、Email验证服务接口,由于这些接口未对使用者进行验证及请求次数限制,攻击者无限制的请求
7.DDOS分布式拒绝服务攻击
攻击指借助于客户/服务器技术,将多个计算机联合起来作为攻击平台,对一个或多个目标发动DDoS攻击,从而成倍地提高拒绝服务攻击的威力