hackmit
今天和谦谦一块打了下hackmit的 Admissions puzzle,还有些趣味
开局是要找比赛网址。当成解谜题做了半天一直提示不对。打开F12看眼源代码,发现有个变量叫puzzle_link。watch输出了下值就过了
第一题是绕过密码。据说需要sql注入,但我不太会这个。整了个万能密码 I love cxr' OR TRUE;-- 过了,感性理解了一下,这种密码代入到 password == ' + x + ' 里能 OR 上一个true并且把之后的东西注释掉
第二题整了个好活,是说你可以破解musk的twitter来操作某种虚拟货币价格。有一种AB的密码,谦谦发现长度是 5 的倍数,直接32base转成A到Z。还有一种0~9和a~f的密码,base 16之后转成ascii就行。为了看破解每条twitter的效果,谦谦观测了JSON,发现有一条显示是涨还是跌。直接全仓,把涨的twitter全破译之后卖掉就行
第三题是个炼丹,感觉改一下损失函数就行。搜了下huggingface教程,对着抄了一遍
炼丹小常识:调用dataloader之前要把没法整成tensor的列删了
可以用f(**x) ,其中x是 {'slime': 123, 'goodeat':234} 的dictionary 来实现 f(slime=123, goodeat=234)
lr不要设置太低;改损失函数要用torch的库
记得shuffle;不然可能前一半全是0后一半全是1