总结:本题和逆向没有关系,分析C程序,即可拿到flag。

从代码中发现,hash一共需要3个参数,需要根据条件找到相对应的参数值,如

第1个参数,根据条件 if (first != 0xcafe)  ,得出第1个参数first为51966(0xcafe的十进制),

根据条件,依次得到

第2个参数值:25

第3个参数值:h4chy0u

代码如下:

#include <stdio.h>
#include <string.h>int main(int argc, char *argv[]) {if (argc != 4) {printf("what?\n");exit(1);}unsigned int first = atoi(argv[1]);   //第1个参数if (first != 0xcafe) {  //根据条件得出第1个参数first:51966(0xcafe的十进制)printf("you are wrong, sorry.\n");exit(2);}unsigned int second = atoi(argv[2]);   //第2个参数if (second % 5 == 3 || second % 17 != 8) { //second:25printf("ha, you won't get it!\n");exit(3);}if (strcmp("h4cky0u", argv[3])) {    //第3个参数:h4cky0uprintf("so close, dude!\n");exit(4);}printf("Brr wrrr grr\n");unsigned int hash = first * 31337 + (second % 17) * 11 + strlen(argv[3]) - 1615810207;    //根据三个参数,计算出hash,hash即flagprintf("Get your key: ");printf("%x\n", hash);//打印flag:c0ffeereturn 0;
}

编译运行程序,得到flag:c0ffee(注意,本题flag提交仅是“c0ffee”,不是flag{}格式)

攻防世界reverse——open-sourse(C语言)相关推荐

  1. 攻防世界 Reverse高手进阶区 2分题 reverse-for-the-holy-grail-350

    前言 继续ctf的旅程 攻防世界Reverse高手进阶区的2分题 本篇是reverse-for-the-holy-grail-350的writeup 发现攻防世界的题目分数是动态的 就仅以做题时的分数 ...

  2. 攻防世界reverse进阶easyre-153 writeup(#gdb调试父子进程、#ida版本差异)

    文章目录 学习目标: 引言 第一步.查脱壳 1.查壳 2.脱壳 3.查看文件格式 第二步.IDA静态分析 1.IDA版本的小坑 2.分析main函数 3.分析lol函数 第三步.gdb动态分析 1.m ...

  3. Revers篇:攻防世界reverse进阶re2-cpp-is-awesome

    攻防世界reverse进阶re2-cpp-is-awesome IDA分析 很简单的一个程序 程序流程分析 首先检查参数,参数少于2就退出,并提示:Usage: ./re2-cpp-is-awesom ...

  4. 攻防世界 Reverse高手进阶区 3分题 crackme

    前言 继续ctf的旅程 攻防世界Reverse高手进阶区的3分题 本篇是crackme的writeup 攻防世界的题目分数是动态的 就仅以做题时的分数为准了 解题过程 查壳,显示nsPack壳 找了个 ...

  5. 攻防世界 REVERSE 新手区/game

    攻防世界 REVERSE 新手区/game 下载得到附件 看题目说一共有8个围成一圈的灯,需要输入1-8个数,输入的数会让相应的数字的灯改变状态(亮或灭),且该灯的前一个灯和后一个灯也会改变状态.输入 ...

  6. 攻防世界 REVERSE 新手区/maze

    攻防世界 REVERSE 新手区/maze 老规矩先查壳,没加壳而且是64位的 用IDA64位打开,找到main函数F5查看伪代码 这是一个迷宫题,必然是有迷宫图在里面,然后走的路径就是输出的flag ...

  7. 攻防世界Reverse进阶区-EasyRE-writeup

    1. 介绍 本题是xctf攻防世界中Reverse的进阶区的题EasyRE. 下载下来以后是一个exe文件:210f1e18ac8d4a15904721a2383874f5.exe 2. 分析 首先看 ...

  8. 攻防世界Reverse进阶区-answer_to_everything-writeup

    本题是xctf攻防世界中Reverse的进阶区的题answer_to_everything 题目来源: 2019_ISCC 题目描述:sha1 得到了一个神秘的二进制文件.寻找文件中的flag,解锁宇 ...

  9. 攻防世界reverse高手进阶 ----- gametime

    gfsj ----- gametime 昨天做了一道攻防世界的题key和这个gametime,都是动态调试的题.key还稍微简单一些,gametime稍微费点时间,记录一下. 昨天晚上可能是没进入做题 ...

最新文章

  1. vs2k5 notes
  2. 推荐15款响应式的 jQuery Lightbox 插件
  3. Ubuntu 14.04 python3.6 安装
  4. Python Django 可变参数代码示例
  5. pandas数据处理分组聚合
  6. WebAPI(part12)--事件高级
  7. php后静态绑定,详解PHP后期静态绑定分析与应用
  8. C#实现动态系统托盘图标
  9. 制药企业BI系统方案整体设计分享
  10. 项目经理排期的几个tip
  11. 报表开发导出各种格式文件的API
  12. Dubbo 服务 IP 注册错误踩坑经历
  13. 《数据库系统原理》课程设计:超市订单管理系统
  14. Android万能布局检查器UI Automator Viewer使用教程、环境配置和Mac无法打开问题解决(uiautomatorviewer,android studio,layer,查看,错误)
  15. html链接打开word文档,一招教你在Word文档中创建超链接打开其他文件
  16. 全球80家无线通信模组企业汇总及介绍
  17. Windows10 系统部分软件字体虚化不清晰
  18. Code Project精彩系列(2)
  19. 腾讯云服务器有多垃圾,清理腾讯云服务器的各种垃圾日志
  20. 点云配准5:4pcs算法在pcl上的实现

热门文章

  1. HFSS双频单极子印刷天线
  2. RS485偏置电阻和终端匹配电阻
  3. flash无法导入mp3文件
  4. SpaceClaim通过脚本创建新窗口
  5. surfacert能跑java么_Surface RT竟然能跑Linux!微软悄然封杀
  6. 【转】全面深入学习OLE技术
  7. 基于运放的放大电路分析
  8. 珠海:處在二次且全角落升值發展的城市
  9. 磁盘加密技术保障数据安全之七种武器
  10. 网际快车(FlashGet)0day漏洞曝光