CVE-2017-10661触发

时间:2017-08-31 09:54:15

标签: android security linux-kernel

我正在尝试创建一个触发CVE-2017-10661的c程序。

据我所知,因为如果对文件描述符进行并行操作,may_cancel机制就没有得到妥善保护,你可能会导致崩溃。

我相信这些并行操作是读取,轮询等对吗?

目前我已经写了这段代码。

private RelativeLayout getParentView(){
    return (RelativeLayout) MyActivity.this.getWindow().getDecorView().getRootView();
}

如你所见,我设置了一个计时器,然后我只做了一个阅读操作。有没有办法通过进行多次读取或轮询来触发错误?

1 个答案:

答案 0 :(得分:1)

竞争条件由timerfd_settime() - >触发timerfd_setup_cancel() - > timerfd_setup_cancel()。因此,您应该使用多个线程来执行timerfd_settime,并将标记设为TFD_TIMER_ABSTIME|TFD_TIMER_CANCEL_ON_SET

以下是我在网上找到的POC