Jsp万能密码漏洞修复例子

如果网站出现这种“万能密码”漏洞该怎么办呢

'or'='or' 漏洞修复 方法有很多在这里介绍两种,咱们使用第2种

方法1: Replace过滤字符

解决方法:查找login.asp下的

 代码如下 复制代码

username=request.Form("name")

pass=request.Form("pass")

修改为:

 代码如下 复制代码

username=Replace(request.Form("name"), "'", "''")

pass=Replace(request.Form("pass"), "'", "''")

语法是屏蔽'和''字符来达到效果.

下面我把一个有万能密码的bug程序进行修改

 代码如下 复制代码

public String login()
{
  String str1 = (String)getParamenterValue("username");
  String str2 = (String)getParamenterValue("password");
  List localList = this.entityManager.findByHQL("from AdminUser where username='" + str1 + "' and password='" + str2 + "'", false, -1, -1);
  if ((localList != null) && (localList.size() > 0))
  {
    HttpSession localHttpSession = getHttpSession();
    localHttpSession.setAttribute("adminuser", localList.get(0));
    setToJsp("/managers/index.jsp");
    return "toJsp";
  }
  setToJsp("/adminlogin.jsp");
  return "toJsp";
}

修复之后的代码:

 代码如下 复制代码

public String login()
  {
    String str1 = (String)getParamenterValue("username");
    String str2 = (String)getParamenterValue("password");
    List localList = this.entityManager.findByHQL("from AdminUser where username='" + str1 + "' and password='" + str2 + "'", false, -1, -1);
    if ((localList != null) && (localList.size() == 1))
    {
      //if size > 1, don't login.
      AdminUser loginUser = (AdminUser)localList.get(0);
      if(loginUser.getUsername().equals(str1) && loginUser.getPassword().equals(str2)){
          HttpSession localHttpSession = getHttpSession();
          localHttpSession.setAttribute("adminuser", localList.get(0));
          setToJsp("/managers/index.jsp");
      }else{
          setToJsp("/adminlogin.jsp");
      }
      return "toJsp";
    }
    setToJsp("/adminlogin.jsp");
    return "toJsp";
  }

时间: 2024-10-31 10:55:47

Jsp万能密码漏洞修复例子的相关文章

WordPress曝重大密码漏洞及修复方法

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 wordpress是世界公认的最强大最流行的博客程序.由于他完全免费开源,适合二次开发,它众多的主题和插件,当今有无数的wordpress博主在使用他,所以一个致命的漏洞将会给千千万万的网站用户带来损失. Wordpress官方此前在WordPress trac上发布了一个修复WordPress 2.8.x漏洞的信息Changeset 117

绿盟科技网络安全威胁周报2017.18 ​WordPress 远程代码执行/非授权重置密码漏洞CVE-2017-8295

绿盟科技发布了本周安全通告,周报编号NSFOCUS-17-18,绿盟科技漏洞库本周新增36条,其中高危5条.本次周报建议大家关注 WordPress 远程代码执行/非授权重置密码漏洞 . CVE-2016-10033是之前phpmailer在不同场景下的新利用,漏洞可使未经身份验证的远程攻击者在Web服务器用户上下文中执行任意代码,远程控制目标web应用.CVE-2017-8295存在于WordPress 4.7.4之前版本,远程攻击者通过构造密码重置请求,并伪造Host HTTP标识头,可以获

PHPCMS2008广告模板SQL注入漏洞修复_php实例

00 漏洞描述 PHPCMS2008由于广告模块取referer不严,导致一处sql注入漏洞.可以得到管理员用户名与密码,攻击者登录后台后可能会获取webshell,对服务器进行进一步的渗透. 01 漏洞分析 漏洞产生的位置: /ads/include/ads_place.class.php的show方法中. function show($placeid) ... if($adses[0]['option']) { foreach($adses as $ads) { $contents[] =

360发布安全报告:30%路由器受“弱密码”漏洞影响

电脑不断的弹窗.速度也越来越慢了.上淘宝却打开了游戏的网站.在今天央视播放的<遭"劫持"的路由器>的节目中,报道了用户正常上网遭遇了一系列的异常情况.专家分析,这是用户的路由器遭到了黑客劫持的原因.据360安全卫士最新发布的路由器安全报告显示称,国内的30.2%的家用无线路由器存在着"弱密码"漏洞的问题,更有4.7%的家用路由器已经被黑,中招网民保守估计高达2000余万人,而家用路由器跟电脑.手机并列为黑客重点攻击的三大目标之一. 30%路由器受&quo

PHPCMS2008广告模板SQL注入漏洞修复

00 漏洞描述 PHPCMS2008由于广告模块取referer不严,导致一处sql注入漏洞.可以得到管理员用户名与密码,攻击者登录后台后可能会获取webshell,对服务器进行进一步的渗透. 01 漏洞分析 漏洞产生的位置: /ads/include/ads_place.class.php的show方法中. function show($placeid) ... if($adses[0]['option']) { foreach($adses as $ads) { $contents[] =

WinMySQLadmin 1.1 以明文形式存放 Mysql 密码漏洞

mysql WinMySQLadmin 1.1 以明文形式存放 Mysql 密码漏洞文章来源:  涉及程序: WinMySQLadmin    详细: WinMySQLadmin 是一个 Mysql 管理软件,发现它以明文形式存放 Mysql 密码于 c:\winnt\my.ini 文件中. ---<my.ini>---#This File was made using the WinMySQLadmin 1.1 Tool [mysqld]basedir=C:/mysqldatadir=C:/

360漏洞修复在哪

360漏洞修复在哪   360漏洞修复这里是特指您的Windows操作系统在逻辑设计上的缺陷或在编写时产生的错误. 2.为什么要修补修通漏洞? 系统漏洞可以被不法者或者电脑黑客利用,通过植入木马.病毒等方式来攻击或控制整个电脑,从而窃取您电脑中的重要资料和信息,甚至破坏您的系统. 3.如何修复? 根据界面提示查看是否有需要修补的漏洞,如需修复点击"立即修复".          相关知识:360安全卫士ctrl快捷搜索怎么禁止  手机软件教程 手机技巧 电脑教程

360安全卫士领航版自动漏洞修复功能怎么关闭

  360安全卫士领航版自动漏洞修复功能怎么关闭 1.打开360安全卫士领航版; 2.选择360安全卫士软件界面右上角的三角按钮,选择:设置(如下图); 3.选择:弹窗设置下的:漏洞修复方式; 4.将默认设置:无需提醒,直接自动修复,改成自己需要的方式,如:关闭安全提醒,不修复!

360自动漏洞修复怎么关闭

  关闭360自动漏洞修复功能的方法 1.打开360安全卫士,本次演示的软件为360安全卫士领航版; 2.选择360安全卫士软件界面右上角的三角按钮,选择:设置(如下图); 3.选择:弹窗设置下的:漏洞修复方式; 4.将默认设置:无需提醒,直接自动修复,改成自己需要的方式,如:关闭安全提醒,不修复!