<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Oct 3, 2017 at 11:00 PM, Giuseppe de Candia <span dir="ltr"><<a href="mailto:giuseppe.decandia@gmail.com" target="_blank">giuseppe.decandia@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><p class="MsoNormal">Hi Folks,</p><p class="MsoNormal"><br></p><p class="MsoNormal">Are there any documented conventions regarding the
security model for MetaData?</p><p class="MsoNormal"><br></p><p class="MsoNormal">Note that CloudInit allows passing user and ssh service
public/private keys via MetaData service (or ConfigDrive). One assumes it must
be secure, but I have not found a security model or documentation.</p><p class="MsoNormal"><br></p><p class="MsoNormal">My understanding of the
Neutron reference implementation is that MetaData requests are HTTP (not HTTPS)
and go from the VM to the MetaData proxy on the Network Node (after which they
are proxied to Nova meta-data API server). The path from VM to Network Node
using HTTP cannot guarantee confidentiality and is also susceptible to
Man-in-the-Middle attacks.<span></span></p>

<p class="MsoNormal"><span> </span></p>

<span style="font-size:11pt;font-family:Calibri,sans-serif">Some Neutron drivers proxy Metadata requests
locally from the node hosting the VM that makes the query. I have mostly seen
this presented/motivated as a way of removing dependency on the Network node, but it should also increase security. Yet, I have not seen explicit discussions of the security
model, nor any attempt to set a standard for security of the meta-data.</span><br><div><span style="font-size:11pt;font-family:Calibri,sans-serif"><br></span></div><div><span style="font-size:11pt;font-family:Calibri,sans-serif">Finally, there do not seem to be granular controls over what meta-data is presented over ConfigDrive (when enabled) vs. meta-data REST API. As an example, Nova vendor data is presented over both, if both are enabled; config drive is presumably more secure.</span></div><div><span style="font-size:11pt;font-family:Calibri,sans-serif"><br></span></div><div><span style="font-size:11pt;font-family:Calibri,sans-serif">thanks,</span></div><div><span style="font-size:11pt;font-family:Calibri,sans-serif">Pino</span></div><div><span style="font-size:11pt;font-family:Calibri,sans-serif"><br></span></div><div><span style="font-size:11pt;font-family:Calibri,sans-serif"><br></span></div></div>
</blockquote></div><div class="gmail_signature"><div dir="ltr"><br style="font-size:12.8px"></div><div>The recommendation is not to use metadata for security sensitive data (its possible to spoof by setting a X-Forwarded header), please see the following OpenStack Security Note on the topic:</div><div><br></div><div><a href="https://wiki.openstack.org/wiki/OSSN/OSSN-0074">https://wiki.openstack.org/wiki/OSSN/OSSN-0074</a><br></div><div><br></div><div><br></div></div>
</div></div>