摘要: 获得正确的结果已经不能满足我的欲望了,我希望能进一步的利用,从而弹出一个消息框,这将使用到MessageBox函数。我们先计算MessageBoxA的地址0x77D10000+0X000407EA=0x77D507EA我们写入对应的汇编代码: 1 __asm 2 { 3 xor ebx,ebx 4 push ebx 5 push 0x00003231 6 push 0x30326b74 7 mov eax,esp 8 push ebx 9 push eax10 ... 阅读全文
posted @ 2012-10-06 23:11 r3call 阅读(494) 评论(0) 推荐(0) 编辑
摘要: 上次我们构造了一个漏洞,但是不能输入自己想要的字符,所以这次我们另外构造一个漏洞,使用文件的方式读入数据,这样便可以输入我们想要的字符。这样,我们的目标还是上次那个,绕过验证。 1 // stack_overflow.cpp : Defines the entry point for the console application. 2 // 3 4 #include "stdafx.h" 5 #define PASSWORD "1234567" 6 7 int verify_password(char *password) 8 { 9 int auth 阅读全文
posted @ 2012-10-06 20:16 r3call 阅读(563) 评论(0) 推荐(0) 编辑
摘要: 1 // stack_overflow.cpp : Defines the entry point for the console application. 2 // 3 4 #include "stdafx.h" 5 #include <string.h> //strcmp、strcpy 6 #include <STDIO.H> //printf 7 #include <conio.h> //getch 8 //全局变量保存真码 9 #define PASSWORD "1234567"10 //密码验证函数11 in 阅读全文
posted @ 2012-10-06 13:25 r3call 阅读(599) 评论(0) 推荐(0) 编辑
摘要: 1 // fun.cpp : Defines the entry point for the console application. 2 // 3 4 #include "stdafx.h" 5 6 int func_B(int arg_B1,int arg_B2) 7 { 8 int var_B1,var_B2; 9 var_B1=arg_B1+arg_B2;10 var_B2=arg_B1-arg_B2;11 return var_B1*var_B2;12 }13 14 int func_A(int arg_A1,int a... 阅读全文
posted @ 2012-10-06 13:05 r3call 阅读(2103) 评论(0) 推荐(0) 编辑
摘要: 1 // TestCall.cpp : Defines the entry point for the console application. 2 // 3 4 #include "stdafx.h" 5 #include <windows.h> 6 #include <stdio.h> 7 8 9 int __stdcall test_stdcall(char para1, char para2)10 {11 para1 = para2;12 return 0;13 14 }15 16 int __cdecl test_cdecl(ch... 阅读全文
posted @ 2012-10-06 12:57 r3call 阅读(1042) 评论(0) 推荐(0) 编辑