[SUCTF 2019]Game 两个附件,一个是zip压缩包,里面有html、CSS和JS的文件,另外一张是图片 在index.html里发现一串经过base32编码的字符串 解码后得到suctf{hAHaha_Fak3_F1ag} 但是这不是flag 在图片里发现有LSB隐写 解码发现前面是Salted,得知这是DES加密 前面得到的flag是密钥,尝试发现是3DES加密 解密得到flag{...
首先来看下题目,可以在buuoj平台上开启guess game的靶机或者下载源码https://github.com/rmb122/suctf2019_guess_game里下载源码。这道题还是十分有趣的,不会pickle的人短时间内还是可以看懂pickle的基本使用,但是深入构造命令执行或者其它操作比较困难,而这题的考点就考它的其它操作组合。而至于命令执行,可以看附录里...
根据U2FsdGVkX1我们知道是DES加密,因为DES加密之后开头都是这几位,不过解密需要秘钥。 这里的脑洞,秘钥就是前面的fake flag,将其用作秘钥之后,测试可以得知是3DES 获得flag suctf{U_F0und_1t} 因为buuoj直接给出了图片,实际上降低了难度,根据官方题解,我们需要在/js/three.min.js里可以找到图片:iZwz9i9xnerw...
suctf{U_F0und_1t} 因为buuoj直接给出了图片,实际上降低了难度,根据官方题解,我们需要在/js/three.min.js里可以找到图片:iZwz9i9xnerwj6o7h40eauZ.png。 从这里再往下做题
0x08 Game题目描述How fast can you play?http://47.111.59.243:1081题目解答直接查看源代码得到flag(假的,emmmmview-source:http://47.111.59.243:1081/ <icon trophy></icon> Well done!, here is your flag:ON2WG5DGPNUECSDBNBQV6RTBNMZV6RRRMFTX2=== base32后得到flagsuctf{hAHaha_Fak3_F1ag} ...
sub_140009FF0应该是一个输入函数,但是每次调试到那程序都自动退出,不知道是反调试还是本身有bug 只好nop掉它,手工修改内存 v13=a1;memset(Dst,0,0x13ui64);memcpy(Dst,&unk_140015E38,0x12ui64);for(i=0;(unsigned__int64)i<19;++i)Dst[i]^=byte_140015F20[1];memset(v12,0,0x13ui64);for(j=...
那么可以先反序列化一个guess_game里的game对象,然后再反序列化一个guess_game.Ticket里的Ticket类,参数number随便赋一个值(比如6),然后将Ticket赋值给game的curr_ticket覆盖服务端随机生成的Ticket,最后我们再反序列化一次最开始反序列化的Ticket,参数number赋相同值。
那么可以先反序列化一个guess_game里的game对象,然后再反序列化一个guess_game.Ticket里的Ticket类,参数number随便赋一个值(比如6),然后将Ticket赋值给game的curr_ticket覆盖服务端随机生成的Ticket,最后我们再反序列化一次最开始反序列化的Ticket,参数number赋相同值。
Src, 0x8000ui64); strcpy(&v7, "Ak1i3aS3cre7K3y"); memset(&Str1, 0, 0x11ui64); sub_7FFFDA782800(&v7, &Str1, Dst); if ( !strcmp(&Str1, &Str2) ) sub_7FFFDA7826F0("Get finally answer!\n"); else sub_7FFFDA7826F0("wow... game start!\n); result = 1; } sub...
SUCTF 2019 WriteUp Web Misc 签到题 给了一串编码,制作: 打开网页就可以得到flag。 game 查看源代码得到: base32解密是一个假的flag。 在/js/three.min.js里可以找到一个图片:iZwz9i9xnerwj6o7h40eauZ.png。 在图片的lsb隐写里可以发现信息:U2FsdGVkX1+zHjSBeY...