pwnable.kr writeup

fd

登录后有三个文件,查看源码:

read(0,buf,32),fd是0时是标准输入。所以我们需要做的就是将
int fd = atoi( argv[1] ) - 0x1234;fd值置0,之后输入LETMEWIN即可。注意atoi()要求被转换的字符串是十进制
结果如下:

collision

登录后有三个文件

直接看源代码

将我们的输入的char以int方式读取,也就是一次读4个字节,将5组4字节相加后与hashcode即0x21DD09EC相等即可,
直接凑0x01010101+0x01010101+0x01010101+0x01010101+0x1dd905e8,注意输入时的字节序。
shell输入./col python -c "print '\x01'*16 + '\xe8\x05\xd9\x1d'"
拿到flag:daddy! I just managed to create a hash collision 😃

posted @ 2021-03-25 20:18  Runope丶  阅读(37)  评论(0编辑  收藏  举报