扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
Conn.asp暴库大法
这里的Conn.asp只是表示数据库调用文件,因为多数都是这个名字(有些网站改名,我们也视同Conn.asp)。其实,这种暴库法是最先出现的,以前很多牛人都对此进行过探讨,我记得黑防也在特别早的时候专门讨论了这个方法。只是在“%5c”暴库大法出现后,倒较少有人提及。其实个人认为,“%5c”暴大法随着服务器设置安全性的加强,用武之地会越来越少。而Conn.asp暴库大法发挥的余地更大,可以人为构造,臭要饭的当年著名的动网大挪移实现暴库,其实也属于此类。
在上面http://www.om88.com/的一例中,用“%5c”暴不出数据库路径,因为没有二级目录,但用第二种却可以暴出,它是动力系统的。我们再来看另外一个盗帅的例子:http://www.51see.org/
提交:
http://www.51see.org/db/user.asp
得到如下结果,如图3所示。
“Microsoft JET Database Engine 错误 '80004005'
'd:Hostingwwwrootuilady_comhtdocsdbdbdownloadwoaini12345.asp'不是一个有效的路径。 确定路径名称拼写是否正确,以及是否连接到文件存放的服务器。
/db/user.asp,行6 ”
图3
有人可能会说,这么简单就暴库,好爽!是不是所有网站都可以这样啊?当然不是,已作了防护的站点肯定不行,没作防护的,要暴库也是有条件的。如果说第一种暴库法是利用了绝对路径出错,那么,这种暴库法就是利用了相对路径出错。
一般来说,只要Conn.asp不在根目录的系统,而调用文件在根目录,就会出现这种问题。当然这种说法也是经验性的,准确的说就是,Conn.asp与调用它的文件如果相对位置改变了,就会报错,暴出数据库路径。这样说可能有人不明白,不要紧,接着看你就会明白的。
我们从动力文章系统说起。
动力文章系统的Conn.asp位于系统下的INC目录下,而很多调用它的文件在系统根目录下,比如User_ChkLogin.asp等,这样当Conn.asp执行时,它是在系统根目录“D:wwwrootzyx688wwwroot”下执行的。因此,Conn.asp文件中,调用数据库时它考虑到执行时的目录路径,因而数据库的相对地址写成如下:
db="database/fp360609.asp"
这样,当它在系统根目录下执行时,数据库的相对路径为根目录下的“database”目录,但当我们直接请求它时,它工作的当前目录是在根目录下的INC目录内,这时数据库的相对路径就变成了“inc/database/fp360609.asp”,这样它当然出错,得到的绝对路径中也多出了“inc”。为了让大家看得更清楚,我们举一个可以用两种方法暴库的网站,比较一下看有何不同。提交:
http://www.pofen.com/sc/down%5cshow.asp?id=437
得到:
“Microsoft JET Database Engine 错误 '80004005'
'D:Webdatapofen.comscdbdownload.mdb'不是一个有效的路径。 确定路径名称拼写是否正确,以及是否连接到文件存放的服务器。
/sc/down/db/user.asp,行6 ”
再提交:
http://www.pofen.com/sc/down/db/user.asp
得到:
Microsoft JET Database Engine 错误 '80004005'
'D:Webdatapofen.comscdowndbdbdownload.mdb'不是一个有效的路径。 确定路径名称拼写是否正确,以及是否连接到文件存放的服务器。
/sc/down/db/user.asp,行6
两种方法得到的绝对路径,一个比实际路径少了,一个则多了,这两个系统都是因为Conn.asp不在系统根目录下而引起的。那是不是Conn.asp放在根目录,与调用的文件在一个目录下就无事呢?如果在一起,当然没事,但牛人自有牛法子,可以通过构造方法来造成相对路径变化,一样能达到暴库的目的。比如,动网的大挪移手法,将Conn.asp移位,从而暴库。
当然,实际操作中,因为Conn.asp移走后,网站无法工作,所以没有成功,但这种思路还是给很多人启发。如果有一种方法可以复制而不是移动,或者说,移动的不是Conn.asp,而是调用Conn.asp的其它文件,比如Chklogin之类,理论上就可以成功。今天刚看到一个暴动易系统路径的最新方法,其原理就是构造错误而达到获得真实路径的目的。
防范暴库
说白了,暴库是因为IIS服务器会对每个执行错误给出详细说明,并停止执行,IIS的默认设置又是将错误信息返回给用户。因此,要避免暴库,就应改变IIS的默认设置,选取错误时只给一个出错的通知,不给详细信息。如图4所示。
图4
其实,有些虚拟主机为了便于站长调试,一般不关掉信息返回,作为网站管理者,又无法对虚拟主机设置时,只能在网页中加强防范。就是在可能出错的页面加上这一句:“On Error Resume Next”。它的意思是出错后,恢复执行下面的语句,也就是不理会出错,当然就不会给出错误信息了。动易系统3.62版加上这句话后,现在就暴不出路径了,而天意商务网的Conn.asp也不在根目录,但因为加了这句,也暴不出数据库了。
关于暴库的原理和分析就说到这里,大家有什么看法可以发文一起探讨,并恳请牛人们指教!谢谢!
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者