【攻防世界逆向】open-source详解难度3

发布时间 2023-04-18 09:56:49作者: Corax0o0

题目

解法

下载下来是一个C语言源文件

直接用vis打开如下

可以看到过程并不复杂,并且可以明显见得红框部分就是对flag的计算,然后用16进制进行输出。
那我就想办法能不能跳过判断条件直接获得。
可以看到其中关键点有三个

  • first
  • second
  • strlen(argv【3】)
    而first很明显就是0xcafe
    second当中有写到atoi这个函数,就是将字符串转换成整型int,但不关键
    看他下面判断条件,要一个模5不为3,且模17为8的数,直接选一个最小的数 25
    而strlen(argv【3】),在代码中可以看到

    也就是h4cky0u的长度,为7,。全部填入。

    运行一下

    得到flag