如何利用Ollydbg和winhex修改C++的小程序 30
#include"stdio.h"#include"string.h"main(){chara[]="password1",b[100]="";printf("请输入密码...
#include "stdio.h"
#include "string.h"
main()
{
char a[]="password1",b[100]="";
printf("请输入密码:");
scanf("%s",b);
if (!strcmp(a,b))
{
printf("密码正确!\n");
}
else
{
printf("密码错误!\n");
}
getchar();
}
程序代码如上,编译后怎么使用标题的两个软件进行修改程序,使程序无论输入任何密码都输出密码输出正确,正在学编译原理,第一节课没听清,希望把具体步骤都能说说,谢谢! 展开
#include "string.h"
main()
{
char a[]="password1",b[100]="";
printf("请输入密码:");
scanf("%s",b);
if (!strcmp(a,b))
{
printf("密码正确!\n");
}
else
{
printf("密码错误!\n");
}
getchar();
}
程序代码如上,编译后怎么使用标题的两个软件进行修改程序,使程序无论输入任何密码都输出密码输出正确,正在学编译原理,第一节课没听清,希望把具体步骤都能说说,谢谢! 展开
1个回答
展开全部
00401097 |. /75 07 JNZ SHORT Cpp1.004010A0 ; 检测密码,改这即可
00401099 |. |68 3C804000 PUSH Cpp1.0040803C ; 密码正确!\n
0040109E |. |EB 05 JMP SHORT Cpp1.004010A5
004010A0 |> \68 30804000 PUSH Cpp1.00408030 ; 密码错误!\n
004010A5 |> E8 DF010000 CALL Cpp1.00401289
00401099 |. |68 3C804000 PUSH Cpp1.0040803C ; 密码正确!\n
0040109E |. |EB 05 JMP SHORT Cpp1.004010A5
004010A0 |> \68 30804000 PUSH Cpp1.00408030 ; 密码错误!\n
004010A5 |> E8 DF010000 CALL Cpp1.00401289
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询