BUUCTF reverse1 1

BUUCTF reverse1 1_第1张图片
使用die发现是64位程序

我们先运行一下
在这里插入图片描述

这里说错误的flag

使用IDA64位程序打开
shift + F12 打开字符串窗口
查找 wrong flag
双击这个字符串

BUUCTF reverse1 1_第2张图片

双击 sub_1400118C0+C8↑o
BUUCTF reverse1 1_第3张图片
BUUCTF reverse1 1_第4张图片
这里跳跃到了汇编窗口, F5 反汇编

BUUCTF reverse1 1_第5张图片

 sub_1400111D1("input the flag:");
  sub_14001128F("%20s", Str1);	//  scanf
  v3 = j_strlen(Str2);	// 获取字符串长度
  if ( !strncmp(Str1, Str2, v3) )
    sub_1400111D1("this is the right flag!\n");
  else
    sub_1400111D1("wrong flag\n");

这里猜测sub_14001128F就是scanf
也就是说跟Str2对比,Str2就是flag,双击Str2

BUUCTF reverse1 1_第6张图片
知道flag, 提交的时候加上flag

flag{hello_world}

你可能感兴趣的:(#,reverse,ctf,reverse,buuctf)