更多详细内容请查看:http://www.111cn.net/jsp/Java/58610.htm

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

'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 " www.111cn.net ";
  }
  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";
  }

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

  1. asp、aspx、php、jsp万能密码大全【笔记】

    asp aspx万能密码 1:"or "a"="a 2: ')or('a'='a 3:or 1=1-- 4:'or 1=1-- 5:a'or' 1=1-- 6: ...

  2. 【转】phpmyadmin万能密码漏洞

    影响版本:2.11.3 / 2.11.4 利用方法:用户名处写入‘localhost’@'@”则登录成功. (注意全部是英文标点符号,最后一个为英文双引号) 附上几个php爆绝对路径的办法: phpM ...

  3. 万能密码的SQL注入漏洞其PHP环境搭建及代码详解+防御手段

    目录 环境搭建 session会话 环境搭建代码 创建数据库脚本 登录界面html: 查询数据库是否为正确的账号密码php代码 连接数据库php代码: 注销登录代码(即关闭session会话) 登录成 ...

  4. WEB渗透 - 万能密码

    asp万能密码 'or'='or' aspx万能密码 1: "or "a"="a 2: ')or('a'='a 3:or 1=1-- 4:'or 1=1-- 5 ...

  5. 从c#角度看万能密码SQL注入漏洞

    以前学习渗透时,虽然也玩过万能密码SQL注入漏洞登陆网站后台,但仅仅会用,并不理解其原理. 今天学习c#数据库这一块,正好学到了这方面的知识,才明白原来是怎么回事. 众所周知的万能密码SQL注入漏洞, ...

  6. Web安全常见漏洞修复建议

    转载地址:https://security.pingan.com/blog/17.html SQL注入 在服务器端要对所有的输入数据验证有效性. 在处理输入之前,验证所有客户端提供的数据,包括所有的参 ...

  7. 数据库其他注入思路 - 万能密码 - cookie注入 -搜索型注入

    另类登录注入形式: 经常有一类验证(ASP,PHP,JSP均存在),先判断user是否存在,ASP为例子:"select password from admin where user_nam ...

  8. 织梦dedecms漏洞修复大全(5.7起)

    很多人说dedecms不好,因为用的人多了,找漏洞的人也多了,那么如果我们能修复的话,这些都不是问题. 好,我们来一个一个修复.修复方法都是下载目录下该文件,然后替换或添加部分代码,保存后上传覆盖(记 ...

  9. 最强黑吃黑:WEBSHELL大马隐藏万能密码大全

    因为很多原因,很多新手都不会编写自己的大马,大多数新手都会通过百度去下载对应脚本的大马,然而这些webshell大马都是早期流传出来的,基本上都存在后门,可以通过万能密码登录,即使你修改i过密码了,怎 ...

随机推荐

  1. Docker:使用Ambassador进行跨主机间容器通信

    转载请注明出处:点我 由于Docker自身的网络的原因,想要在多主机间的容器之间进行通信是比较麻烦的事情.可以利用Ambassador容器来实现这一功能. 基本原理: 利用Ambassador来实现主 ...

  2. thinkphp关联查询

    $list=$model->table("$dName d ,$mName m,$cName c") ->field('d.*,m.title as musicTitl ...

  3. 浅谈模块化的JavaScript

    模块化JavaScript之风早已席卷而来, CommonJS . AMD . NodeJS .RequireJS . SeaJS . curljs  等模块化的JavaScript概念及库扑面而来, ...

  4. php heredoc 与 nowdoc

    php heredoc 与 nowdoc heredoc 结构 heredoc 句法结构:<<<.在该运算符之后要提供一个标识符,然后换行.接下来是字符串本身,最后要用前面定义的标识 ...

  5. JAVA正则表达式语法大全

    [正则表达式]文本框输入内容控制 整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$ 只能输入数字:"^[0-9]*$". 只能输入n位的数字:"^\d{n ...

  6. 虚拟机VMware 9安装苹果MAC OSX 10.8图文教程

    前些天虚拟机VMware Workstation 9出来,相信大家都已经熟悉VM9了,至于MAC OSX 10.8系统,那也是出来一段时间了,本篇文章就是来讲解VMware Workstation 9 ...

  7. 教你用Cocosdx导出安卓安装文件(.apk)(一)

    我也是刚弄出来,过程可能有点混乱和不具体,我尽我所能写完整.各位看官多多包涵 设备环境: 我所用的是mac 10.8.5    64位 Cocosdx-3.0rc2 xcode 5.0 一.准备 ND ...

  8. Ogre Addon之Paged Geometry

    还是OGRE好啊,无尽的Addon,无尽的宝藏.既有SkyX,Hydrx这样的天空水体渲染库可供学习,还有Paged Geometry这样的“大规模海量geometry管理系统”.它通过batch,s ...

  9. 深入解析ext2文件系统之mke2fs

      上一遍博文的重点其实将ext2整体的组织框架,我们知道了ext2文件系统由块组组成,每个块组里面的组织形式.我们甚至直接把超级块和组描述符里面的内容,用十六进制形式展现了出来.这篇博文主要讲述如何 ...

  10. Spring源码解析之:Spring Security启动细节和工作模式--转载

    原文地址:http://blog.csdn.net/bluishglc/article/details/12709557 Spring-Security的启动加载细节   Spring-Securit ...