第1章 基础知识 P29实验
目的:对密码验证部分实现破解
#include <stdio.h>
#define PASSWORD "1234567"
int verify_password(char *password)
{
int authenticated;
authenticated=strcmp(password,PASSWORD);
return authenticated;
}
main()
{
int valid_flag=0;
char password[1024];
while(1)
{
printf("please input password:\n");
scanf("%s",password);
valid_flag=verify_password(password);
if(valid_flag)
{
printf("incorrect\n");
}
else
{
printf("right\n");
break;
}
}
}
将上述代码在vc6.0下生成的Release版.exe拖进IDA中,找到关键语句
按空格键切换到汇编指令界面
此时,IDA已经自动将该指令的地址转换成了运行时的内存地址VA:0040106E
下面关闭IDA,使用Oll