#727633 tightvncserver: config allows arbitrary code execution

Package:
tightvncserver
Source:
tightvnc
Description:
virtual network computing server software
Submitter:
David Fries
Date:
2013-10-24 19:00:06 UTC
Severity:
normal
#727633#5
Date:
2013-10-24 18:42:17 UTC
From:
To:
Dear Maintainer,

examples/vnc.conf.gz lists
"It is perl syntax, but only variable assignment is allowed"

Actually arbitrary code execution is allowed with a classic SQL ';'
exploitation technique, which I figured out how to take advantage of
to add a new option when starting the server.
$tmp_local="ignore";push(@ARGV,'-dpi 96');print "after $Config_file, args; @ARGV\n";

Or something like this works.
$tmp_local="ignore";exit(1);

I'm not sure how much this matters because the file will either be an
administrator owned file or the user owned file.  Or the documentation
could be updated.
"The perl interpreter 'eval' is used and must be contain a variable assignment."

Still there should be a better way to pass additional options to the
vnc server from the config file.