官网html
攻击机kali IP地址
经过nmap 进行主机发现,发现目标机IP地址
nmap -sP 192.168.227.1/24
python
参数说明:
-sP (Ping扫描)
该选项告诉Nmap仅仅 进行ping扫描 (主机发现),而后打印出对扫描作出响应的那些主机。 没有进一步的测试 (如端口扫描或者操做系统探测)。 这比列表扫描更积极,经常用于 和列表扫描相同的目的。它能够获得些许目标网络的信息而不被特别注意到。 对于攻击者来讲,了解多少主机正在运行比列表扫描提供的一列IP和主机名每每更有价值。mysql
肯定下来目标机的主机信息后,经过nmap 探测目标机的服务信息及开放的端口信息
nmap -A 192.168.227.139
能够看到开放了web 服务80端口和8080端口,首先访问一下80端口
没有发现什么有用信息,进一步探测一下web 目录,这里使用kali 下的dirb,指定类型为html文件
dirb http://192.168.227.139/ -X .html
发现两个文件,访问http://192.168.227.139/access.html
发现三组MD5加密的帐号密码,解密之
尝试用这三组帐号密码登陆ssh和mysql,发现并不能登陆
访问8080端口
尝试登陆,发现第三组帐号密码成功登陆
web
咱们发现8080端口开放的服务,存在漏洞利用
sql
参考文档:
https://www.rapid7.com/db/modules/exploit/multi/http/jenkins_script_consoleshell
打开msfconsole,并使用漏洞exp
设置参数
输入exploit,获取到一个meterpreter
输入shell,获取到一个shell 会话
也能够经过python 创建会话
python -c 'import pty;pty.spawn("/bin/bash")';
尝试经过find 发现flag 文件,发现权限过低,几乎都无法访问
最后咱们发现一个颇有意思的脚本
这个脚本每隔5分钟会清理一次http的访问日志,更重要的是这个脚本的权限是777
api
咱们先在本地新建一个CleaningScript.sh ,用于给find 设置suid权限,能够像root用户那样启动
chmod u+s /usr/bin/find
bash
参考连接:
https://blog.csdn.net/wangjia55/article/details/80858415网络
经过meterpreter 上传脚本到目标机
等待5分钟进入shell
发现find 具备了suid权限
这时咱们就能够利用find 命令的exec 功能以root 权限执行其余命令了
ssh
参考连接:
https://blog.csdn.net/hongrisl/article/details/83018536
最后咱们就能够查找root 下是否有flag 文件了
并成功读取flag文件
一样先获取到meterpreter 权限,本地新建脚本CleaningScript.sh ,用于给cp 设置suid 的权限
chmod u+s /usr/bin/cp
经过meterpreter上传,而后在目标机经过cat 查看/etc/passwd
把文件内容复制下来,在本地新建passwd 粘贴内容,并建立一个具备root 权限的新用户
用户密码能够经过openssl 生成
经过meterpreter 上传到目标机/tmp 目录下
经过我们设置好的cp 命令覆盖原先的/etc/passwd
su 切换到我们建立的用户,成功获取到root 权限
首先在本地经过msfvenom 生成一个反弹shell
在本地写入CleaningScript.sh
经过meterpreter 上传到目标机
在kali 开启监听
等待5分钟后,获取到一个root权限反弹shell