标签 - certutil

? certutil ?    2020-01-10 17:25:25    1473    0    0

前言

写这篇的起因是围观了一点对话:

问:在工作组环境下,db服务器不出网(站库分离),有cmdshell。如果只是单单针对这个入口,有什么思路进行深入?

答:在echo正常的情况下,可以将工具打成base64丢上去抓明文密码,或者hash。

将工具做成base64丢上目标纯内网db服务器 这是什么操作?

我去问了我朋友,他就跟我说了一个 certutil,剩下的就靠自己操作了。


Certutil 是什么?

certutil.exe 是一个合法Windows文件,用于管理Windows证书的程序。

微软官方是这样对它解释的:

Certutil.exe是一个命令行程序,作为证书服务的一部分安装。您可以使用Certutil.exe转储和显示证书颁发机构(CA)配置信息,配置证书服务,备份和还原CA组件以及验证证书,密钥对和证书链。

但是此合法Windows服务现已被广泛滥用于恶意用途。

渗透中主要利用其 下载编码解码替代数据流 等功能。
title


基于渗透的 Certutil 语法

大佬们的博客里面都是参数拿起来就用,我不懂,所以在 Certutil 的 Windows 官方文档去找了下跟渗透有关、可以被利用的相关语法、参数。

title

参数:

  • -f
    覆盖现有文件。
    有值的命令行选项。后面跟要下载的文件 url。

  • -split
    保存到文件。
    无值的命令行选项。加了的话就可以下载到当前路径,不加就下载到了默认路径。

  • -URLCache
    显示或删除URL缓存条目。
    无值的命令行选项。
    (certutil.exe 下载有个弊端,它的每一次下载都有留有缓存。)

  • -encode
    将文件编码为Base64

  • -decode
    解码Base64编码的文件


渗透测试中的应用

下载功能

(1) 保存在当前路径,文件名称同URI

语法:

  1. certutil.exe -urlcache -split -f 文件url

payload:

title

效果:

如图,没有问题:
title

(2) 保存在当前路径,指定保存文件名称

语法:

  1. certutil.exe -urlcac