x64 QWORD Xor shellcode encoder】的更多相关文章

#!/usr/bin/env python #Filename: Xor_QWORD_x64.py #coding=utf-8 import re import sys import random import struct class QWORDXorEncoder: def __init__(self): self.name = "x64 QWORD Xor Encoder" self.description = "x64 QWORD Xor shellcode enco…
首发先知: https://xz.aliyun.com/t/7170 自己还是想把一些shellcode免杀的技巧通过白话文.傻瓜式的文章把技巧讲清楚.希望更多和我一样web狗也能动手做到免杀的实现. 文中我将shellcode免杀技巧分为  "分离"."混淆"两个大类,通过不同技巧针对不同检测方式,也就是常听到的特征检测.行为检测.云查杀. 个人能力有限,文中出现错误还请斧正.轻喷. 0x01 那些shellcode"分离"免杀 首先来看看关于…
1.介绍 需要多少行代码转换hex成反汇编呢? 多亏了Python的Capstone库,做这件事只需要五行. 在二进制分析中,进行Exploit开发或逆向工程时,需要快速将十六进制的Shellcode反编译成反汇编.你可以使用像OllyDbg或IDA Pro这样的反编译工具,但如果你不想使用一个成熟的反编译工具执行这个小任务,那么下面的Python代码将有助于你把Shellcode转换成反汇编形式 如果你还没有安装capstone,那么你需要使用以下方法进行安装: 2.安装 2.1.基于Debi…
metasploit的模块构成及功能分析  转载自----http://forum.cnsec.org/thread-94704-1-1.html 今天我们介绍一下metasploit的基础架构和 市面上介绍metasploit的书不少,网上metasploit的使用说明的文章更是满天飞,可是没有哪一本书或者哪一篇文章来介绍metasploit的目录结构和他的功能,今天我们就来介绍一下metasploit的文件结构和每个部分的功能以及参数. exploit@ubuntu:/pentest/fra…
Metasploit是一款开源的安全漏洞检测工具,可以帮助安全和IT专业人士识别安全性问题,验证漏洞的缓解措施,并管理专家驱动的安全性进行评估,适合于需要核实漏洞的安全专家,同时也适合于强大进攻能力的渗透测试专家.Metasploit提供真正的安全风险情报,这这种可以扩展的模型将负载控制.编码器.无操作生成器和漏洞整合在一起,使Metasploit成为一种研究高危漏洞的途径.它集成了各平台上常见的溢出漏洞和流行的shellcode ,并且不断更新.最新版本的MSF包含了750多种流行的操作系统及…
  0x01初识Meterpreter 1.1.什么是Meterpreter Meterpreter是Metasploit框架中的一个扩展模块,作为溢出成功以后的攻击载荷使用,攻击载荷在溢出攻击成功以后给我们返回一个控制通道.使用它作为攻击载荷能够获得目标系统的一个Meterpreter shell的链接.Meterpreter shell作为渗透模块有很多有用的功能,比如添加一个用户.隐藏一些东西.打开shell.得到用户密码.上传下载远程主机的文件.运行cmd.exe.捕捉屏幕.得到远程控制…
原文链接:MSFvenom 1.使用MSFvenom命令行界面 msfvenom是Msfpayload和Msfencode的组合,将这两个工具集成在一个框架实例中. msfvenom的优点是: 一个单一的工具 标准化的命令行选项 速度提升 Msfvenom有多种选项可供使用: root@kali:~# msfvenom -h Error: MsfVenom - a Metasploit standalone payload generator. Also a replacement for ms…
近期用户反馈某台服务器总感觉性能不是很好存在卡顿,于是今天远程上去分析. 打开任务管理器发现CPU使用率非常低,内存使用也在接受范围内(10/64G).不过我有一个偏好就是不喜欢用系统自带的任务管理器查看资源,顺手把procexp搞上去再看一遍.发现rundll32.exe显示占用了62%左右的CPU资源,加载执行一个名为HalPluginServices.dll.之前看过<深入解析Windows操作系统>,就对前缀Hal(Hardware Abstraction Layer)有个概念.和它并…
前言 本文由 本人 首发于 先知安全技术社区: https://xianzhi.aliyun.com/forum/user/5274 这个是最近爆出来的漏洞,漏洞编号:CVE-2017-13772 固件链接:http://static.tp-link.com/TL-WR940N(US)_V4_160617_1476690524248q.zip 之前使用 firmadyn 可以正常模拟运行,但是调试不了,就没有仔细看这个漏洞.今天突然想起 他会启动一个 ssh 服务,那我们是不是就可以通过ssh…
免杀原理及基础问题回答 实验内容 任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程等免杀工具或技巧 使用msf编码器生成各种后门程序及检测 使用veil-evasion生成后门程序及检测 半手工注入Shellcode并执行 任务二:通过组合应用各种技术实现恶意代码免杀 任务三:用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本 一.正确使用msf编码器,msfvenom生成如jar之类的…
2018-2019-2 20165312<网络攻防技术>Exp3 免杀原理与实践 课上知识点总结 1.恶意软件检测机制 基于特征码的检测(需要定期更新病毒库) 启发式恶意软件检测(实时监控,开销较大) 基于行为的恶意软件检测(如API监控) 2.免杀技术综述 改变特征码 加壳(拥有.exe文件) 压缩壳 加密壳 shellcode+encoder 重写重编译(veil-evasion或者手工) 半手工化(主流) 改变行为 通讯方式 尽量使用反弹式连接 使用隧道技术 加密通讯数据(如https)…
https://cloud.tencent.com/developer/article/1507913 首先准备工具 VS2017 IIS 开始开发 先打开 VS 创建一个 winfrom 项目然后添加一个 C# dll 项目 IIS_backdoor_dll 项目代码 using System; using System.Collections; using System.Collections.ObjectModel; using System.Diagnostics; using Syst…
0x01 go免杀 由于各种av的限制,我们在后门上线或者权限持久化时很容易被杀软查杀,容易引起目标的警觉同时暴露了自己的ip.尤其是对于windows目标,一个免杀的后门极为关键,如果后门文件落不了地,还怎么能进一步执行呢?关于后门免杀,网上的介绍已经很多了,原理其实大同小异.看了很多网上的案例,发现网上比较多都是用C/C++和python来进行免杀,但是很多已经被杀软看的死死的, 非常容易就被识别出来了,那我想能不能用一种稍微小众一点的语言来写免杀呢,这里就不得不说到go语言. Go语言专门…
一.前言 注入DLL的方式有很多,在R3就有远程线程CreateRemoteThread.SetWindowsHookEx.QueueUserApc.SetThreadContext 在R0可以使用apc或者使用KeUserModeCallBack 关于本文是在32位和64位下使用SetThreadContext注入DLL,32位下注入shellcode加载dll参考 创建进程时注入DLL,64位下shellcode通过编写asm汇编文件,使用windbg的attach调试获得. 二.编程思路…
Shellcode 受到的限制 1. 大多数情况下 shellcode 中不允许出现 0x00 截断符,这个可以通过特殊指令来做到. 2. 有时候 shellcode 必须为可见的 ASCII 字符或 Unicode 值. 3. 网络攻击时,基于特征的 IDS 会对常见的 shellcode 进行拦截. 解决以上限制的一个办法是,对开发好的 shellcode 时行编码,使其达到限制要求.使用时,先构造解码代码,并放置在 shellcode 头部. 只需变更编码用的密钥,就能使 shellcod…
依稀记得第一次接触Hook的概念是在周伟民先生的书中-><<多任务下的数据结构与算法>>,当时觉得Hook很奇妙,有机会要学习到,正好近段日子找来了MiniHook,就一起分享一下. 本篇文章是在x64下测试与分析jmp+offset类型的Hook,并且逆推测出热补丁的简单用法,MinHook它的中心就是覆盖重写并且可以复原.知道大概的思路后后让我们先来具体的实现MinHook再去做测试. 首先是堆的申请(申请PAGE_SIZE大小自动生长的堆),以下是实现与卸载 1 NTS…
在很多漏洞利用场景中, shellcode 的内容将会受到限制. 例如你不能输入 \x00 这个字符,编辑框不能输入 \x0d \x0a这样的字符 所以需要完成 shellcode 的逻辑,然后使用编码技术对 shellcode 进行编码,使其内容达到限 制的要求,最后再精心构造十几个字节的解码程序,放在 shellcode 开始执行的地方. 当 exploit 成功时, shellcode 顶端的解码程序首先运行,它会在内存中将真正的 shellcode 还原成原来的样子,然后执行.这种对 s…
// Encoder.cpp : Defines the entry point for the console application.// #include "stdafx.h"#include <Windows.h>#include <stdio.h> void encoder(char* input ,unsigned char key,int display_flag){ int i=0,len=0; FILE *fp; unsigned char *…
其实分在逆向篇不太合适,因为并没有逆向什么程序. 在http://www.exploit-db.com/exploits/28996/上看到这么一段最简单的ShellCode,其中的技术也是比较常见的,0day那本书上也提到过,大神都用烂了.不过想来很久没有碰汇编了,就心血来潮,权当温习一下. /* User32-free Messagebox Shellcode for any Windows version ==========================================…
工作需要,需要注入其他程序监控一些东西,检测到的数据通过WM_COPY 消息发送给显示窗体.(大体是这样的还没定稿) ##1 选择一个框架 ## tombkeeper/Shellcode_Template_in_C mattifestation/PIC_Bindshell 框架选择上,我选择了第一个,妇科圣手tomkeeper提供的框架,对比发现这个比较简单. ##2 搭建框架 ## 我使用的是vs10,(vs15我试了下各种错误 ,可能是自己笨吧,用管了vs10了) - 新建个解决方案(名字看…
欢迎转载,转载请注明出处:http://www.cnblogs.com/uAreKongqi/p/6012353.html 0x00.前言 提到Dll的注入,立马能够想到的方法就有很多,比如利用远程线程.Apc等等,这里我对Ring3层的Dll注入学习做一个总结吧. 我把注入的方法分成六类,分别是:1.创建新线程.2.设置线程上下背景文,修改寄存器.3.插入Apc队列.4.修改注册表.5.挂钩窗口消息.6.远程手动实现LoadLibrary. 那么下面就开始学习之旅吧! 0x01.预备工作 在涉…
随着64位操作系统的普及,都开始大力进军x64,X64下的调试机制也发生了改变,与x86相比,添加了许多自己的新特性,之前学习了Windows x64的调试机制,这里本着“拿来主义”的原则与大家分享. 本文属于译文,英文原文链接:http://www.codemachine.com/article_x64deepdive.html 翻译原文地址:深入Windows X64 调试 在正式开始这篇译文之前,译者先定义下面两个关于栈帧的翻译: frame pointer:栈帧寄存器.栈帧指针,在X86…
第 5.6 节讲述如何精简 shellcode,并实现一个用于端口绑定的 shellcode.原书中本节内容来自于 NGS 公司的安全专家 Dafydd Stuttard 的文章 “Writing Small Shellcode” 使用短小的指令 下面是一些非常有用的单字节指令 xchg eax,reg 交换 eax 和其他寄存器的值 lodsd 将 esi 指向的一个 dword 装入 eax,并增加/减少 esi lodsb 将 esi 指向的一个 byte 装入 al,并增加/减少 esi…
本节讲如果开发通用的 Shellcode. Shellcode 的组织 shellcode 的组织对成功地 exploit 很重要. 送入缓冲区的数据包括: . 填充物.一般用 0x90 (NOP) 填充于 shellcode 之前,这样只要跳转到填充区,就能执行 shellcode,为溢出提供了着床缓冲. . 淹没返回地址的数据.可能是跳转指令地址.shellcode 起始地址,或者近似的 shellcode 地址. . shellcode. 前些篇目中用过两种 shellcode 的组织方式…
在X64模式中,存在的问题是JMP指令和整个地址空间相比仅仅覆盖了很窄的范围.因此引入一个中继函数(Relay Function)来实现对64位Detour函数地址的跳转. 在hook的分析之前,先谈一下前一篇帖子评论中的相关话题. 之前发布的一篇Minhook分析,有大牛说没有写出多线程安全,指令缓存,以及捕获上下文,从中提取EIP / RIP的问题,实际上源码当中都是有涉及的,这里再次感谢大牛提出的问题,只是上一篇我想的是着重于单纯的hook分析所以没有将多线程安全等部分展示出来,所以在这一…
使用MSF生成shellcode payload和shellcode的区别 Payload是是包含在你用于一次漏洞利用(exploit)中的ShellCode中的主要功能代码.因为Payload是包含在ShellCode中的,ShellCode是真正的被输入到存在漏洞的程序中的,并且ShellCode负责把程序的流程最终转移到你的Payload代码中.所以对于一个漏洞来说,ShellCode就是一个用于某个漏洞的二进制代码框架,有了这个框架你可以在这个ShellCode中包含你需要的Payloa…
下面以ntdll32!ZwQueryInformationProcess API为例分析 x86代码与x64代码之间的切换过程, 32bit的test程序: step1: ntdll32!ZwQueryInformationProcess:775bfb18 b816000000      mov     eax,16h775bfb1d 33c9            xor     ecx,ecx775bfb1f 8d542404        lea     edx,[esp+4]775bfb…
写在前面的话: ShellCode是一门艺术,就像围棋手门追求的“神之一手”,今天就来初探一下这让人疯狂的艺术: 零.代码0 相信手写opcode,目前很少有人干了,其实,也确实已经没有这个必要了,毕竟,汇编引擎帮我们干了不少事: 如果直接贴出来一堆二进制出来,相信不少人都会迷惑,因此,我们还是从汇编入手了: 先说下代码的功能,就是简单的谈了个框,但是简单的事情背后,也是有内涵的: 0.代码中用到的API,能随便用吗?考虑到ShellCode的Context,如果目标没有导入对应的DLL怎么办:…
windows7内核分析之x86&x64第二章系统调用 2.1内核与系统调用 上节讲到进入内核五种方式 其中一种就是 系统调用 syscall/sysenter或者int 2e(在 64 位环境里统一使用 syscall/sysret 指令,在 32 位环境里统一使用 sysenter/sysexit 在 compatibility 模式下必须切换到 64 位模式,然后使用 syscall/sysret 指令 注释:32位cpu是x86模式 也叫legacy模式 再说清楚点 就是包含了实模式:可…
[说明] 1.  本文是意译,加之本人英文水平有限.windows底层技术属菜鸟级别,本文与原文存在一定误差,请多包涵. 2.  由于内容较多,从word拷贝过来排版就乱了.故你也可以下载附件. 3.  如有不明白的地方,各位雪友可通过附件中的联系方式联系我,同时建议各位参照原文阅读...... [64位windows系统的PatchGuard] 原文:Bypassing PatchGuard on Windows x64.pdf 关于windows x64上的PatchGuard是干什么用的,…