code WriteUp

WriteUp

题目信息

名称:code.c
分类:Reverse
描述:得到源码的输出结果

题目链接: https://pan.baidu.com/s/1u8bGbKcUF6_gLaw63L3jyA?pwd=h8r5 提取码: h8r5

解题思路

首先用Vscode查看code.c文件,发现该文件对argv[]进行判断处理,其中很容易联想到这和输出结果紧密联系。

依次判断argv[1],argv[2],argv[3],发现这三个参数分别满足

argv[1] = 0xcafe,argv[2] % 5 != 3 && argv[2] % 17 = 8,argv[3] = "h4ckyOu"

的情况下才能正确输出,查看输出,发现输出结果是16进制小写的hash,而hash的运算则依赖刚刚分析的argv[]内容。

因此argv[1] = 0xcafe, argv[3] = "h4ckyOu", 不妨令argv[2] = 25;
于是hash = 0xcafe * 31337 + 8 * 11 + 7 - 1615810207;
由此便可以得出程序的输出结果为 c0ffee

使用工具

Vscode

Flag

c0ffee

总结

通过本次题目学习到:
源码分析

posted @ 2025-03-04 21:00  Binary-0  阅读(24)  评论(0)    收藏  举报