web安全-XSS,DDOS,XSRF攻击

XSS攻击?

是指跨站脚本攻击,比如用户A发了一个帖子,输入了一行js脚本,那么用户B在浏览这个帖子内容时,就会执行A输入的js。
防范的方法是,对用户输入进行转义。jstl标签就支持这个,一般的模板语言也都支持。

CSRF攻击?

是指跨站信息伪造。比如用户A浏览了当前网站后,未退出账号。继续登陆钓鱼网站B,然后b使用ajax请求A网站,此时就会携带A网站的 cookie,就可以利用用户A的身份做一些事情。
防范的方法有,通过refer判断来源是否是自家的网站,不是的话拦截;使用token令牌判断,没有携带token的不允许;使用httponly属性,禁止ajax、applet携带这个cookie。

SQL注入?

指把sql命令伪装成正常的http请求参数,传到服务器端,最终执行恶意的sql命令,比如删库,删表,获取权限,查询重要数据等。
防范的方式,使用preparedStatement,通过statement对象处理sql语句时,会把sql语句发给DBMS,DBMS编译后在执行,这样sql语义就不会被影响。

同时对密码这种数据存单向hash。
后台异常也不能暴漏给用户,而是返回异常页面。

文件上传漏洞?

用户上传非法脚本,或者把服务器当作仓库等。

防止方式,限制用户上传的文件的大小,同时根据文件前几个字节判断文件的真实类型,并且对保存的文件重命名,防止用户推断文件路径。

DDOS?

分布式拒绝服务攻击。
DOS指利用合理的客户端请求占用过多的服务器资源,传统的DOS是单一的,现代服务器性能提升了,所以作用不大。
新型的DDOS是指多台机器同时访问某个网站,以达到瘫痪服务器的目的。
常见方式有 SYN FLOOD、DNS Query Flood,CC。

SYN FLOOD利用TCP三次握手的规则,给服务器发送syn报文,让服务器不断返回syn-ack。多台机器同时不断的操作,导致服务器的tcp接收队列被占满,正常的用户请求被拒绝。
防止方式:设置syn最大队列长度,设置syn-ack最大发送次数。

DNS Query Flood使用udp协议向被攻击的服务器发送海量的域名解析请求,并且伪造端口和客户端IP,防止查询被ACL过滤,造成DNS域名解析服务器超时。
防范方式:
丢弃syn报文,导致UDP层面的 请求重发。
或者返回特殊响应,强制客户端发送TCP请求。

CC攻击,是指利用匿名的HTTP代理,请求大批量的数据或者DB查询,从而达到拖垮服务器的目的。
防止方式:使用缓存;对请求频率异常的Ip地址判断(发送一个页面,带有js的),确认后加入黑名单。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值