printf的缓冲区溢出一般
printf ("%n",a):当遇到%n时,程序会检查已经输入了多少字符串,然后将其写入到a中。可以通过这一点来改写栈中内存。
%n写入的内存最大为4字节。
%hn写入的内存最大为2字节。
%hhn写入的内存最大为1字节(用于将大字节拆开写)。
%xd依然会被算入这个空间。
printf的缓冲区溢出一般
printf ("%n",a):当遇到%n时,程序会检查已经输入了多少字符串,然后将其写入到a中。可以通过这一点来改写栈中内存。
%n写入的内存最大为4字节。
%hn写入的内存最大为2字节。
%hhn写入的内存最大为1字节(用于将大字节拆开写)。
%xd依然会被算入这个空间。