Shellcode
Shellcode泛指在exploited进程中执行的恶意代码。
基本特征如下:
位置无关代码:Shellcode必须能够在内存的任何位置正确执行,不依赖固定内存地址
不含空字节:空字节(\x00)通常会被认为是字符串终止符,导致代码截断
紧凑高效:通常需要在有限的空间内完成复杂功能
直接系统调用:绕过高级API,直接与操作系统内核交互
弹窗显示信息具体实现步骤
安装 metasploit 框架并配置环境变量
关闭Windows系统防护
利用metaspolit框架的payload生成工具msfvenom生成弹窗程序的shellcode
1 | msfvenom -p windows/x64/messagebox TEXT="Student ID: xxx Name: xxx" TITLE="Student Info" -f c -b '\x00' -a x64 |
编写c语言程序执行shellcode
1 |
|
运行后实现弹窗效果
参考书籍
1 | https://www.exploit-db.com/docs/english/13019-shell-code-for-beginners.pdf |
1 | https://wizardforcel.gitbooks.io/q-buffer-overflow-tutorial/content/index.html |