首页
社区
课程
招聘
[旧帖] [内存溢出攻击]基础问题求解 0.00雪花
发表于: 2014-1-13 22:20 5358

[旧帖] [内存溢出攻击]基础问题求解 0.00雪花

2014-1-13 22:20
5358
#include <stdio.h>
#include <ctype.h>
#include <stdlib.h>
void greetUser ( const char* user){
        char buffer[64];
        size_t i ;
        for ( i = 0 ; *user ; i++) {
                buffer[i] = toupper (*(user ++));
        }
        buffer[i] = 0;
        printf("Hello %s\n",buffer);
}

int main(int argc, char** argv){
  greetUser(argv[1]) ;
        getchar();
}

这是一段内存溢出攻击的代码,输入字符创超长的话会溢出。请呢位大神帮我实现一个溢出攻击的例子?
请附下以下内容:
1、win7下可执行的demo
2、简单的讲解文本
万分感谢!

[课程]Android-CTF解题方法汇总!

收藏
免费 0
支持
分享
最新回复 (13)
雪    币: 225
活跃值: (134)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
2
这种基础的问题就不用劳烦大神了吧。
自己看书去......
2014-1-13 22:25
0
雪    币: 225
活跃值: (134)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
这种基础的问题就不用劳烦大神了吧。
自己看书去......
2014-1-13 22:28
0
雪    币: 1839
活跃值: (295)
能力值: ( LV9,RANK:370 )
在线值:
发帖
回帖
粉丝
4
感觉像面试题
2014-1-14 10:05
0
雪    币: 40
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
不会啊,求解,不会解得别装大神
2014-1-14 22:05
0
雪    币: 0
活跃值: (954)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
6
const char* user 这里直接可以构造
2014-1-14 22:06
0
雪    币: 40
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
我知道啊,我可以造成溢出。如何利用溢出调用个计算器什么的?
2014-1-14 22:53
0
雪    币: 0
活跃值: (954)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
8
在这里覆盖一个返回地址,然后构造一个jmp esp跳向到你的shellcode执行头去.
2014-1-15 21:11
0
雪    币: 40
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
能不能给个能运行的例子?
2014-1-17 17:27
0
雪    币: 63
活跃值: (57)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
10
感觉像面试题

fosom 说的很对啊,这题其实没有看着那样简单:win7 的话还要看程序的编译选项有没有开地址随机化;而且toupper函数还涉及到shellcode编码问题!
2014-1-17 17:53
0
雪    币: 63
活跃值: (57)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
11
fosom 说的很对啊,这题其实没有看着那样简单:win7 的话还要看程序的编译选项有没有开地址随机化;而且toupper函数还涉及到shellcode编码问题!

第一个问题就先不管了,第二个问题你可以去参考下八爷(看雪ID:半斤八两 )的一篇关于编码的帖子!
2014-1-17 17:58
0
雪    币: 7724
活跃值: (3634)
能力值: ( LV2,RANK:15 )
在线值:
发帖
回帖
粉丝
12
前来请教下,我也想看栈溢出,想问下您有没有这方面的书可以推荐下的?
2014-1-17 18:08
0
雪    币: 40
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
只能限定在win7下运行= =
2014-1-17 18:34
0
雪    币: 37
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
Win7下基本上不可能,默认有ASLR和DEP。
而且还要看你用什么编译器,和编译器的参数。如果vc,默认加了GS参数,就开启了栈保护。现在这些溢出法基本也不可用了。
2014-3-15 19:40
0
游客
登录 | 注册 方可回帖
返回
//