SEED-Lab复现幽灵漏洞问题

TASK2中的DELTA起什么作用
没有作用
为什么在CACHE_LINE较小的情况下,读数据无法读入缓存
经过测试,在CACHE_LINE<26时,读操作无法载入缓存
关于_rdtscp(&x)函数用法
函数为time=_rdtscp(&junk),其中返回时间戳计数器的时钟数,junk为指向包含计算机特定寄存器 TSC_AUX[31:0] 内容的位置的指针
关于初始化为什么要赋值
将数组写入内存,防止COW(copy on write),即在采用读操作访问同一内存时,他们会获取相同指针获取相同资源。写操作时会复制一份专有副本给进程。通俗易懂的讲,写入时复制技术就是不同进程在访问同一资源的时候,只有更新操作,才会去复制一份新的数据并更新替换,否则都是访问同一个资源。未初始化则存在大片0内存,使进程访问该共享内存。
在数组未初始化时直接访问会导致没有时钟差异,无法通过侧信道攻击时间差异来获取数据。
关于cpu分支训练
两种方式:一为单独构造for循环进行训练,二为将越界分支并入循环,通过计算的方式决定本次执行内容。
第一种方式造成hit率都较低
第二种方式效果较好
原因:第二种方式能够避免分支预测
关于reload方式
两种方式:一为正常循环探测,二为乱序探测(质数乘后与的操作)。
第一种方式造成hit率都偏高
第二种方式效果较好
原因:顺序循环造成cpu预测执行,提前加载内存入缓存

  • 7
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值