pwnable.kr col

时间:2023-03-08 22:14:12

collision - 3 pt

pwnable.kr col

连接上查看col.c源码

pwnable.kr col

分析一下代码,

1、hashcode等于一个固定的值

2、check_password函数取输入数据,4个一组,将输入的字符转成int,然后加一起

3、main函数 输入值为两个,输入的数据要是20字节

我们输入的数据经过check_password之后加起来与hashcode相等

我们输入的时候不能直接输十进制数,因为20位十进制数加起来到不了568134124

所以选择16进制,用\x00填充16位数据,剩下的4位0xEC09DD21直接填

据说0x09会阻塞输入

所以用\x01填充16位数据,剩下的4位 0x21DD09EC-0x04040404=1DD905E8

再输入的时候注意要将顺序转过来

./col $(python -c "print '\x01' * 16 + '\xE8\x05\xD9\x1D'")

pwnable.kr col