萌新带你开车上p站(二)(4)
2022-11-12 来源:acgdir.com
这就是flag了
合天网安实验室相关实验推荐--加壳与脱壳技术
0x05passcode
看题目描述,编译时没有报error,那是不是会报warning呢
连上机器后先看看源码
从源码中可以看到
1.程序功能是先输入name,然后输入passcode1,passcode2,相当于输入一个用户名,两个密码
2,main中接连执行welcome,login,中间没有push,pop,二者ebp相同
3,login()中scanf接收输入的时候,passcode1,passcode2没有加上&取地址,又由于passcode1,passcode2没有被初始化,所以我们scanf输入数据时,数据被保存到哪儿是未知的,只是知道数据被保存到passcode1,passcode2的值指向的地址中去了。
考虑2和3,我们猜想是否可以通过控制name的内容进而控制passcode1,passcode2呢?毕竟name取100字节,三者的ebp又是相同的
不过具体是否可行,我们上gdb试试
合天网安实验室相关实验推荐--加壳与脱壳技术
0x05passcode
看题目描述,编译时没有报error,那是不是会报warning呢
连上机器后先看看源码
从源码中可以看到
1.程序功能是先输入name,然后输入passcode1,passcode2,相当于输入一个用户名,两个密码
2,main中接连执行welcome,login,中间没有push,pop,二者ebp相同
3,login()中scanf接收输入的时候,passcode1,passcode2没有加上&取地址,又由于passcode1,passcode2没有被初始化,所以我们scanf输入数据时,数据被保存到哪儿是未知的,只是知道数据被保存到passcode1,passcode2的值指向的地址中去了。
考虑2和3,我们猜想是否可以通过控制name的内容进而控制passcode1,passcode2呢?毕竟name取100字节,三者的ebp又是相同的
不过具体是否可行,我们上gdb试试