使用缓冲区溢出mips程序集显示字符串

时间:2016-10-31 16:21:37

标签: assembly mips buffer-overflow

我正在练习缓冲区溢出和汇编编码。现在我能够找到返回地址,并跳转到程序本身的任何地方。但是,我想做的不仅仅是跳转到自己,我想显示一些我发送到程序缓冲区的字符串(字符串不包含在程序中,但它是我用我的漏洞发送的输入) 。假设我想要显示"你被黑了!",我怎么能这样做?

我理解显示一些东西,我需要在程序本身内调用prints()函数,并将地址值分配给$ a0,这是传递给prints()的参数,而prints()将在该地址中打印任何内容出。但是,我的输入字符串不包含在程序中,我无法显示自己的消息,只能显示程序本身的数据。我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

我的答案只有一步之遥,我确实将我的黑客信息放入了缓冲区。我错误地将字符串放在$ a0中,但我真正应该做的是将字符串的内存地址放入$ a0。一旦我这样做,我的黑客消息显示出来。