Knife Writeup

概述 (Overview)

image

时间: 2021-09-02 机器作者: MrKN16H7 困难程度: easy MACHINE TAGS: * PHP * Backdoor * Easy * External * Apache * Penetration Tester Level 1 * A06:2021-Vulnerable And Outdated Components * Public Vulnerabilities * Sudo Exploitation * Enumeration

攻击链 (Kiillchain)

通过 nmap 对目标服务器的开放服务进行识别,在运行的Web服务返回包中发现可疑的PHP版本信息。通过该信息成功在 exploit-db 中找的RCE攻击脚本,成功拿到立足点。

查看sudo配置信息时,发现当前用户可以免密执行 knife 命令,最终使用该命令成功进行权限提升。

枚举(Enumeration)

老规矩,使用 nmap 对目标服务器的开放端口进行检查枚举:

$ nmap -p- -n -Pn -sV --min-rate 2000 -oA portscan -v 10.10.10.242 PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 8.2p1 Ubuntu 4ubuntu0.2 (Ubuntu Linux; protocol 2.0) 80/tcp open http Apache httpd 2.4.41 ((Ubuntu)) Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

开放的端口很少,看样子是需要通过攻击WEB服务拿到立足点。

Port 80 - Apache and php

使用浏览器访问Web服务,是一个简易的门户网站:

image

留意服务器返回的数据包中含有一个可疑的指纹信息,告知了我们后端PHP运行的版本:

$ http HEAD 10.10.10.242 HTTP/1.1 200 OK Connection: Keep-Alive Content-Type: text/html; charset=UTF-8 Date: Thu, 02 Sep 2021 12:33:11 GMT Keep-Alive: timeout=5, max=100 Server: Apache/2.4.41 (Ubuntu) X-Powered-By: PHP/8.1.0-dev

立足点(Foothold)

根据这一信息,随后在exploit-db中找到了可以进行RCE尝试的攻击脚本。

PHP 8.1.0-dev - 'User-Agentt' Remote Code Execution https://www.exploit-db.com/exploits/49933

PHP 8.1.0-dev 版本在2021年3月28日被植入后门,但是后门很快被发现并清除。当服务器存在该后门时,攻击者可以通过发送User-Agentt头来执行任意代码。代码判断 - https://github.com/php/php-src/commit/c730aa26bd52829a49f2ad284b181b7e82a68d7d

脚本下载好后仅修改对应的 host 变量为目标服务器路径:

image

运行后的到目标服务器的用户shell:

image

权限提升(Privilege Escalation)

为防止回话异常掉线,先把 kali 公钥写入 authorized_keys 文件,实现对目标服务ssh的免密登录,用于会话维持:

image

在检查当前用户的 sudo 配置时,发现可以免密执行一个二进制程序:

james@knife:~$ sudo -l Matching Defaults entries for james on knife: env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin User james may run the following commands on knife: (root) NOPASSWD: /usr/bin/knife

在 GTFOBins 中搜索,发现可以通过 exec 命令去执行系统命令,成功通过该方式进行权限提升。

https://gtfobins.github.io/gtfobins/knife/#sudo

image

额… 就这么简单的我当时都花了一个半小时… 真菜啊…

image

参考

  • https://docs.chef.io/workstation/knife_exec/


版权声明

除非另有说明,本网站上的内容均根据 Creative Commons Attribution-ShareAlike License 4.0 International (CC BY-SA 4.0) 获得许可。