如何使用LightsOut生成经过混淆处理的DLL

关于LightsOut

LightsOut是一款功能强大的DLL生成工具,该工具可以帮助广大研究人员轻松生成经过混淆处理的DLL。该工具专为红队研究人员设计,生成的DLL可以在研究人员尝试绕过反病毒产品时禁用AMSI和ETW,从而更好地测试目标系统的安全性。

该工具可以随机化DLL中所有的WinAPI函数使用、XOR编码字符串和基础的沙箱检测,并使用了Mingw-w64将经过混淆处理的C代码编译为DLL文件,然后再加载到任何有AMSI或ETW的进程中,例如PowerShell。

该工具旨在辅助研究人员进行红队渗透测试,以测试反病毒产品AV/EDR的安全检测能力。

功能介绍

当前版本的LightsOut提供了下列功能:

1、对字符串进行XOR编码;

2、WinAPI函数名称随机化;

3、支持多种沙箱环境检测选项;

4、提供硬件断点绕过选项;

工具要求

当前版本的LightsOut仅支持在Linux操作系统上运行,且需要安装并配置好下列组件:

Python 3

Mingw-w64

工具下载

由于该工具基于Python 3开发,因此我们首先需要在本地设备上安装并配置好Python 3.x环境。接下来,广大研究人员可以直接使用下列命令将该项目源码克隆至本地:

git clone https://github.com/icyguider/LightsOut.git

然后切换到项目目录中,直接运行工具主脚本即可:

cd LightsOutpython3 lightsout.py

工具运行

_______________________|                       ||   AMSI + ETW          ||                       ||        LIGHTS OUT     ||        _______        ||       ||     ||       ||       ||_____||       ||       |/    /||       ||       /    / ||       ||      /____/ /-'       ||      |____|/          ||                       ||          @icyguider   ||                       ||                     RG|`-----------------------'usage: lightsout.py [-h] [-m <method>] [-s <option>] [-sa <value>] [-k <key>] [-o <outfile>] [-p <pid>]Generate an obfuscated DLL that will disable AMSI & ETWoptions:-h, --help       显示工具帮助信息和退出-m <method>, --method <method>要使用的绕过技术 (可选: patch, hwbp, remote_patch) (默认: patch)-s <option>, --sandbox <option>要使用的沙箱规避技术 (可选: mathsleep, username, hostname, domain) (默认: mathsleep)-sa <value>, --sandbox-arg <value>沙箱规避技术参数选项 (例如: WIN10CO-DESKTOP, testlab.local)-k <key>, --key <key>编码字符串所使用的密钥 (默认随机生成)-o <outfile>, --outfile <outfile>存储输出DLL的文件路径Remote options:-p <pid>, --pid <pid>要修补的远程进程PID

工具使用

我们可以直接将工具输出的DLL文件发送到目标系统中,然后通过多种方法将其加载进PowerShell中。比如说,我们可以通过LoadLibrary和P/Invoke实现加载:

或者更简单地操作,直接将PowerShell拷贝到一个任意位置,然后实现DLL测加载:

许可证协议

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

项目地址

LightsOut:【GitHub传送门】

参考资料

Memory Patching AMSI Bypass – Rasta Mouse

In-Process Patchless AMSI Bypass - Ethical Chaos

https://github.com/rad9800/misc/tree/main/hooks

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Gin 集成 prometheus 客户端实现注册和暴露指标

前言 当我们构建一个 Web 应用程序时&#xff0c;了解应用程序的性能和行为是非常重要的。Prometheus 是一个流行的开源监控系统&#xff0c;它提供了强大的指标收集和查询功能&#xff0c;可以帮助我们监控应用程序的各个方面。 在 Gin 中集成 Prometheus 可以让我们更方便地监…

使用Matplotlib绘制模拟上海城市气温变化图

模拟上海气温变化折线图 实现步骤 准备数据创建画布绘制图像显示图像 基本实现 示例代码&#xff1a; import matplotlib.pyplot as plt import random# 准备数据 x range(60) y_shanghai [random.uniform(15,18) for _ in x]# 创建画布 plt.figure(figure(20,8), dpi10…

Java 基础学习(十九)网络编程、反射

1 Socket编程 1.1 Socket编程概述 1.1.1 Socket简介 在网络编程中&#xff0c;Socket&#xff08;套接字&#xff09;是一种抽象概念&#xff0c;它用于在不同计算机之间进行通信。Socket可以看作是一种通信的端点&#xff0c;可以通过Socket与其他计算机上的程序进行数据传…

盛最多水的容器(力扣11题)

例题&#xff1a; 分析&#xff1a; 这道题给出了一个数组&#xff0c;数组里的元素可以看成每一个挡板&#xff0c;要找到哪两个挡板之间盛的水最多&#xff0c;返回盛水量的最大值。这其实是一个双指针问题。 我们可以先固定第一个挡板( i )和最后一个挡板( j )&#xff0c…

gitee创建仓库

描述 本文章记录了怎么在gitee上创建项目&#xff0c;以及使用vscode提代码到远程呢个仓库&#xff0c;如何创建一个新分支&#xff0c;并将新分支提交到远程仓库。 1、创建远程仓库 在创建远程仓库之前要先进行ssh密钥的设置 &#xff08;1&#xff09;打开黑窗口&#xff…

计算机丢失mfc110.dll的5种常用解决方法分享

丢失动态链接库文件&#xff08;DLL&#xff09;是比较常见的一种情况&#xff0c;其中之一就是“计算机丢失mfc110.dll”。这个问题通常是由于系统文件损坏或缺失引起的&#xff0c;给计算机的正常运行带来了困扰。为了解决这个问题&#xff0c;我总结了以下五种方法&#xff…

顶帽运算在OpenCv中的应用

项目背景 假如我们拍了一张自拍&#xff0c;想为自己的照片添加一个酷炫的火星飞舞的效果&#xff0c;素材库中正好有一张火焰的照片&#xff0c;如果想去除图中的火焰&#xff0c;只保留火星效果&#xff0c;可以使用顶帽子算法 图片中的火星部分正好属于比周围亮一些的斑块…

LabVIEW开发滚筒洗衣机动态监测系统

LabVIEW软件在滚筒洗衣机的动态监测和分析中扮演着关键角色。本案例展示了如何利用LabVIEW开发的系统来优化洗衣机的性能和可靠性。 首先&#xff0c;在建立洗衣机的动力学模型基础上&#xff0c;利用LabVIEW进行了关键零部件的动态优化设计。通过LabVIEW的高级计算和模拟功能…

【JavaFX】JDK11 基于Gson、hutool、Jackson持久化存储实体类数据的解决方案 (读取、追加、去重、写入json对象)

文章目录 开发环境效果前言一、Gson是什么?二、使用步骤1.引入依赖2.创建实体类创建 JsonFileService类创建JsonFileService的实现类 JsonFileServiceImpl三、实现效果开发环境 JDK11IDEA 2023.3Gson、hutool、JacksonJavaFX 11效果 前言 使用JDK1

112. 雷达设备(贪心/逆向思考)

题目&#xff1a; 112. 雷达设备 - AcWing题库 输入样例&#xff1a; 3 2 1 2 -3 1 2 1输出样例&#xff1a; 2 思路&#xff1a; 代码&#xff1a; #include <cstdio> #include <cstring> #include <iostream> #include <algorithm> #include<…

BMS、AFE、菊花链技术

一、BMS的分布式架构和集中式架构 AFE在从板中&#xff0c;用来采集电池电压和温度&#xff0c;以及均衡管理 BMS通常以分布式架构为主&#xff0c;即分为主板和从板。原来主从板上都有微处控制器。从板采集单体电池电压和温度&#xff0c;通过CAN总线传给主板。 而现在的趋势…

Oracle-数据库迁移之后性能变慢问题分析

问题背景&#xff1a; ​一套Oracle11.2.0.4的RAC集群&#xff0c;通过Dataguard switchover方式迁移到新机器之后&#xff0c;运行第一天应用报障说应用性能慢&#xff0c;需要进行性能问题排查 问题分析&#xff1a; 首先&#xff0c;登陆到服务器&#xff0c;用TOP看一眼两个…

虾皮马来站点选品:在虾皮(Shopee)5个热门品类和市场特点

在虾皮&#xff08;Shopee&#xff09;马来西亚站点选择商品时&#xff0c;卖家应该考虑一些热门品类和市场特点&#xff0c;以确保他们的产品能够满足当地消费者的需求并取得良好的销售业绩。以下是在虾皮&#xff08;Shopee&#xff09;马来西亚站点销售商品时需要考虑的五个…

裂变新模式:分销市场的翘楚

在当今的商业世界&#xff0c;推荐机制已经成为一种重要的营销策略。通过用户推荐&#xff0c;企业不仅能够扩大品牌影响力&#xff0c;还能有效降低获客成本。然而&#xff0c;如何设计一个合理的推荐机制&#xff0c;使得用户有足够的动力去推荐新人&#xff0c;同时保持团队…

【Java】接口和抽象类有什么共同点和区别?

个人简介&#xff1a;Java领域新星创作者&#xff1b;阿里云技术博主、星级博主、专家博主&#xff1b;正在Java学习的路上摸爬滚打&#xff0c;记录学习的过程~ 个人主页&#xff1a;.29.的博客 学习社区&#xff1a;进去逛一逛~ 【Java】接口和抽象类有什么共同点和区别&…

SQL Server注入之攻防技战法

那天下着很大的雨&#xff0c;母亲从城里走回来的时候&#xff0c;浑身就是一个泥人&#xff0c;那一刻我就知道我没有别的选择了 1.Mssql报错注入 0.判断数据库类型 1.爆当前用户名 2.爆版本 3.爆服务器名 4.判断数据库个数 5.获取全部数据库 语句只适合>2005 爆当前数据…

DDD落地实践-架构师眼中的餐厅(转)

本文以餐厅场景为叙事主线&#xff0c;以领域驱动为核心思想&#xff0c;结合架构设计与功能设计方法论。是从领域分析到落地的全过程案例&#xff0c;内容偏重于落地&#xff0c;因此不乏一些探讨&#xff0c;欢迎指正。 文章较长、全程干货、耐心读完、必有收获。 本文不针…

【docker】如何编写dockerfile文件,构建docker镜像

如何编写dockerfile文件&#xff0c;构建docker镜像 一、docker 镜像与 dockerfile1.1 什么是Docker镜像1.2 Docker 镜像的结构 二、dockerfile 中常用的构建指令三、dockerfile 内容示例四、构建 docker 镜像 一、docker 镜像与 dockerfile 1.1 什么是Docker镜像 Docker镜像…

虾皮跨境电商物流:为卖家提供高效灵活的物流解决方案

虾皮&#xff08;Shopee&#xff09;作为一家知名的跨境电商平台&#xff0c;其物流服务是其成功的关键因素之一。虾皮跨境电商物流服务为卖家提供了一站式的物流解决方案&#xff0c;从订单处理到最终交付&#xff0c;为卖家提供高效、灵活、成本效益高的物流服务&#xff0c;…

【教学类-43-13】 20240103 (4宫格数独:错误版:768套) 不重复的基础模板数量:768套

作品展示&#xff1a;——4宫格 768套不重复模板&#xff08;64页*12套题&#xff09; 有错误&#xff0c;实际数量小于768套 背景需求&#xff1a; 测试4宫格数独基础模板有几种。 写个程序&#xff0c;验算是不是真的是乘阶法的288种。 代码展示&#xff1a; 768套4宫格题…