码迷,mamicode.com
首页 > 编程语言 > 详细

java相关漏洞学习

时间:2017-10-16 02:14:23      阅读:314      评论:0      收藏:0      [点我收藏+]

标签:覆盖   总结   ken   cti   客户端   授权   客户   过滤器   验证   

  本文来自对看雪论坛一篇文章的学习的记录:https://bbs.pediy.com/thread-210876.htm

一.认证的测试

  目前很多页面在注册前采用ajax,jquery无刷新判断用户名是否注册,引入账户名枚举问题

客户端ajax代码

  function validatorloginName(){

  var loginName=document.getElementById("uname").value;

  if(loginName==""){

  alert("用户名不能为空");

  return;

}

  $.ajax({

  type:"POST",

  url:"ValidateName",

  data:"loginName="+loginName;

  success:function(data){

  if(data=="true"){

  alert("恭喜您,用户名没有被使用");

}else{

  alert("抱歉!用户名存在");

}

}

});

}

修复方法:添加验证码,一次性token

二.非授权访问

  产生原因:

需要登录才能访问的页面,缺乏对用户登录会话,token进行验证有效性判断,导致非合法用户,token可以访问需要登录才能访问的页面

检测方法:

借助Dirbuster进行目录猜解,点击测试需要授权访问页面是否能在非授权情况下打开

修复方法:

在某个页面文件包含一个用户验证会话/token是否有效的文件,或者新建过滤器

三.关于验证码容易出现的问题

1.验证码保存在cookie中,可以直接查看到

2,验证码在验证失败后没有刷新验证码,导致暴力破解

3.验证码噪点或者扭曲度不高,导致可以用工具识别

四.手机otp认证绕过

存在风险:

  1,手机otp动态码失效时间设计有问题,失效时间设置过长和动态码位数过少会存在爆破风险

  2.动态码发送之后,在网页源代码中显示

  3.手机otp验证结果在前端认证,修改返回状态码,可绕过

  4.是否可以抓包修改手机号,导致发送到攻击者手机

五,会话固定漏洞:

  web应用程序没有正确执行会话管理,例如用户登录前的会话cookie和登录后的是一样的,另外是当用户点击退出,session不会失效

  测试方法:观察登录前,登录后,退出状态下cookie,sessionId是否变化

修复方法:一旦用户登录成功,马上invalidate用户的会话

   文章后面的就不总结了,虽然有很多知识点都讲的不是特别清楚,不过,总体来说,覆盖的知识点还是挺全的,还有的话就是对于java语言特有的安全问题,比如ognl,容器配置的问题,都没有讲到,比较遗憾

  

java相关漏洞学习

标签:覆盖   总结   ken   cti   客户端   授权   客户   过滤器   验证   

原文地址:http://www.cnblogs.com/cangqing/p/7675186.html

(0)
(2)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!