有一段时间没更新博客了,一方面是被这道题卡住,另一方面也是最近比较颓废,基本上每天都在睡觉。这道题感觉已经做不出来了,所以我就把分析放在这里,以后看看能不能解掉吧。程序的功能为:读取、模拟、加载用户输入的 bpf 代码,其中加载时使用的是 prctl 系统调用,功能号为 PR_GET_SECCOMP。与 BPF 相关的知识可以参考 seccomp 中的 bpf为了分析方便,根据 cBPF 和...
今天协会打了一场内部 AWD,第一次参加这样的比赛,确实有不少手忙脚乱的地方,也有学到许多新知识。PWN 总共有两题,其中一题虚拟机类题由于有较大的 switch 结构,而 gcc 在编译超过 5 个 case 的 switch 时就会用跳表来优化,F5 之后一般会变成下面这个样子也就是 IDA 无法分析出这是一个 switch 结构,这就会导致大量的代码丢失。修复的方法是使用 Edit-&...