实战攻防演练--利用微软自带Certutil命令ByPassAV上传C2
Certutil
Certutil.exe是Windows操作系统中的合法程序,主要用于管理证书相关操作。它提供了转储和显示证书颁发机构(CA)的配置信息、配置证书服务、备份和还原CA组件,以及验证证书、密钥对和证书链等功能,然而,由于其功能强大,很多攻击者滥用Certutil.exe程序将其用于攻击辅助,常用于远程下载,但不知道它还能加密解密本地文件(不会报毒,可以用来ByPassAV)
实战使用前提
在实战中有一种这有的场景,通过前期打点获取到了网站的入口,上传webshell拿下服务器网站权限,WebShell只能上传写入,有杀软和网站限制,只能上传txt,这种情况我就通过本次实战案例,给大家演示一下整个ByPass过程
加密exe格式木马为txt格式
首先,使用viper平台准备好C2木马,这里通过 Certutil -encode 1.exe 1.txt 命令进行加密导出,这里会修改exe格式为txt, 同时我们通过type查看命令,查看1.txt,看到文件有如下特征


Certutil 加密导出的特征
-----BEGIN CERTIFICATE-----
TVqQAAMAAAAEAAAA//8AALgAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAyAAAAA4fug4AtAnNIbgBTM0hVGhpcyBwcm9ncmFtIGNhbm5v
dCBiZSBydW4gaW4gRE9TIG1vZGUuDQ0KJAAAAAAAAAA5JBHdfUV/jn1Ff459RX+O
WoMEjn5Ff459RX6Of0V/jnQ96o58RX+OdD3ujnxFf45SaWNofUV/jgAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAA==
-----END CERTIFICATE-----
切割TXT文件并拼接、解密
由于某些场景会限制文件上传大小,没办法通过WebShell上传写入,可以通过将txt切割分为多个后上传

新建一个文件夹,全部上传,上传后目录如下所示

使用copy命令执行copy 001.txt + 002.txt + 003.txt + 004.txt 2.txt 将txt合并,按顺序拼接为2.txt,这里拼接后的2.txt文件内容与加密的1.txt一致

之后我们将加密导出的 2.txt 用 Certutil 进行解密操作,执行Certutil -decode 2.txt C2.exe 命令后,还原为我们的C2木马

如下图所示,已经还原为C2木马,我们执行,查看是否可以上线

到此一步已经完成上线,可进行后续操作

实战攻防演练--利用微软自带Certutil命令ByPassAV上传C2的更多相关文章
- win7下利用ftp实现华为路由器的配置文件上传和下载
win7下利用ftp实现华为路由器的配置文件上传和下载 1. Win7下ftp的安装和配置 (1)开始—>控制面板—>程序—>程序和功能—>打开或关闭Windows功能 (2 ...
- 如何利用git由本机向github上传文件
首先,下载一个git,安装. 安装成功之后,输入以下命令,引号内的为你自己的名字和邮箱git config --global user.name "Your Name"git co ...
- [开源应用]利用HTTPHandler+resumableJs+HTML5实现拖拽上传[大]文件
前言: 大文件传输一直是技术上的一大难点.文件过大时,一些性提交所有的内容进内存是不现实的.大文件带来问题还有是否支持断点传输和多文件同时传输. 本文以resumableJs为例,介绍了如何在ASP. ...
- .NetCore WebApi利用Swagger文档实现选择文件上传
介绍 实现这个功能主要还是依赖过滤器 在Swagger中利用 IOperationFilter 操作来实现文件上传 与之前处理结合Idr4授权一样的处理方式,不同的是授权处理的是Security,而文 ...
- 利用Django REST framework快速实现文件上传下载功能
安装包 pip install Pillow 设置 首先在settings.py中定义MEDIA_ROOT与MEDIA_URL.例如: MEDIA_ROOT = os.path.join(BASE_D ...
- 一个带展示的jsp上传控件模型
带展示上传控件的基本模型,无样式 jsp部分: <td> <form id="form1" enctype="multipart/form-data&q ...
- spring mvc利用MultipartResolver解析Multipart/form-data进行文件上传
之前的表单数据都是文本数据,现记录:利用MultipartResolver进行文件上传. ①首先,需引入commons-fileUpload和commons-io jar包,pom.xml文件的坐标: ...
- 利用VS自带的命令行工具查看和生产PublicKeyToken (转)
使用VS2013(或其他版本)命令行工具,键入:SN -T C:\*****.dll 就会显示出该dll具体的PublicKeyToken数值. 如果该程序集没有强命 名,则不会有PublicKeyT ...
- 利用VS自带的命令行工具查看和生产PublicKeyToken
使用VS2008(或其他版本)命令行工具,键入:SN -T C:\*****.dll 就会显示出该dll具体的PublicKeyToken数值. 如果该程序集没有强命 名,则不会有PublicKeyT ...
- Java 利用Apache Commons Net 实现 FTP文件上传下载
package woxingwosu; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import ...
随机推荐
- 【转载】AF_XDP技术详解
原文信息 作者:rexrock 出处:https://rexrock.github.io/post/af_xdp1/ 目录 1. 用户态程序 1.1 创建AF_XDP的socket 1.2 为UMEM ...
- 「学习笔记」FHQ-treap
FHQ-treap,即无旋 treap,又称分裂合并 treap,支持维护序列,可持久化等特性. FHQ-treap 有两个核心操作,分裂 与 合并.通过这两个操作,在很多情况下可以比旋转 treap ...
- Lazy(Func<T>)的异常缓存问题
Lazy可以提供多线程环境下的安全保障,但是用不好也是会跳到坑里. 我这里使用Lazy<t>(Func<T>)来创建一个Lazy实例,然后在需要的地方访问它的Value属性,它 ...
- mysql中使用sql语句统计日志计算每天的访问量
日志建表语句: CREATE TABLE `syslog` ( `syslogid` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(255) ...
- Elementary OS old version download 旧版本下载
Elementary OS 号称是最漂亮的Linux发行版,没有之一.确实,他的整体风格看起来就是特别舒服,说不出哪里特别好,但也挑不出什么毛病.相比之下,其他Linux的界面总感觉不太和谐.比如特别 ...
- 一分钟学一个 Linux 命令 - rm
前言 大家好,我是 god23bin,欢迎回到咱们的<一分钟学一个 Linux 命令>系列,今天我要讲的是一个比较危险的命令,rm 命令,没错,你可以没听过 rm 命令,但是删库跑路你不可 ...
- 2021-7-29 MySql多表查询详解
多表连接 左连接:返回第一张表的所有数据项然后拼接第二张表(左表全有,右表对应左表才有) 右连接:返回第二张表的所有数据项然后拼接第一张表(右表全有,左表对应右表才有) 内连接:返回两张表数据相等的数 ...
- React: Warning: `value` prop on `input` should not be null.
警告 解决方案 对value进行判断 修改后的效果 至此问题解决
- pip 更新
pip install --user --upgrade pip成功升级
- 七 APPIUM Android 定位方式(转)
1.定位元素应用元素 1.1通过id定位元素 Android里面定位的id一般为resrouce-id: 代码可以这样写: WebElement element = driver.findElemen ...