首页
学习
活动
专区
圈层
工具
发布

新版本 Redline 使用 Lua 字节码逃避检测

这种方式可以将恶意攻击进行混淆,避免安全软件检测到好识别的脚本文件(如 wscript、JScript 或 PowerShell 脚本),进一步增强了攻击的规避能力。...写入文件 后续这三个文件会被移动到指定路径中: 特定路径 可以看到,compiler.exe 由 msiexec.exe 执行,并以 readme.txt 作为参数。...操作行为 安装过程中,msiexec.exe 会创建一个计划任务来执行 compiler.exe,并将 readme.txt 作为参数。...文件的内容如下所示,攻击者以新名称 NzUw.exe 执行 compiler.exe,并以 Lua 字节码作为参数。...调试信息 进一步分析后,该脚本中将使用变量和参数进行定义: 调试信息 API 会使用 ffi 从 Lua 代码中直接访问 Windows API,定义 API 函数如下所示: 函数信息 它会使用 CreateMutexExW

72210

A Detailed Guide on AMSI Bypass

提供COM和Win32 API来调用AMSI,AMSI的工作流程如下: 正如您所见AMSI API是开放的,因此任何AV都可以从其函数中读取数据,在这里正在运行一个Windows脚本,当它通过AMSI...Invoke-Mimikatz "Inv”+"o+"ke"+"-Mimi"+"katz" 如您所见,只需断开一个字符串并使用+运算符将它们连接起来,我们就可以绕过AMSI,然而这种技术有其自身的缺点...,为了减少将代码编译为DLL的麻烦,您可以在此处查看我的fork,下载后确保将主包的名称从AmsiScanBufferBypass更改为Project或任何您喜欢的名称,因为AMSI也会阻止字符串AmsiScanBufferBypass...PowerShell会话中卸载AMSI unload2 – Matt Graeber的另一种方法,从当前PowerShell会话中卸载AMSI unloadsilent – Matt Graeber的另一种方法...\nishang.ps1 Invoke-AmsiBypass -Verbose "invoke-mimikatz" 文末小结 在本文中我们讨论了AMSI的基础知识、如何在程序中使用它们、工作流程以及绕过它们的

2K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【详解】PowerShell基本命令和绕过权限执行

    本文将介绍一些常用的 PowerShell 基本命令,并探讨如何在遇到权限限制时绕过这些限制执行脚本。PowerShell 基本命令1. 获取帮助​Get-Help​​:获取命令的帮助信息。...Invoke-WebRequest -Uri "https://api.example.com/data"绕过权限执行在某些情况下,你可能会遇到 PowerShell 脚本执行受限的情况。...使用 ​​-EncodedCommand​​ 参数绕过执行策略如果你有一个需要执行的脚本,但不想或不能更改系统的执行策略,可以将脚本转换为 Base64 编码的字符串,并通过 ​​-EncodedCommand​​...参数传递给 PowerShell。...下面将详细介绍一些基本的 PowerShell 命令以及如何在遇到权限限制时绕过这些限制执行代码。

    1.3K10

    11.反恶意软件扫描接口 (AMSI)

    在执行之前, 防病毒软件使用以下两个 API 来扫描缓冲区和字符串以查找恶意软件的迹象。...AmsiScanBuffer() AmsiScanString() 扫描内容缓冲区和字符串以查找恶意软件,也是对 API 及其传入参数进行分析,根据结果作评分以判断是否应该查杀。...5.amsi从循环缓冲区取出内容传递给杀毒软件。 6.杀毒软件拿到数据后判断宏是否为恶意的。 6.如果行为是无恶意的,那么宏可以执行。否则,关闭宏会话并发出响应警报和处理恶意文件。...(“参数 1”, ..., “参数 n”); API_or_function_Name>(“参数 1”, ..., “参数 n”); 无论代码怎么样混淆加密,被调用的函数、方法和...2.为低信任文档启用:如果为低信任文档启用该功能,则将为启用宏的所有文档启用该功能,除了: 在宏安全设置设置为“启用所有宏”时打开的文档 从可信位置打开的文档 作为受信任文档的文档 包含由可信发布者数字签名的

    5.8K20

    requestbody requestparam pathvariable前端端实战,让你彻底了解如何传值

    @RequestParam@RequestParam注解用于从URL的查询字符串中获取值,并将其绑定到控制器方法的参数上。...这个注解可以处理简单的数据类型,如字符串、布尔值和数字,也可以处理集合类型的数据。...@RequestParam的工作原理是通过RequestMappingHandlerAdapter中的invokeHandlerMethod方法来解析URL中的查询参数,并将其作为方法参数传递给控制器方法在...@PathVariable注解用于从URL模板变量中提取值,并将其绑定到控制器方法的参数上。这在构建RESTful服务时非常有用,因为它允许你将URL的一部分作为参数动态处理。...@RequestBody将数据作为请求的主体发送给后端axios.post('/api/endpoint', dataObject)@RequestParam将数据作为 URL 查询参数发送给后端axios.get

    1.6K10

    EntityFramework Core 学习扫盲

    下文示例中将使用Visual Studio自带的Local Sql Server作为演示数据库进行演示,不过可以放心的是,大部分示例都能流畅地在各种关系型数据库中实现运行,前提是更换不同的DATABASE...PROVIDERS,如NPGSQL,MYSQL等。...在Fluent Api中,有两种方法可以指定备用键,一种是当开发者将实体中的属性作为另一个实体的外键目标,另一种是手动指定。EF CORE的默认约束是前者。...如新增Blog时,blog_type列将写入blog_base字符串,新增RssBlog时,blog_type列将写入blog_rss字符串。...唯一需要注意的是,关系设置请从子端(如User和Blog呈一对多对应时,从Blog开始)开始,否则配置不慎容易出现多个外键的情况。

    10.5K90

    一篇文章解锁微信支付

    由于微信支付涉及了很多场景,本文我们只学习如何在公众号、小程序中接入微信支付。...API密钥需要一个32位的随机字符串,记得不要随意更改API密钥。 在微信API v3版本中,除了要配置API密钥外,还需要配置APIv3密钥和申请CA颁发的API证书。...下单接口涉及到的主要参数,只列举重要的几个参数: 请求参数 是否必传 类型 描述 appid 是 String 公众号appid mch_id 是 String 商户号 nonce_str 是 String...参数名 是否必传 类型 描述 appId 是 String 公众号id timeStamp 是 String 当前时间戳 nonceStr 是 String 随机字符串 package 是 String...商户在T+1日从微信支付侧获取T日的交易账单,并与商户系统中的订单核对。如出现订单在微信支付侧成功,但是在商户侧未成功的情况,商户需要给用户补发货或者退款处理。

    1.7K20

    无招胜有招: 看我如何通过劫持COM服务器绕过AMSI

    在Windows 10中,Microsoft的反恶意软件扫描接口(AMSI)被作为新功能被引入,作为标准接口,该功能可以让反病毒引擎将特征规则应用于机器的内存和磁盘上的缓冲区中去。...在本文中,我们的实验是一个通过PowerShell进行的AMSI测试示例,测试过程是当AMSI模块接受外部传进来的脚本块并将其传递给Defender进行分析的时候进行劫持操作,具体可见下图所示: 正如你所看到的...这个过程我们在IDA中可以看出,从图中 我们可以看到COM服务接口ID(IID)和ClassID(CLSID)传递给CoCreateInstance(): 甚至,我们可以通过查看ProcMon来验证这一点...在进行研究之前,我们需要明白的是:基本上,脚本解释器(如PowerShell)从工作目录加载amsi.dll,而不是从安全路径(如System32)加载它。...如您所见,现在正在查询注册表以查找AMSI的COM服务器: 使用易受攻击的AMSI DLL,从图中可以看出我们现在可以执行COM服务器劫持: 总结: 尽管微软在补丁#16232中对该漏洞进行了修复,但仍然可以通过使用旧的

    3.4K70

    AD域攻防权威指南:三十七.使用AzureHound对Microsoft Entra ID进行分析(一)

    (一)安装配置AzureHound1)通过执行gitclone命令来从GitHub上拉取AzureHound代码,执行结果如图1-1所示。...AzureHound代码编译成可执行文件(二)采集导出MicrosoftEntraID数据AzureHound支持通过"用户名/密码组合""JWT(JSONWebToken)""刷新令牌""服务主体密钥...,我们则无法使用已获取的用户名密码与AzureHound进行身份验证,在这种情况下,我们可在Powershell命令行中执行如下命令调用AzureAPI来获取租户的刷新令牌,并将刷新令牌传递给AzureHound...图1-6成功登录MicrosoftAzurePowerShell应用程序4)返回刚才执行PowerShell脚本的窗口,将如下脚本内容复制到PowerShell...api-version=1.0)请求访问令牌。最后执行$Tokens命令来将Invoke-RestMethod调用后的访问请求响应结果打印出当前屏幕中。

    8510

    ASP.NET (Core)WebApi参数传递实操演练

    Asp.NET Web API中Controller是如何解析从客户端传递过来的数据,然后赋值给Controller的参数的,也就是参数绑定或者模型绑定。 常见的绑定方式有如下四种。...路由值(Route Values):通过导航到路由如{controller}/{action}/{id}此时将绑定到id参数。...查询字符串(QueryStrings):通过查询字符串中的参数来绑定,如name=Jeffcky&id=1,此时name和id将进行绑定。...所以通过上述讲述我们知道有多种方式将数据从客户端传递到服务端,然后模型绑定会自动为我们创建正确的方法来绑定到后台参数中,简单和复杂的类型参数都会进行绑定。...查询字符串(QueryStrings):通过查询字符串中的参数来绑定,如name=Jeffcky&id=1,此时name和id将进行绑定,对应WebAPI中媒体 类型格式化器JsonMediaTypeFormatter

    4.7K20

    如何在 TypeScript 中使用函数

    在本节中,我们将学习如何在 TypeScript 中将函数参数标记为可选。 要将函数参数转换为可选参数,请添加 ? 参数名称后面的修饰符。...: T 例如,为我们的 getUserFullName 函数添加一个可选的前缀参数,它是一个可选字符串,可以作为前缀添加到用户的全名: type User = { firstName: string...这些数据可以存储在任何地方,例如文件、数据库或 API 请求后面。...在 JavaScript 中,这通常是通过有一个参数来完成的,该参数可以采用不同类型的值,如字符串或数字。将多个实现设置为相同的函数名称称为函数重载。...函数重载没有主体;他们只有参数列表和返回类型。 接下来,实现函数本身,它应该有一个与所有函数重载兼容的参数列表。

    17K10

    在Azure Stack上部署Kubernetes

    本文将介绍如何在Azure Stack ASDK环境里部署Kubernetes,在AKS for Azure Stack Mooncake正式发布之前,可以让我们更方便地进行测试。...但是Azure Stack则没那么简单,原因是因为Azure Stack的ARM API端点和Azure公有云完全不同,对于生产环境的多节点Azure Stack来说,则每个企业部署,其ARM API端点都有变化...但是这样做太复杂,而且容易出错,所以我们可以根据老外编写的一个PowerShell脚本,我对其进行了修改,以便支持mooncake账户。来自动帮我们完成所需的工作。...命令会从ERCS虚拟机的特权端点获取Azure Stack的证书指纹,并且会自动在Azure中国创建服务主体,其名称和密码如命令行所示。...确保Azure服务主体拥有Azure Stack的权限 由于Kubernetes需要能够在Azure Stack上创建负载均衡器、NSG规则等资源,所以需要对Azure服务主体(Azure SPN)进行赋权

    1K20

    在Azure Stack上部署Kubernetes

    本文将介绍如何在Azure Stack ASDK环境里部署Kubernetes,在AKS for Azure Stack Mooncake正式发布之前,可以让我们更方便地进行测试。...但是Azure Stack则没那么简单,原因是因为Azure Stack的ARM API端点和Azure公有云完全不同,对于生产环境的多节点Azure Stack来说,则每个企业部署,其ARM API端点都有变化...但是这样做太复杂,而且容易出错,所以我们可以根据老外编写的一个PowerShell脚本,我对其进行了修改,以便支持mooncake账户。来自动帮我们完成所需的工作。...命令会从ERCS虚拟机的特权端点获取Azure Stack的证书指纹,并且会自动在Azure中国创建服务主体,其名称和密码如命令行所示。...确保Azure服务主体拥有Azure Stack的权限 由于Kubernetes需要能够在Azure Stack上创建负载均衡器、NSG规则等资源,所以需要对Azure服务主体(Azure SPN)进行赋权

    93020

    Spring注解篇:@PathVariable详解!

    概述@PathVariable注解用于从URL路径中提取变量并将其传递给控制器的处理方法。...源码解析@PathVariable注解的实现依赖于Spring MVC的参数解析机制。当框架发现此注解时,会自动从请求的URL中提取相应的路径变量,并将其作为参数传递给处理方法。...@PathVariable Long userId:这个注解用于将URL路径中的{userId}变量作为方法的参数。...核心类方法介绍@PathVariable注解的核心在于其能够与Spring MVC的其他注解(如@GetMapping、@PostMapping等)结合使用,支持从URL路径中提取变量并传递给控制器方法...它使用@PathVariable注解来接收URL中的resourceId参数。返回值:getResource方法返回一个字符串,显示资源的ID。这个字符串将作为HTTP响应的正文发送给客户端。

    2K10

    Stego-Campaign 传播 AsyncRAT

    WScript.exe 执行 PowerShell 代码 下面的 PowerShell 代码执行后,受害者将得到一个在看似合法的MSBuild进程下运行的有效载荷(在本例中为 AsyncRAT)。...2 、VAI使用$finalPayloadURL传递作为第一个参数、字符串"MSBuild"作为第五个参数进行调用。 3 、使用指定参数调用该方法后,URL$finalPayloadURL会被反转。...4 、然后从 Base64 解码有效载荷,并将其与合法的完整路径一起MSBuild传递给Ande负责进程挖空的函数,我们接下来将深入研究该函数。...当Ande函数执行时,解码后的payload被赋值给data参数,完整的MSBuild路径被传递给path参数。...执行被转移到另一个名为的函数,uE000该函数使用 API 组合来生成一个MSBuild处于挂起状态的进程,清空其内存,为有效载荷创建额外的内存,将其写入,然后恢复执行。

    43800

    Serverless-实现一个短网址服务(二)

    主要需要注意的内容有: 腾讯云函数的API调用中如何读取path中的参数 腾讯云函数中的集成响应和透传响应的区别 从请求的短链接获取真实url 如前文所属,我们生成的短链接是使用hashids库从整数id...生成的,所以获取真实url的过程也非常简单,只需要调用hashids的decode方法就可以获取到原始的整数id,然后用这个作为参数查询数据库获取到真实url 直接贴代码 # -*- coding: utf8...我们一般生成短网址后使用的方式是这样的: http://域名/{短链接字符串} 比如这样一个短链接: http://short.url/zv zv就是我们生成的短字符串,在腾讯云中要能够使用这种类型的...'] 集成响应和透传响应 简单来说透传响应只会返回200状态码,将返回的内容作为消息体透传给前端,所以一般的返回json数据的函数调用可以直接使用此方式。...透传响应,是指 API 网关将云函数的返回内容直接传递给API请求方。 通常这种响应的数据格式直接确定为JSON格式,状态码根据函数执行的状态定义,函数执行成功即为 200 状态码。

    1.8K00

    解决方案:TypeError: a bytes-like object is required, not str

    ,但我们直接传递了从文件中读取的字符串对象data,这将导致TypeError: a bytes-like object is required, not 'str'错误。...pythonCopy codeimport requests# 定义请求URL和参数url = "https://example.com/api"data = { "username": "john...然后,我们使用requests.post()方法发送POST请求,将byte_data作为请求的数据传递给data参数。 最后,通过检查响应的状态码,我们可以判断请求是否成功。...通过这个示例,我们可以看到如何在实际应用场景中将字符串对象转换为字节对象来解决TypeError: a bytes-like object is required, not 'str'错误,以确保请求发送和数据处理的正常进行...bytes类型有自己的一些方法,如decode()方法用于将字节序列解码为字符串,hex()方法用于将字节序列转换成十六进制字符串等。

    4.5K10

    javaweb中的请求与响应--基于postman工具的应用(附带postman的详细安装步骤)

    二、Postman简介 Postman 是一个流行的 API 开发工具,主要用于测试、调试和管理 API。...实时调试: 提供实时的响应预览和格式化,方便开发者查看 API 返回的数据,支持多种数据格式,如 JSON、XML、HTML 等。...它接收一个名为 hobby 的参数,类型为 String[]。这表示它可以接收一个名为 hobby 的数组作为 HTTP 请求的参数。...Spring MVC 将尝试将 HTTP 请求中的日期时间参数按照指定的格式 "yyyy-MM-dd HH:mm:ss" 解析为 LocalDateTime 对象,并将其传递给 updateTime 参数...@RequestBody 注解告诉 Spring MVC 从 HTTP 请求的主体中提取数据,并尝试将其转换为 user 对象。

    24810

    在中国区Azure Stack上部署Kubernetes

    本文将介绍如何在Azure Stack ASDK环境里部署Kubernetes,在AKS for Azure Stack Mooncake正式发布之前,可以让我们更方便地进行测试。...但是Azure Stack则没那么简单,原因是因为Azure Stack的ARM API端点和Azure公有云完全不同,对于生产环境的多节点Azure Stack来说,则每个企业部署,其ARM API端点都有变化...但是这样做太复杂,而且容易出错,所以盆盆根据老外编写的一个PowerShell脚本,对其进行了修改,以便支持Azure中国的Azure AD账户,来自动帮我们完成所需的工作。...命令会从ERCS虚拟机的特权端点获取Azure Stack的证书指纹,并且会自动在Azure中国创建服务主体,其名称和密码如命令行所示。...确保Azure服务主体拥有Azure Stack的权限 由于Kubernetes需要能够在Azure Stack上创建负载均衡器、NSG规则等资源,所以需要对Azure服务主体(Azure SPN)进行赋权

    1.3K60

    使用AJAX获取Django后端数据

    使用Django服务网页时,只要用户执行导致页面更改的操作,即使该更改仅影响页面的一小部分,它都会将完整的HTML模板传递给浏览器。...then(data => { //Perform actions with the response data from the view }) Python Copy URL 提取将URL作为其第一个参数...根据Django项目的URLconf和视图的配置方式,URL可能包含关键字参数或查询字符串,我们希望在视图中使用该参数来选择请求的数据。 Headers 设置AJAX请求头参数。...我们希望数据以JSON形式从视图返回,因此我们将Accept参数设置为application/json。在视图中,我们可能要确保该请求是AJAX请求。...将根据那些URL参数或查询字符串(如果使用的话)从数据库中检索数据。我们要发送回页面的数据必须在使用JsonResponse。 调用之前,请确保从django.http导入JsonResponse。

    10.1K40
    领券