workspace/research/
Research
研究笔记、实验记录与学习资料。
- Perf与简单的侧信道攻击
CTF
perf
简介
perf是 Linux 系统性能分析工具集,全称是Performance Event Counters它基于 Linux 内核的 perf_events 子系统,能够提供硬件和软件层面的性能分析能力 我们这里会用到它的一些功能以获取一些硬件事件的信息,因此,你必须确保自己的虚拟机支持PMU功能准备perf
事前准备
首先确定你的设备支持 PMU 功能,如果条件允许,实体机上使用 perf 会方便很多,如果你使用的是 wsl2 作为使用的虚拟机,请在设置中开启
性能计数器,并使用除 ubuntu 以外的系统,因为 wsl2 对内核的魔改会导致一些兼容性问题,我捣鼓了两天也没能完美解决,可以在 wsl2 上选择其他 Linux 进行尝试,或者换用 VMware ,在使用VMware时,请在硬件设置里,添加上虚拟化 CPU 性能计数器,并禁用所有HyperV相关的设置,并关闭虚拟化保护 包括(仅限VMware使用者,wsl2 不要改):- Windows安全中心 -> 设备安全性 -> 内核隔离 -> 内存完整性/本地安全机构保护
- Windows功能 -> Hyper-V/Virtual Machine Platform/Windows虚拟机监控程序平台
perf安装
安装 perf 可以通过
sudo apt-get install linux-tools-generic相关设置
使用权限
等安装完成后并不能直接使用,你需要先查看
cat /proc/sys/kernel/perf_event_paranoid这个
perf_event_paranoid设置了运行时权限相关的内容,建议修改成小于等于1的值sudo sh -c 'echo -1 > /proc/sys/kernel/perf_event_paranoid'CPU核心与内存分配
此时可以尝试一下使用
Terminal
C0nvR3 Lab terminal ready. Type help for commands.