RmExecute/readme.md

2.1 KiB
Raw Permalink Blame History

RmExecute

Remote Download and Memory Execute for shellcode framework

远程下载并内存加载的ShellCode框架已经支持x64

参(抄)考(袭)项目

windows下shellcode提取模板的实现

主要抄袭来源直接使用这位大佬的shellcode框架并且强烈推荐看下他文章内的doc分析的非常好

PIC_Bindshell

windows api hashing部分直接搬过来的

ReflectiveDLLInjection

准备抄袭

开(犯)发(罪)过程

效果图

bypassAV

How to use

开箱即用

修改ShellCode.cpp->StartSCode函数中的host和path改为您的域名和木马文件即可之后使用Release模式运行,即会在目录下生成123.bin文件,之后使用EXE_RUN_MT模式编译运行即可加载123.bin文件

或是自行调用123.bin文件

添加API

使用目录下的Get-FunctionsHash.ps1脚本添加API HASH到hash.h

计算HASH

之后在API.H中添加相关WINAPI 函数指针,作为搜索地址后调用的方式,之后在API.H->FUNCTIONS结构体中添加相关成员

之后在Tool.h->RmExecute::Initfunctions函数中调用

char szUser32[] = { 'u', 's', 'e', 'r', '3', '2', '.', 'd', 'l', 'l', 0 };
pfn->fnLoadLibraryA(szUser32);
pfn->fnMessageBoxA = (pfnMessageBoxA)GetProcAddressWithHash(HASH_MessageBoxA);

搜索函数来加载WINAPI。

之后就可以使用 fn.fnMessageBox(0, "text", "text", MB_OK);这样形式来调用winapi了。

字符串相关

参考第一个引用的文章链接,字符串必须要使用{'a','b','\0'};这样子的立即数形式

进阶 (很快)

使用XOR加密字符串

隐藏loadlibrary特征和url特征更不容易被发现

反射DLL加载技术

完全不使用LoadLibraryProcessExplorer、procexp64等工具无法检测到这个dll同时让程序变得模块化

纯shellcode加载

太奢侈了我就是想想