前言
本文中涉及到的所有操作均得到了客户单位的授权,并且在漏洞修复后得以公开。请勿在未授权状态下进行任何形式的渗透测试!!!!
漫长的探索
经过初步的信息收集后,发现该医院并无官网,只有一个微信公众号提供了预约挂号,缴费等功能,只能把突破点放在这个公众号上了。
下图是微信公众号的一些功能:
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/bb91c581362f4e89ab7341e92d758f8d~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-15-42-06.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-15-42-06.png”” style=“margin: auto” />
当点击这些功能并抓包的时候,令我看到奇怪的是所有的请求都指向了a.test.com
这个域名,如下图,原谅我的厚码…
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/9e4bbfaa88ea4a8a8db050b55ccca414~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-15-45-43.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-15-45-43.png”” style=“margin: auto” />
【一>所有资源获取<一】 1、200份很多已经买不到的绝版电子书 2、30G安全大厂内部的视频资料 3、100份src文档 4、常见安全面试题 5、ctf大赛经典题目解析 6、全套工具包 7、应急响应笔记
test.com
这个域名经过查找后发现是一家提供医疗信息系统的本地公司,但不解的是为什么医院的系统会放到供应商公司去呢?他们是如何进行数据同步的呢?带着这些问题我开始了对a.test.com
这个域名的测试。
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/02d619c7e3de41be87bee246c76c2fe4~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-15-51-03.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-15-51-03.png”” style=“margin: auto” />
看到这个熟悉的页面,确定了此系统大概是由sping boot开发的,经过一系列常规操作后,只发现了一个swagger-ui页面。
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/7a46bc5f17f84ec7b155a58939623c2b~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-15-54-49.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-15-54-49.png”” style=“margin: auto” />
由于我们的目标是拿权限,所以重点对此页面的接口进行了sql注入和越权等测试,无果,也没有任何的文件上传接口,开始卡到这里了。
回过来想,a.test.com
这个域名是test.com
的子域名,是否能够通过test.com
进行突破呢?
访问test.com
,打开的是供应商公司的官网。
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/cbf689c67f934b4592651bccf6f122ed~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-16-05-30.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-16-05-30.png”” style=“margin: auto” />
对test.com
的域名做信息收集后发现了几个子域均解析致某云服务器,但是ip不同。
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/5e17e22b88694f60868f0f9fca8426e6~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-16-10-42.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-16-10-42.png”” style=“margin: auto” />
首先git.test.com
这个域名引起了我的注意,打开后是一个gitlab服务。
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/65220fdef3e84a17b551a6d828e2ba83~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-16-13-00.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-16-13-00.png”” style=“margin: auto” />
gitlab历史上是由几个漏洞的:
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/ee1499dd8b274dd5bfcce6e0c4e31bc3~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-16-17-20.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-16-17-20.png”” style=“margin: auto” />
但不幸的是此系统版本较高,漏洞均以修复。
那会不会由弱口令呢?使用几个常用的用户名和top密码进行爆破,无果,我又想办法加到了此公司的一个qq群中,尝试在群文件中获取一些有效信息。
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/1cc346383b1148518eae443d650409bc~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-16-49-55.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-16-49-55.png”” style=“margin: auto” />
果不然,群文件中有一份表格,记录了员工的详细信息
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/93c2349561714647b3b7ce85af357009~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2F20211109164818.png “https://cdn.jsdelivr.net/gh/handbye/images/20211109164818.png”” style=“margin: auto” />
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/41bc6f5d60bf46c3ace1a6918e972125~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-16-52-19.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-16-52-19.png”” style=“margin: auto” />
有了这些信息,我开始使用姓名和工号等组合成gitlab的用户名,使用常用弱口令定向爆破,期望能有一两个结果,但是还是无果,看来此gitlab对密码强度有要求,弱口令是走不通了。
柳岸花明又一村
当使用google hack 语法搜索此gitlab时发现了几处无需认证即可访问的公开仓库。
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/224696a5a5c34c99a9fec90203c403b1~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-16-19-58.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-16-19-58.png”” style=“margin: auto” />
我开始把希望寄托在了这些可公开访问的仓库上,仔细翻看这些仓库,大多数都是一些接口文档,对本次渗透没有啥用。
终于在rabbitmq安装介绍文档中发现了一个oracle数据库的连接用户名和密码:
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/b0bfc2fbae6e4bf6a9994f4f84ac84c3~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-17-03-59.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-17-03-59.png”” style=“margin: auto” />
在前面的信息收集过程中,已经发现了x.test.com
这个子域名对应的ip地址开放了oracle数据库端口,我迅速连接了此数据库发现用户名密码正确,可以连接。
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/0f2c957f04a14b8b88755b25a32e2fd8~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-17-07-45.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-17-07-45.png”” style=“margin: auto” />
由于此数据库版本较低,并且时sysdba权限,我可以直接以system权限执行命令。
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/ae38403ffe934125b06298cedb7000d7~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-17-11-10.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-17-11-10.png”” style=“margin: auto” />
然后就是添加用户登录拿下了这台oracle数据库的服务器。
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/7fffe11afce445f2b5ced7c293dd03a7~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-17-12-49.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-17-12-49.png”” style=“margin: auto” />
并且在这个mysql文件夹中发现了mysql的配置文件。
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/7a10d9de275345c584ab043d70ba194d~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-17-14-05.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-17-14-05.png”” style=“margin: auto” />
由于test.com
这台服务器是开放了mysql数据库的,利用此信息,我又成功登录了mysql数据库。
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/9a890a4e876442c48095cfe8503601c4~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-17-19-02.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-17-19-02.png”” style=“margin: auto” />
在mysql数据库中成功获取了供应商官网test.com
后台的用户名和密码。
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/8c8a995550d746e9b1920d23fe87a3f1~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-17-20-24.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-17-20-24.png”” style=“margin: auto” />
当我满怀欣喜的去登录时,发现确实可以登录,但登陆后的后台功能都已废弃,只有一个大大的thinkphp错误。
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/70f6e79f1cb74397af5490c2f64d3b68~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-17-21-59.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-17-21-59.png”” style=“margin: auto” />
怎么办,原想的通过后台getshell的想法也落空了。(也尝试过使用Thinkphp3的漏洞利用,但也全部失败了)
绝处逢生
到这里,我认为只能把希望放在这个mysql数据库上了,由于是windows系统,udf提权大概率成功不了,那就只能尝试写webshell了。写webshell的话需要知道绝对路径,我尝试使用各种办法让test.com
报错,看报错信息中有没有包含绝对路径,一系列操作过后无果,只有404页面。
没办法了,只有盲猜一波,我突然想到了mysql数据库表的表名是否就是网站的目录名呢?
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/30503a8c97e94505bfec01b59cae2c0e~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-17-31-20.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-17-31-20.png”” style=“margin: auto” />
使用这两个表名构造了以下绝对路径
c:\\hs_web
c:\\hsweb
d:\\hs_web
d:\\hsweb
当尝试到c:\\hs_web
时,webshell提示已经写入成功了。
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/2195ac4affc841a6a1b589121e1bd733~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-17-34-44.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-17-34-44.png”” style=“margin: auto” />
使用蚁剑连接成功:
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/85112e01b17b405bb1292c431c7a7ea8~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-17-36-10.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-17-36-10.png”” style=“margin: auto” />
由于当前用户权限较小,使用potato成功提权:
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/d2b7fb91dd034a619908eef97fea8655~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-17-37-10.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-17-37-10.png”” style=“margin: auto” />
添加用户成功登录远程桌面:
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/169c0a2d4d214d1d89465f5197b3c858~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-17-38-27.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-17-38-27.png”” style=“margin: auto” />
在服务端的nginx配置文件中发现了代理规则,涉及到几十家医院:
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/e55f6ccdb3904f4493951bca3f50a397~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-17-40-08.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-17-40-08.png”” style=“margin: auto” />
原来这些医院的微信公众号业务都是先访问test.com
这台服务器,然后再由这台服务器上的nginx转到到各个医院的真实服务器上。那这样也太不安全了吧,一旦供应商的这台服务器宕机、他们的业务也得跟着丢。
然后在这台服务器上发现了微信公众号后台源码,丢给同伴审计了一波,发现了后台登录绕过漏洞,可以直接登录后台。
[<img src=“https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/cad23f38b00b48c0b16f6978e8b05f36~tplv-k3u1fbpfcp-zoom-in-crop-mark:4536:0:0:0.image)](https://link.juejin.cn/?target=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fhandbye%2Fimages%2Fpicgo2021-11-09-17-45-11.png “https://cdn.jsdelivr.net/gh/handbye/images/picgo2021-11-09-17-45-11.png”” style=“margin: auto” />
然后就是随意改信息啦。
至此本次渗透就结束了,其实拿到医院的真实ip后也可以更深入的进行测试。学习网络安全技术的方法无非三种:
第一种是报网络安全专业,现在叫网络空间安全专业,主要专业课程:程序设计、计算机组成原理原理、数据结构、操作系统原理、数据库系统、 计算机网络、人工智能、自然语言处理、社会计算、网络安全法律法规、网络安全、内容安全、数字取证、机器学习,多媒体技术,信息检索、舆情分析等。
第二种是自学,就是在网上找资源、找教程,或者是想办法认识一-些大佬,抱紧大腿,不过这种方法很耗时间,而且学习没有规划,可能很长一段时间感觉自己没有进步,容易劝退。
如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!
第三种就是去找培训。
接下来,我会教你零基础入门快速入门上手网络安全。
网络安全入门到底是先学编程还是先学计算机基础?这是一个争议比较大的问题,有的人会建议先学编程,而有的人会建议先学计算机基础,其实这都是要学的。而且这些对学习网络安全来说非常重要。但是对于完全零基础的人来说又或者急于转行的人来说,学习编程或者计算机基础对他们来说都有一定的难度,并且花费时间太长。
第一阶段:基础准备 4周~6周
这个阶段是所有准备进入安全行业必学的部分,俗话说:基础不劳,地动山摇
第二阶段:web渗透
学习基础 时间:1周 ~ 2周:
① 了解基本概念:(SQL注入、XSS、上传、CSRF、一句话木马、等)为之后的WEB渗透测试打下基础。
② 查看一些论坛的一些Web渗透,学一学案例的思路,每一个站点都不一样,所以思路是主要的。
③ 学会提问的艺术,如果遇到不懂得要善于提问。
配置渗透环境 时间:3周 ~ 4周:
① 了解渗透测试常用的工具,例如(AWVS、SQLMAP、NMAP、BURP、中国菜刀等)。
② 下载这些工具无后门版本并且安装到计算机上。
③ 了解这些工具的使用场景,懂得基本的使用,推荐在Google上查找。
渗透实战操作 时间:约6周:
① 在网上搜索渗透实战案例,深入了解SQL注入、文件上传、解析漏洞等在实战中的使用。
② 自己搭建漏洞环境测试,推荐DWVA,SQLi-labs,Upload-labs,bWAPP。
③ 懂得渗透测试的阶段,每一个阶段需要做那些动作:例如PTES渗透测试执行标准。
④ 深入研究手工SQL注入,寻找绕过waf的方法,制作自己的脚本。
⑤ 研究文件上传的原理,如何进行截断、双重后缀欺骗(IIS、PHP)、解析漏洞利用(IIS、Nignix、Apache)等,参照:上传攻击框架。
⑥ 了解XSS形成原理和种类,在DWVA中进行实践,使用一个含有XSS漏洞的cms,安装安全狗等进行测试。
⑦ 了解一句话木马,并尝试编写过狗一句话。
⑧ 研究在Windows和Linux下的提升权限,Google关键词:提权
以上就是入门阶段
第三阶段:进阶
已经入门并且找到工作之后又该怎么进阶?详情看下图
给新手小白的入门建议:
新手入门学习最好还是从视频入手进行学习,视频的浅显易懂相比起晦涩的文字而言更容易吸收,这里我给大家准备了一套网络安全从入门到精通的视频学习资料包免费领取哦!
如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!
![](https://img-blog.csdnimg.cn/3e9a39bf040d46da93e80689b407bb25.png)