一线红队带你从O到无限进步
本文章所涉及所有内容均是大佬上课说讲的内容,其中做了一下基础的补充,高深的技术后面会慢慢在文章中出现
一线在职红队在线性感分享技术,从c语言开始基础带你慢慢进入终端对抗(免杀但是不止免杀)的大门。
紧接上文
同时我们可以使用动态去构造,并且将每个功能封装起来,同时使用结构体调用函数。
首先我们先将要进行动态调用的函数的定义封装起来(如下图)
然后我们通过定义结构体将要使用的函数封装同一起来
然后我们通过GetModuleHandle和GetProcAddress两个函数获取到我们需要使用的函数地址,然后进行赋值,将其封装成一个函数,方便使用
最后我们使用这些函数进行上线
到此处就已经全部完成
常规shellcode执行步骤(为核心基础步骤)
1.计算shellcode内存大小(因为我们需要去申请一块内存存放我们的shellcode,所以需要获得shellcode的大小)
2.申请shellcode内存(根据大小申请内存,这里我们需要申请可读可写可执行的内存)
3.将shellcode写入内存中(写入shellcode)
4.执行shellcode内容(shellcode放入内存以后我们将它执行起来)
原文始发于微信公众号(泾弦安全):免杀对抗从0开始(五)
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论