下载,一段c代码,载入codeblocks分析

#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]);if (first != 0xcafe) {printf("you are wrong, sorry.\n");exit(2);}unsigned int second = atoi(argv[2]);if (second % 5 == 3 || second % 17 != 8) {printf("ha, you won't get it!\n");exit(3);}if (strcmp("h4cky0u", argv[3])) {printf("so close, dude!\n");exit(4);}printf("Brr wrrr grr\n");unsigned int hash = first * 31337 + (second % 17) * 11 + strlen(argv[3]) - 1615810207;printf("Get your key: ");printf("%x\n", hash);return 0;
}

分析发现就是满足3个条件就行,可以直接修改代码如下:

#include <stdio.h>
#include <string.h>int main(int argc, char *argv[]) {unsigned int hash = (0xcafe) * 31337 + (8 % 17) * 11 + strlen("h4cky0u") - 1615810207;printf("Get your key: ");printf("%x\n", hash);return 0;
}

编译运行:

xctf攻防世界open-source writeup相关推荐

  1. XCTF攻防世界Web之WriteUp

    XCTF攻防世界Web之WriteUp 0x00 准备 [内容] 在xctf官网注册账号,即可食用. [目录] 目录 0x01 view-source2 0x02 get post3 0x03 rob ...

  2. XCTF攻防世界Web新手入门题大全

    XCTF攻防世界Web之WriteUp无图版 (Tips:有图版本,请移步我的资源,自行下载doc文档) 0x00 准备 [内容] 在xctf官网注册账号,即可食用. [目录] 目录 0x01 vie ...

  3. XCTF攻防世界 Normal_RSA

    XCTF攻防世界 Normal_RSA 实验环境: windows 10 实验所需工具: python工具: yafu (可以在https://github.com/DarkenCode/yafu上下 ...

  4. XCTF攻防世界练习区-web题(新手)

    XCTF攻防世界练习区-web题(新手) https://adworld.xctf.org.cn/task?now_checked_num=3&name=web 001 view_source ...

  5. XCTF攻防世界BABYRE逆向

    攻防世界BABYRE逆向 拿到题目,查壳如下: 拖拽IDA Pro7.5打开,查看main函数,代码如下: 可以看到: (*(unsigned int (__fastcall **)(char *)) ...

  6. xctf攻防世界 crypto 新手练习区--write up(持续更新中)

    文章目录 base64 Caesar Morse Railfence 不仅仅是Morse easy RSA RSA算法 简介 RSA计算公钥和私钥 混合编码 转轮机加密 回转轮加密 base64 题目 ...

  7. xctf 攻防世界-forgot writeup

    根据ida反汇编的结果可以发现有两处溢出点,第一处溢出点没什么作用,只能观察第二处溢出点 可以观察到箭头处是个函数指针,&v3 是v3在栈上的地址,&v3 + --v14 是根据&am ...

  8. xctf攻防世界parallel-comparator-200 writeup

    下载查看,是个c文件,大意是输入一个字符串然后用highly_optimized_parallel_comparsion进行处理,符合条件就算成功. #include <stdlib.h> ...

  9. XCTF 攻防世界 web 高手进阶区

    文章目录 ics-07 shrine( flask + jinja2 的 SSTI) easytornado(模板注入) upload(文件名注入) supersqli(堆叠注入) php_rce(T ...

最新文章

  1. TCP全局同步问题发生的原因
  2. java facade dao_java – 在Facade模式中放置用于创建namedQuer...
  3. 安全系列------web环境搭建组合
  4. linux tar命令 打包 解压
  5. C++虚继承(二) --- C++ 对象的内存布局(上)(陈皓)
  6. Altiumnbsp;designernbsp;学习教程
  7. fedora在此处打开终端
  8. Opencv与dlib联合进行人脸关键点检测与识别
  9. linux-所有者与所属组的修改
  10. leetcode 172 python
  11. 栈溢出脚本_CTF必备技能丨Linux Pwn入门教程——栈溢出基础
  12. shell编程基础(二)
  13. VGGNet网络结构学习
  14. 服务器被攻击怎么办?常见处理方法
  15. 三菱Q系列PLC通过QD75P2N控制三菱MR-JEA伺服
  16. 微信小游戏保存自定义分享图到相册实例
  17. 计算机软考答题卡填涂格式,全国计算机软考网络工程师填涂答题卡须知
  18. 阿里云服务器CentOS8安装Kafka
  19. windows的bat批处理启动软件,程序员必备技能
  20. backtrack回溯算法

热门文章

  1. APSIM练习:小麦苜蓿轮作
  2. python自动批量下载_Python批量下载鼠标样式,自动化一条龙处理详解
  3. 用链表,栈,队列实现简单的停车场项目
  4. tecplot修改legend标题
  5. 试试程序员专用字体CascadiaCode支持连字体
  6. poi3.17版本生成excel的一些样式设置
  7. Hadoop——Hadoop优势、组成、大数据技术生态体系、系统框架图
  8. Sunday 算法详解
  9. UPS电路图, 山特UPS电路图
  10. 谷歌浏览器实验室的小功能