<div dir="ltr">Hi Loganaden,<div><br></div><div>I am not sure how privilege separation would be beneficial, since dnsmasq drops almost all of its capabilities in dnsmasq.c:597 and therefore, doing privilege separation for the remaining capabilities may not be worth it.</div><div><br></div><div>Kind regards,</div><div>Denis.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Sep 5, 2017 at 1:09 PM, Loganaden Velvindron <span dir="ltr"><<a href="mailto:loganaden@gmail.com" target="_blank">loganaden@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Tue, Sep 5, 2017 at 2:32 PM, Denis Solonkov <<a href="mailto:solonkovda@google.com">solonkovda@google.com</a>> wrote:<br>
> Hi Simon,<br>
><br>
><br>
> As part of my Google summer internship project I have implemented a sandbox<br>
> for dnsmasq, based on Linux seccomp-bpf and mount namespace, with tests and<br>
> documentation.<br>
><br>
> Such sandbox provides defense in depth to dnsmasq, by restricting what files<br>
> it can access and which syscalls it can make, in case remote code execution<br>
> vulnerabilities are discovered in dnsmasq.<br>
><br>
> Would you be interested in reviewing my patches and maybe integrate them in<br>
> dnsmasq?<br>
><br>
> Please find attached my patch against master head, but let me know if there<br>
> is another way for us to review and discuss the change.<br>
><br>
><br>
<br>
</span>The project is interesting. May I suggest looking into privilege<br>
separation such as what OpenBSD has been doing before applying the<br>
sandbox ?<br>
<br>
<a href="http://quigon.bsws.de/papers/aalborg2009/mgp00043.html" rel="noreferrer" target="_blank">http://quigon.bsws.de/papers/<wbr>aalborg2009/mgp00043.html</a><br>
<br>
Also, maybe look at unbound, which has a privilege separation design as well.<br>
<br>
Have a look at OpenBSD's imsg framework which is light and easy to port:<br>
<br>
<a href="http://man.openbsd.org/imsg_init" rel="noreferrer" target="_blank">http://man.openbsd.org/imsg_<wbr>init</a><br>
</blockquote></div><br></div>