• 网站暴库原理与方法剖析


    一、方式

    暴库的方式有多种多样,我知道的就有3种以上,常见的暴的方法有:%5c类暴,conn.asp暴,ddos暴等等

    二、原理

    “%5c”暴库法,它不是网页本身的漏洞,而是利用了IIS解码方式中的一个特性,如果IIS安全设置不周全,

    而网页设计者未考虑IIS错误,就会被人利用。

    为何要用”%5c”?它实际上是””的十六进制代码,也就是””的另一种表示法。在电脑中,它们是一个东东。

    但提交””和”%5c”却会产生不同的结果,在ie中,我们把下面第一个地址中的”/”换成””提交:

    _blank>http://www.qxzxp.com/softview.asp?id=58

    _blank>http://www.qxzxp.com/soft%5cview.asp?id=58
    二者的访问结果是一样的。ie会自动把””转变成”/”,从而访问到同一地址。

    但是,当我们把”/”换成十六进制写法”%5c”时,ie不会对此进行转换。地址中的”%5c”被原样提交了。
    当IIS收到后解析时,又会将%5c还原成””。这样,iis中网址的相对路径就变成/Soft/html13/。这一点很重要。问题正是从这里开始的。

    在ASP网页中,凡调用数据库时,都会用到一个连接数据库的网页conn.asp,它会创建一个数据库连接对象,定义要调用的数据库路径
    一个典型的conn.asp如下:

    <% dim conn dim dbpath set conn=server.createobject(“adodb.connection”) DBPath = Server.MapPath(“admin/qxzxp.mdb”) conn.Open “driver={Microsoft Access Driver (*.mdb)};dbq=” & DBPath %>

    大家注意第4句:DBPath = Server.MapPath(“admin/qxzxp.mdb”),Server.MapPath方法的作用是将网站中的相对路径转变成物理上的绝对路径。

    为何要这样?因为连接数据库时,须指明它的绝对路径。

    (这里可能有人不明白,什么相对路径、绝对路径?IIS为了不让访问者知道真实的实际路径,并且确保网站不因变换地址而影响使用,它采用了一种相对路径来表示目录与文件之间的关系。也就是网址目录只表示从根目录起的相对位置。)

    比如:上面的网站中,网站:http://www.qxzxp.com的根目录为:”E:web”,

    下载目录则在根目录(E:web)内的”soft”下,我们网站访问该站时,就是在访问E:websoft目录

    而http://www.qxzxp.com/soft/admin/,它只表明了admin与soft这个目录的相对关系

    把这个网站放在D:盘,也一样不改变admin位于soft目录下的关系。

  • 相关阅读:
    【转】Android WiFi 经常掉线出现的几个原因分析!
    如何分析解决Android ANR
    如何分析和研究Log文件 ,如何看日志信息
    Force removing ActivityRecord no saved state问题的原因分析
    win7下彻底卸载和重装mysql
    mysql的基本操作命令
    mysql 启动,停止,重启
    解决mysql登录报错ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)问题
    一个轻量级的基于 .NET Core 的 ORM 框架 HSQL
    C# ref引用参数与out输出参数的使用与区别
  • 原文地址:https://www.cnblogs.com/webyihui/p/4003130.html
Copyright © 2020-2023  润新知