Avi Kivity wrote:
Anthony Liguori wrote:

I think it is a bad idea from a security POV to automatically extract & use command line args from a disk image like this without the admin explicitly requesting this capability. eg If I grabbed a demo disk image from a vendors' or community website I would certainly not trust whatever args may happen to be embedded in the disk image
and thus do not want QEMU to be automatically running using them.

I'd recommend having some command line flag to turn this capability on. For
example a '--args PATH-TO-DISK' flag,

  qemu --args $HOME/fedora.qcow

That's pretty nasty. How do you specify which disk this is then? I do agree with you that allowing arbitrary command line arguments in an image file is probably a bad idea. I think the general idea of being able to launch a single image is useful but I suspect this is not the right way to do it.

What are some people thinking would want to be stored in the file? Most of the command line options are more host specific than guest specific I think. Maybe we can store a pseudo-config instead that only contains a subset of parameters (and therefore, wouldn't pose a security risk)?

Memory size, -hdb and -cdrom, processor count, networking setup. The sort of things people push into ad-hoc scripts.

I expect this to be the low-end solution; with high end management applications storing configuration options in a database.

If you're looking for a low-end solution, another possibility would be having a "new" file format which consisted of:

#!/path/to/qemu [<args> ...] <nl>
<standard disk image>

And then make the appropriate changes to QEMU such that it can skip the first line in a disk image file. This has a few nice side effects. The disk image is directly executable and it makes it very clear to the user that they have to trust the disk image. The other nice thing is that it would work with file formats other than qcow2.

Regards,

Anthony Liguori




Reply via email to