题目名字叫做开源,然而二者之间并没有什么关系…
一个很简答的C程序题,让你跳过所有的限制条件即可输出key(flag)。
open-source如下:
#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);//25 } 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;
//first=0xcafe,(second%17)=8,argv[3]="h4cky0u" printf("Get your key: "); printf(
"%x\n", hash); return 0; }
在原程序上进行一定的修改,得到:
int main() { unsigned int hash = 0xcafe * 31337 + 8 * 11 + 7 - 1615810207;
printf("Get your key: "); printf("%x\n", hash); return 0; }

flag:c0ffee

技术
©2019-2020 Toolsou All rights reserved,
python 读取 xls文件CSS实现loading小动画vue中数据改变 界面不更新问题JavaSwing实现简单连连看小游戏2019PHP面试题(持续更新中)PHP如何在Vue中使用Echarts可视化库Vue SpringBoot 进行Excel下载c语言实现《学生管理系统》Thinkphp在添加、修改、删除数据时,自动更新Cache缓存的方法WEB前端,初识vue.js