DVenom:一款功能强大的Shellcode加密封装和加载工具

关于DVenom

DVenom是一款功能强大的Shellcode加密封装和加载工具,该工具专为红队研究人员设计,可以帮助红队成员通过对Shellcode执行加密封装和加载实现反病毒产品的安全检测绕过。

功能介绍

1、支持绕过某些热门反病毒产品;

2、提供了多种加密方法,包括RC4、AES256、XOR和ROT;

3、可以生成C#、Rust、PowerShell、ASPX和VBA形式的源代码;

4、采用了不同的Shellcode加载技术,其中包括VirtualAlloc、进程注入、NT Section注入、镂空进程注入;

工具要求

1、配置Golang环境;

2、了解Shellcode操作的基础知识;

3、熟悉C#、Rust、PowerShell、ASPX和VBA代码;

工具部署

广大研究人员可以使用下列方式将项目源码拷贝到本地设备中,并在本地设备上部署和使用DVenom。

首先,我们需要使用下列命令将该项目源码克隆至本地:

$ git clone https://github.com/zerx0r/dvenom

然后切换到项目目录中:

$ cd dvenom

使用go build命令完成项目代码构建:

$ go build /cmd/dvenom/

工具使用

安装完成后,我们就可以直接使用下列命令运行DVenom了:

./dvenom -h

命令行参数

-e:指定Shellcode的加密类型,支持的类型有xor、rot、aes256和rc4;

-key:提供要使用的加密密钥;

-l:指定语言,支持的语言有cs、rs、ps1、aspx和vba;

-m:指定方法类型,支持的类型有valloc、pinject、hollow和ntinject;

-procname:提供需要注入的进程名称,默认为“explorer”;

-scfile:提供shellcode文件的路径地址;

工具使用样例

下列命令可以生成包含加密Shellcode的C#源代码:

./dvenom -e aes256 -key secretKey -l cs -m ntinject -procname explorer -scfile /home/zerx0r/shellcode.bin > ntinject.cs

注意,如果选择了AES256作为加密方法,工具将自动生成初始化向量IV。

工具限制

编程语言

支持的函数方法

支持的加密方法

C#

valloc, pinject, hollow, ntinject

xor, rot, aes256, rc4

Rust

pinject, hollow, ntinject

xor, rot, rc4

PowerShell

valloc, pinject

xor, rot

ASPX

valloc

xor, rot

VBA

valloc

xor, rot

许可证协议

本项目的开发与发布遵循MIT开源许可证协议。

项目地址

DVenom:【GitHub传送门】

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/291275.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

手把手教你,Selenium 遇见伪元素该如何处理?

Selenium 遇见伪元素该如何处理? 前言 问题发生 在很多前端页面中,大家会见到很多::before、::after 元素,比如【百度流量研究院】: 比如【百度疫情大数据平台】: 以【百度疫情大数据平台】为例&#xff…

Prometheus-AlertManager 邮件告警

环境,软件准备 本次演示环境,我是在虚拟机上安装 Linux 系统来执行操作,以下是安装的软件及版本: System: CentOS Linux release 7.6Docker: 24.0.5Prometheus: v2.37.6Consul: 1.6.1 docker 安装prometheus,alertmanage,说明一下这里直接将…

数据结构与算法——第一次大作业【考点罗列//错题修正//题解】

目录 一、选择题 ——绪论—— 1.【单选题】——数据结构的研究方向 2.【单选题】 ——数据结构的研究问题 3.【单选题】——数据结构的基本术语及概念 4.【单选题】 ——数据结构与算法 5.【单选题】 ——时间复杂度计算 ——顺序表与链表—— 6.【单选题】——顺序表…

Python爬虫之使用代理IP池维护虚拟用户

文章目录 前言一、什么是代理IP池?二、爬取代理IP三、验证代理IP的可用性四、维护代理IP池五、使用代理IP池进行爬取六、总结关于Python技术储备一、Python所有方向的学习路线二、Python基础学习视频三、精品Python学习书籍四、Python工具包项目源码合集①Python工具…

玻色量子与北京师范大学在光量子计算领域持续突破,《Quantum》发表SNN-CIM

​2023年10月,北京玻色量子科技有限公司(以下简称“玻色量子”)联合北京师范大学研究团队在知名科技期刊Quantum发表了以《Combinatorial optimization solving by coherent Ising machines based on spiking neural networks(基于…

知识图谱与云计算

内容来自B站视频 复旦 肖仰华 老师的讲座,记在这里,不然一会就忘了。 https://www.bilibili.com/video/BV1HG4y1h7zK/?p5&spm_id_frompageDriver 智能的发展是由感知到认知,当下需要发展机器的认知能力。 实现认知智能需要人工智能的很…

中国国际光伏展

中国国际光伏展(China International Solar Photovoltaic Exhibition)是中国规模最大、最具影响力的光伏领域展览会之一。该展会是由中国光伏行业协会主办,每年在中国的不同城市举办。 中国国际光伏展吸引了来自全球各地的光伏企业、专业机构…

揭秘Python的运算符:从加减乘除到幂次开方,一网打尽!

文章目录 一、python运算符二、运算符1.算术运算符1.1 加1.2 减1.3 乘1.4 除1.5 取模1.6 幂1.7 取整除 2.比较运算符2.1 等于2.2 不等于2.3 大于2.4 小于2.5 大于等于2.6 小于等于 3.赋值运算符3.1 加法赋值运算符3.2 减法赋值运算符3.3 乘法赋值运算符3.4 除法赋值运算符3.5 取…

开启物联网的魔法之门 - 深入探索发布/订阅模式

文章目录 MQTT 发布/订阅模式MQTT 发布/订阅中的消息路由MQTT 与 HTTP 请求响应MQTT 与消息队列Paho Java 使用示例结语 MQTT 发布/订阅模式 发布订阅模式(Publish-Subscribe Pattern)是一种消息传递模式,它将发送消息的客户端(发…

leetcode13 罗马数字转整数

题目描述:罗马数字由七种字符组成,分别为 I、V、X、L、C、D 和 M,对应的数值分别为 1、5、10、50、100、500 和 1000。在一般情况下,小的数字位于大的数字右边,但有特殊情况,如 IV 表示 4,IX 表…

构建健康游戏环境:DFA算法在敏感词过滤的应用

现在的游戏有敏感词检测这一点,相信大家也不陌生了,不管是聊天,起名,签名还是简介,只要是能让玩家手动输入的地方,一定少不了敏感词识别,至于识别之后是拒绝修改还是星号替换,这个就各有各的做法了,但是绕不开的一定是需要高效的敏感词检测机制。 相信大家对于游戏里聊…

25. 数组作为函数参数

写代码时,我们会将数组作为参数传给函数 冒泡排序: 两两相邻的元素进行比较,可能的话进行交换 一趟冒泡排序会将一个元素放在其最后应该在的位置 10个数字只需9趟,第一趟10个数字待排序,9对比较;第二趟…

Hotspot源码解析-第十二章-线程栈保护页

了解保护页,先从几个问题开始吧 1、为什么线程栈有栈帧了,还要有保护页? 答:在操作系统中内存可以看成是一个大数组,这就有一个问题,线程之间可能会互相踩了别人的内存空间,所以栈空间也存在这…

OPENGL,GPU图形库Skia在Windows下编译多种VS版本的DLL

这几天刚改了改Duilib,之前为了让Duilib更好的支持透明异形窗体所以把Duilib改为Gdi和Gdi的双渲染引擎。于是想到了有时间就把渲染引擎完全独立为渲染接口,可以增加更多的渲染引擎。现在来说Skia是个很不错的渲染,之前我只是单独编译了VS2013…

集群部署篇--Redis 集群动态伸缩

文章目录 前言一、redis 节点的添加1.1 redis 的实例部署:1.2 redis 节点添加:1.3 槽位分配:1.4 添加从节点: 二、redis 节点的减少2.1 移除主节点2.1.1 迁移槽位2.1.1 删除节点: 三、redis 删除节点的重新加入3.1 加入…

Android Studio新手实战——深入学习Activity组件

目录 前言 一、Activity简介 二、任务栈相关概念 三、常用Flag 四、结束当前Activity 五、Intent跳转Activity 六、更多资源 前言 Android是目前全球最流行的移动操作系统之一,而Activity作为Android应用程序的四大组件之一,是Android应用程序的核…

一文讲透怎样用SPSS做二项Logistic回归分析?结果如何解释?

推荐采用《SPSS统计分析入门与应用精解(视频教学版)》 杨维忠、张甜 清华大学出版社“7.4 二元Logistic回归分析” 的解答。 本节内容选自《SPSS统计分析入门与应用精解(视频教学版)》 杨维忠、张甜 清华大学出版社“7.4 二元Logi…

对象克隆学习

假如说你想复制一个简单变量。很简单: int apples 5; int pears apples; 不仅仅是int类型,其它七种原始数据类型(boolean,char,byte,short,float,double.long)同样适用于该类情况。 但是如果你复制的是一个对象,情况就有些复杂了。 …

VMware Workstation虚拟机CentOS 7.9 配置固定ip的步骤

VMware Workstation虚拟机CentOS7.9配置固定ip的步骤 编辑虚拟机 打开VMware Workstation。 选择要配置的虚拟机,但不要启动它。 点击“编辑虚拟机设置”(Edit virtual machine settings)。 选择“网络适配器”(Network Adapter&…

Mybatis源码基本原理--XML版

文章目录 mybatis是什么架构设计首先建立起Mapper的代理工程和代理映射器的注册和使用XML文件解析数据源解析、创建和使用SQL执行器(Executor)的定义与实现SQL解析参数处理器:策略模式实现封装处理结果注解 mybatis 是什么 MyBatis 是一款优…