Hackergame 2018

只是当时做出来的题的一些解题

Posted by XTXTMTXTX on 2018-10-23
Tech


题目存档:https://hack2018.lug.ustc.edu.cn/
官方 write-up 已发布:https://github.com/ustclug/hackergame2018-writeups
我的一些解题过程的源文件https://github.com/XTXTMTXTX/Hackergame2018
一度17名最后20名发现奖项居然是中科大校内的 我哭了 你呢.jpg


签到题

f12把字数限制去了


猫咪问答

善用百度


游园会的集章卡片

拼拼图
我用的AE


猫咪和键盘

字符拼接 见cat.cpp
然后发现怎么都编译不通过
猜测程序意图
先定义输出格式再输出
ok直接复制粘贴出flag
注意其中一个}和_输出的是十进制ascii值


WORD文档

改后缀为zip解压


猫咪银行

先兑换一次TDSU
然后购买理财 时长555555555555555555 份额1000 然后取回
恭喜你获得5442144815179344334TDSU 兑换回CTB买flag
#不要买碎片 貌似没用?


黑曜石浏览器

HEICORE 联想到红芯(redcore)
马上搜索相关新闻 红芯 user agent 找到红芯用的是Chrome/49.1.2623.213
接下来把浏览器的user agent改为HEICORE/49.1.2623.213再访问页面即可


回到过去

百度ed编辑器
注意接受下来的按键记录文件藏了个ESC字符 所以后面那个c是假的
事实上我去OpenBSD里试了下 显示ESCc
就很怪 卡了好久


我是谁
哲学思考

搜索HTTP 418协议
得到下一题链接

Can I help me?

思考 方式 把请求头get改成post一下 得到线索 CRF 7168 https://www.rfc-editor.org/rfc/rfc7168.txt
好的 自定义请求头BREW 注意附上Content-Type: message/teapot\r\n\
因为不会使用telnet 专门打了个程序 teapot.cpp


猫咪遥控器

按着UDRL移动坐标画图
个人是画在了二维布尔数组上
最后输出方块到txt 改一下字号得flag
详见lazercat.cpp


她的诗

uuencode
将helper出来的东西再encode回去发现不一样
查询uuencode格式 第一位表示有几个字符
全改成最大的_再跑一遍helper
把多出来的拼起来就好了


猫咪克星

单纯的nc操作题
一开始各种文件生成读取特判输出
(甚至硬核模拟键盘)
等我做完别人告诉我有eval()???
流下了不会python的眼泪
我的代码详见\pythoncat


C语言作业

源程序用ida f5反编译
注意init函数与_err函数
以及main中的强制转换
可以得出2147483648(2^31)/-1在强转后可以满足跳转_err条件
_err中可以让你执行没有传入参数的程序
一开始思考cat 显然无法
后来想起来可以打开编辑器
ed没有vi没有
vim蹦出来了
:open flag发现flag在-文件中
重来一遍
:open -得到flag
顺便windows下vim界面会十分鬼畜 建议linux下进行操作


加密算法和解密算法

先是bf语言
其实还好看懂
层层剖析之后发现了算法
发现解密就是解一个模64条件下的10元一次方程组
克拉默法则
求出D=5 乘法逆元13
接下来依次求D1~10
det计算程序来源http://www.voidcn.com/article/p-rvomqytj-bb.html
源代码见\bf


她的礼物

“用你朋友的脚本解密之后的第 10 行”输入./gift "However, someday, someone will find it."
跑了几秒就挂掉了
进ida反编译
发现循环233333次
把sleep alarm signal循环内printf全弄没
(怎么弄? ida隐藏patch二进制功能)
然后再跑一次 最好 ./gift “However, someday, someone will find it.” > output.txt
等它跑完就完了
直接循环1次?输出结果不对
最好本机linux跑 我虚拟机跑了一小时才出来结果
(流下了不用linux的眼泪)
(最后发现是没弄掉io)
patched file见\gift


一些宇宙真理

snark.hpp内的
verify_proof()
调用即可
魔改代码使程序读入指定vk proof
见lightning_circuit_solve


当你在凝视深渊的时候 深渊也正在凝视着你