0x01预备知识

1、概念:

相对路径和绝对路径

绝对路径:例如D:/test/test.mdb

相对路径:例如/test/test.mdb

2、%5C暴库

简单点说,就是在打开页面的时候把网页中的/换成%5C,然后提交就可以得到数据库地址了,但并不是所有的页面都可以成功,而需要“asp?id="这样的网址。因为这样的网址表示该页面调用了数据库,也就是说如果你知道一个文件调用了数据库,如search.asp、vote.asp等,都有可能导致暴库漏洞。

Conn.asp里面有数据库的路径信息 database=“路径”,这里的路径是一个相对的路径,根据调用它的页面文件的不同,会有不同的物理路径的解析,如果路径是\data\*.mdb,(网站的根目录是D:\wwwroot,conn.asp的路径是D:\wwwroot\inc\conn.asp,数据库的物理路径是D:\wwwroot\data\*.mdb,),哪个页面文件调用conn.asp,数据库的路径就是调用conn.asp的页面文件的路径+\data\*.mdb,如果是网站根目录下的文件调用的话是对的,数据库物理路径解析为D:\wwwroot\data\*.mdb。但是,如果是inc下的页面调用的话,数据库的物理路径就被解析成D:\wwwroot\inc\data\*.mdb,而这个路径是不存在的,这里的相对路径是数据库相对于调用页面的而被解析的路径,所以如果直接浏览器访问/inc/conn.asp,将会出错,并暴出网站数据库的地址路径。

0x02实验目的:

通过该实验了解conn.asp暴库原理,学会暴库漏洞的利用,以及该漏洞的防范。

0x03实验过程:

步骤一:通过暴库漏洞获取管理员账号密码进入后台

1)利用网站后台扫描工具wwwscan对目标服务器进行扫描,扫描的结果如下:

能发现目标网站的后台地址和一个/inc/conn.asp页面

2)接下来我们尝试用火狐浏览器访问测试网站是否存在漏洞,

访问10.1.1.218/inc/conn.asp,可以直接暴出网站数据库地址,说明存在漏洞,如下图所示,这是一个后缀名为.asp的数据库

3)在实际测试中,我们需要经验和多去尝试,针对报错的信息,发现存在被利用的风险,此处我尝试输入物理路径为/hetian/#hetian_lab.asp

浏览器访问http://10.1.1.218/hetian/#hetian_lab.asp,

4)发现被拒绝了,其实这是由于数据库地址前面有个#号,而这个#

号的作用是防止黑客非法下载数据库,绕过这个防御也很简单,直接把#号换成%23即可实现绕过。

访问http://10.1.1.218/hetian/%23hetian_lab.asp

5)可见,可以访问数据库,通过火狐浏览器把它下载下来,在此页面按住CTRL+S,弹出保存框,保存类型选择为所有文件,文件名后缀 改为.mdb。点击保存

6)保存之后打开桌面的辅臣数据库浏览器,并打开刚才保存的数据库就能看到网站的数据库了。

7)可以在数据库里发现网站后台的管理员账号和密码md5值

admin 7a57a5a743894a0e

发现密码也为admin ,在结合之前发现的后台,这样我们就可以进入后台


步骤二:通过暴库漏洞获取网站webshell

1)这里我们通过提交一句话数据,拿到shell(实际测试过程未必成功,具体问题具体分析)

进入网站后台后,发现存在一个可以添加管理员的功能

2)通过前面的步骤一我们可以知道网站的数据库格式为asp的,而这里刚好可以添加管理员,于是可以添加一个用户名为asp一句话木马,密码为123456的管理员账户,这样这个包含一句话木马的账号就会插入数据库,从而得到一个webshell,地址就为数据库的地址

3)打开中国菜刀,右击添加,地址栏填入数据库地址为http://10.1.1.218/hetian/%23hetian_lab.asp

(注意这里仍然要使用%23代替#号),后面密码框填入1,如下图所示:

添加完成后,双击webshell网址,成功获得了目标的webshell


步骤三:暴库漏洞的防范

在conn.asp暴库中,如果我们限制这个文件暴库,也就是说让它没报错就继续执行,如果暴库就执行另外的代码,这样我们就可以人为的操作代码报错的返回信息。

加入 “on error resume next”它的意思是不理会报错

通过菜刀找到目标网站/inc/conn.asp,双击进行编辑,找到on Error Resume Next 这句话,把前面的单引号注释去掉,点击右上角的保存。

保存之后,我们再用浏览器访问一下inc/conn.asp,如下图所示,发现没有再爆出数据库的地址了

除了改代码以外,我们还可以利用IIS的特性来解决这一问题

进入服务器的主机,通过点击开始->管理工具->Internet信息服务(IIS)管理器,打开IIS服务器,先查看网站的“属性”(在网站名称处右击选择属性即可),选择“主目录”标签项,在其中“执行权限”的右侧,点击“配置”按钮,弹出“应用程序配置”对话框,我们选择“调试”标签项,在这页面我们需要关注的是“脚本错误的错误信息”,具体如下图所示:

在默认情况下,通常是选择了“向客户端发送详细的ASP错误消息”的,正因为如此,攻击者可以得到服务器的敏感信息,这里我们将其修改为选择第二项,即“向客户端发送下列文本错误消息”,这样在访问conn.asp文件时,便会出现如下图所示:


分析与思考:

1、为什么在后台添加一句话用户时不在密码处填入一句话木马?

答:在步骤一可看出,在数据库中的密码是经过md5加密过的,故可以推测是经过加密的算法,所以一句话木马放在密码处会加密,进而失去getshell的功能。

2、思考其它的防止暴库漏洞的方法

答:①为你的数据库文件名称起个复杂的非常规的名字,并把它放在几层目录下。所谓“非常规”,打个比方说,比如有个数据库要保存的是有关书籍的信息,可不要给它起个简单的类似“book.mdb”的名字,而要起个复杂难猜解的名称,比如a2d4kjkolg.mdb,并把它放在./wwwroot/inc/kds/i78/stud/的几层目录下,这样黑客要想通过猜解的方式得到你的Access数据库文件就难上加难了。

②不要把数据库名写在程序中。假如万一给人拿到了源程序,你的数据库名字就一览无余了。

③使用Access来为数据库文件编码及加密。首先在“工具——安全——加密/解密数据库”中选取数据库,然后按确定,接着会出现“数据库加密后另存为”的窗口。此处要注意的是,以上的动作并不是对数据库设置密码,而只是对数据库文件加以编码,目的是为了防止他人使用别的工具来查看数据库文件的内容。


个人总结:

经过这次实验,建立起我脑海中对暴库漏洞从无到有的认识程度,其实在实际测试的时候,时常会看到.asp?sid=或id=等字眼,此次的报错出现的数据库名称,确实少见,但是从总体看来,体会和理解此conn.asp暴库漏洞的原理,和可以连接到实战过程中,不为是一种思路,总好过没有吧,哈哈。一步一个脚印吧,厚积薄发,离梦想就会越来越近了。

【合天网安】CONN.ASP暴库漏洞实验相关推荐

  1. 我看暴库漏洞原理及规律

    我看暴库漏洞原理及规律 SQL注入流行很久了,我们找漏洞注入目的无非是想得到数据库内的东西,比如用户名密码等,更进一步的MSSQL数据库还可以借此获得权限.基于Access的基础来说,如果我们不用注入 ...

  2. 【合天网安】FCKeditor 2.4.3文件上传漏洞

    [合天网安实验室]FCKeditor 2.4.3文件上传漏洞 编辑器漏洞 常见的文本编辑器有FCKeditor.Ewebeditor.UEditor.KindEditor.XHeditor等,它们包含 ...

  3. BurpSuite实战——合天网安实验室学习笔记

    burpsuite是一款功能强大的用于攻击web应用程序的集成平台,通常在服务器和客户端之间充当一个双向代理,用于截获通信过程中的数据包,对于截获到的包可以人为的进行修改和重放. 此BurpSuite ...

  4. 合天网安就业班_CTF挑战赛-合天网安实验室

    [TOCCTF挑战赛-合天网安实验室逆向解析] CTF挑战赛-合天网安实验室​sourl.cn 1.逆向100 修改后缀为.apk 安卓模拟器打开,发现要求输入Password 用Android逆向助 ...

  5. 合天网安实验室CTF-基础50-0x01

    合天网安实验室CTF-基础50-0x01 最近无聊时准备刷点题,由简到难慢慢来吧 题目描述   真的不能再简单了! 相关附件   misc50.zip 题目链接 参考解题步骤 1.下载下来的压缩包解压 ...

  6. 合天网安实验室CTF-Web100-Give Me Flag

    合天网安实验室CTF-Web100-Give Me Flag 题目描述   哎,不小心把代码弄乱惹 相关附件   web100.zip 题目链接 参考解题步骤 1.下载附件打开后是一段JavaScri ...

  7. 合天网安实验室CTF-Exp200-Come on,Exploit me!

    合天网安实验室CTF-Exp200-Come on,Exploit me! 题目描述   Audrey Tang. ⊙.⊙ 我只能说到这儿了 相关附件   exp200 题目链接 参考解题步骤 1.下 ...

  8. 合天网安实验室CTF-Steg150-一段欢快的曲调

    合天网安实验室CTF-Steg150-一段欢快的曲调 题目描述   滴滴 相关附件   stego100.wav 题目链接 参考解题步骤 1.下载的附件是一段wav格式的音频,打开听了一下,确实是欢快 ...

  9. 合天网安实验室CTF-解密100-Funny Crypto

    合天网安实验室CTF-解密100-Funny Crypto 题目描述   tgbnjuy 8ujko9 5rfgy6 相关附件 题目链接 参考解题步骤 字母 被围起来的字母 图示颜色 tgbnjuy ...

最新文章

  1. CentOS 6.x中目录结构及用途
  2. 【Fragment】管理机制
  3. Facebook力推导航库:React Navigation使用详解
  4. COVID-19和世界幸福报告数据告诉我们什么?
  5. ASP.NET数据库访问系列教程01-概述篇 创建数据访问层(下)
  6. PHP使用SMTP邮件服务器
  7. 鼠标点击时隐藏java代码,js实现点击展开隐藏效果(实例代码)
  8. fastadmin添加定时任务
  9. 学了python做什么自由职业者_我又有一位程序员朋友成了自由职业者
  10. Kafka配置5--Windows下配置Kafka的集群+SASL+SSL
  11. python标准库6张思维导图学明白
  12. IT/互联网:盘点 2020 年收入最高的10大 IT 职位!你差多少?
  13. oracle 2703,Oracle11gR2光钎链路切换crs服务发生crash
  14. 无线局域网中iPhone无法访问IIS
  15. 清除APP 数据的时候出现Crash的情况分析
  16. pacemaker+nginx+iscsi实现的nginx服务远程储存高可用
  17. Excel VBA:设置单元格边框
  18. Seurat4.0系列教程8:细胞周期评分和回归分析
  19. windows网络服务进程管理dos命令
  20. 信必优再次入围“2015年在华跨国服务外包企业二十强”

热门文章

  1. GaN(第三代器件)特性的总结
  2. json对象转换为json字符串
  3. (十九)深入理解蓝牙BLE之“低功耗蓝牙dongle”
  4. sql练习-基础练习
  5. 老司机带你一分钟了解网络分析仪程控软件
  6. Python---项目3-破解使用crypt方法加密(已加salt参数)的登录密码
  7. 【工具】markdown
  8. 直接最小二乘法拟合椭圆
  9. leetcode387题解
  10. iOS Jenkins自动化打包 上传fir、蒲公英、邮件、钉钉提醒