【发布时间】:2017-01-23 15:50:34
【问题描述】:
我正在读一本关于缓冲区溢出和 shellcode 的书,书中有下面这段代码。
除了buffer = command +strlen(command);的目的,大部分我都明白了。
当我在缓冲区上使用memset() 时,它不会覆盖我之前用command+strlen(command) 存储在那里的内容吗?
有人可以帮我澄清一下吗?
【问题讨论】:
-
增加指针。
-
command指向一个以空字符结尾的字符串,而buffer被设置为指向该以空字符结尾的字符串的结尾。 -
不要发布代码图片,而是发布代码.. -1
-
没有。
buffer = command+strlen(command)将指针设置为该特定地址。memset将值写入buffer指向的内存。
标签: c arrays pointers memory stack