摘要:
目录P188 P188 这一段是在说强制转换就是向零取证,由于d是double,u是long,所以两者的二进制表示很不一样(想一下1.5和1的二进制表示);而联合是不会改变二进制表示的,所以当d=1.0的时候,u=4607182418800017408 阅读全文
posted @ 2025-07-23 20:35
最爱丁珰
阅读(4)
评论(0)
推荐(0)
摘要:
目录P198P199P201 P198 解释一下栈随机化 程序执行的时候会分配栈帧,如果使用随机化,就是在main函数前随机分配一段内存不适用,这个时候就没办法预测返回地址了,如下 P199 解释一下空操作雪橇: 假设有一个机器,攻击者可以向机器中输入一个字符串,而且攻击者知道机器在接收字符串之后的 阅读全文
posted @ 2025-07-23 20:32
最爱丁珰
阅读(6)
评论(0)
推荐(0)
摘要:
目录P195P197 P195 gets函数体中有一个语句*dest++:注意回忆一下,这里的++是后自增,所以先会解引用,然后把c的值赋值,然后再将指针加一;如果写成(*dest)++,那么就是先解引用,并且让dest指向的值后自增(而不是像前面一样让dest后自增) 还有一些函数与gets一样 阅读全文
posted @ 2025-07-23 17:02
最爱丁珰
阅读(7)
评论(0)
推荐(0)
摘要:
这里补充一下课上讲的关于内存的东西 虽然x86-64理论上的内存大小为\(2^{64}\),但实际上只有\(2^{47}\),于是内存的起始位置为0x00007fffffffffff(注意内存的地址是逐渐减小的,所以这是起始地址而不是结束地址;参考栈) Stack 如图所示,运行时栈 大小不能超过8 阅读全文
posted @ 2025-07-23 14:01
最爱丁珰
阅读(8)
评论(0)
推荐(0)

浙公网安备 33010602011771号