Virtualmin/Webmin not secure?

I have a question regarding the following:

http://www.lowendtalk.com/questions/2255/is-su_php-necessary-for-my-vps

“I will advice you to deinstall webmin, because of its vulnerability and many exploits. And for your friend configure scponly account. If you really need webmin, make sure it is only listening on localhost, and access it with ssh port forwarding, from outside of your vps.”

Is this correct. I am a bit concerned now :slight_smile:

Well… I’d say: There is no absolute security, but the people here wouldn’t be selling Virtualmin as a professional hosting control panel, and hosters would not be using it, if it was as insecure as this article suggests.

So, whoever wrote that is greatly exaggerating.

Howdy,

I will advice you to deinstall webmin, because of its vulnerability and many exploits.

It’s certainly wise to evaluate the security track record and outstanding vulnerabilities of any applications you’re installing. I’d encourage you to perform your own evaluation of Webmin/Virtualmin, as well as for any other product you’re looking to install on your system.

However, that post you saw is unfortunately vague. I’m not actually aware of any existing vulnerabilities or exploits, and (IMO) Webmin/Virtualmin has had a pretty good track record over the years.

If it was as bad as that poster suggests, we’d certainly have a hard time making a business out of this as Locutus suggests :slight_smile:

It would seriously bother us if there were outstanding security issues in any of the releases of Webmin, and Virtualmin – if anyone knows of any, let us know as we’d love to get them fixed!

Outside of that – it’s difficult to speak to what that poster is saying since they’re not offering any specifics. And with that in mind, I think I’d be inclined to catalog that under the “people will say anything on the Internet” category :slight_smile:

If you have any specific questions or concerns about Webmin and Virtualmin, feel free to let us know and we’ll do our best to address them! However, there’s many thousands of Webmin and Virtualmin users, and I suspect they’d have long since moved to something else if people were busy exploiting their servers.

-Eric

also this syaman has no real clue what he is talking about…running scripts in safe_mode? lol

Hi guys, thanks for clarifying. Of course there is no absolute security, but it is good to know that there are no known security issues currently.

You probably meant user “dannix” (and not syaman).

By the way, I would also like to add that I noticed many hack attempts in my logs targeting joomla, myphpadmin etc, but never any for webmin/virtualmin. I guess this is very strong indicator that hackers don’t know any vulnerabilities currently.

I’m no security expert, but when I read some allegations that Webmin was highly vulnerable to security attacks, I found this page:

http://www.cvedetails.com/vulnerability-list/vendor_id-358/Webmin.html
(not the only one like it)

I’m evaluating Webmin/Virtualmin et.al for a client, and I like what I see in terms of the user-interface and the scope and content. But it seems to me, if someone lists vulnerabilities in that much detail, wouldn’t you want to get them fixed and (listed as ‘fixed’)?

I have to say, I don’t follow this logic:

“If it was as bad as that poster suggests, we’d certainly have a hard time making a business out of this as Locutus suggests :-)”

How would most people using (fill in the blank) open-source software package even know if it was responsible for a security breach?

It’s not my intention to beat you up over this. I’d just like to hear your side of this story.

Thanks.

FYI…
1 CVE-2015-1377 59 2015-02-10 2015-02-11
4.9
None Local Low Not required Complete None None
The Read Mail module in Webmin 1.720 allows local users to read arbitrary files via a symlink attack on an unspecified file.
2 CVE-2014-3924 79 XSS 2014-05-30 2014-07-17
4.3
None Remote Medium Not required None Partial None
Multiple cross-site scripting (XSS) vulnerabilities in Webmin before 1.690 and Usermin before 1.600 allow remote attackers to inject arbitrary web script or HTML via vectors related to popup windows.
3 CVE-2014-3886 79 XSS 2014-07-20 2014-07-22
2.6
None Remote High Not required None Partial None
Cross-site scripting (XSS) vulnerability in Webmin before 1.690, when referrer checking is disabled, allows remote attackers to inject arbitrary web script or HTML via unspecified vectors. NOTE: this might overlap CVE-2014-3924.
4 CVE-2014-3885 79 XSS 2014-07-20 2014-07-22
4.3
None Remote Medium Not required None Partial None
Cross-site scripting (XSS) vulnerability in Webmin before 1.690 allows remote authenticated users to inject arbitrary web script or HTML via unspecified vectors. NOTE: this might overlap CVE-2014-3924.
5 CVE-2014-3884 79 XSS 2014-07-20 2014-07-22
4.3
None Remote Medium Not required None Partial None
Cross-site scripting (XSS) vulnerability in Usermin before 1.600 allows remote attackers to inject arbitrary web script or HTML via unspecified vectors. NOTE: this might overlap CVE-2014-3924.
6 CVE-2014-3883 78 Exec Code 2014-06-21 2014-06-23
6.8
None Remote Medium Not required Partial Partial Partial
Usermin before 1.600 allows remote attackers to execute arbitrary operating-system commands via unspecified vectors related to a user action.
7 CVE-2014-0339 79 XSS 2014-03-16 2014-09-04
4.3
None Remote Medium Not required None Partial None
Cross-site scripting (XSS) vulnerability in view.cgi in Webmin before 1.680 allows remote attackers to inject arbitrary web script or HTML via the search parameter.
8 CVE-2011-1937 79 XSS 2011-05-31 2011-09-21
4.3
None Remote Medium Not required None Partial None
Cross-site scripting (XSS) vulnerability in Webmin 1.540 and earlier allows local users to inject arbitrary web script or HTML via a chfn command that changes the real (aka Full Name) field, related to useradmin/index.cgi and useradmin/user-lib.pl.
9 CVE-2009-4568 79 XSS 2010-01-05 2010-02-24
4.3
None Remote Medium Not required None Partial None
Cross-site scripting (XSS) vulnerability in Webmin before 1.500 and Usermin before 1.430 allows remote attackers to inject arbitrary web script or HTML via unspecified vectors.
10 CVE-2008-0720 79 XSS 2008-02-11 2008-09-05
4.3
None Remote Medium Not required None Partial None
Cross-site scripting (XSS) vulnerability in Webmin 1.370 and 1.390 and Usermin 1.300 and 1.320 allows remote attackers to inject arbitrary web script or HTML via the search parameter to webmin_search.cgi (aka the search section), and possibly other components accessed through a “search box” or “open file box.” NOTE: some of these details are obtained from third party information.
11 CVE-2007-5066 20 Exec Code 2007-09-24 2008-11-15
9.0
Admin Remote Low Single system Complete Complete Complete
Unspecified vulnerability in Webmin before 1.370 on Windows allows remote authenticated users to execute arbitrary commands via a crafted URL.
12 CVE-2007-3156 79 XSS 2007-06-11 2011-09-13
4.3
None Remote Medium Not required None Partial None
Multiple cross-site scripting (XSS) vulnerabilities in pam_login.cgi in Webmin before 1.350 and Usermin before 1.280 allow remote attackers to inject arbitrary web script or HTML via the (1) cid, (2) message, or (3) question parameter. NOTE: some of these details are obtained from third party information.
13 CVE-2007-1276 352 XSS 2007-03-05 2011-09-13
4.3
None Remote Medium Not required None Partial None
Multiple cross-site scripting (XSS) vulnerabilities in chooser.cgi in Webmin before 1.330 and Usermin before 1.260 allow remote attackers to inject arbitrary web script or HTML via a crafted filename.
14 CVE-2006-4542 79 Exec Code XSS 2006-09-05 2011-03-09
6.8
User Remote Medium Not required Partial Partial Partial
Webmin before 1.296 and Usermin before 1.226 do not properly handle a URL with a null ("%00") character, which allows remote attackers to conduct cross-site scripting (XSS), read CGI program source code, list directories, and possibly execute programs.
15 CVE-2006-3392 Bypass 2006-07-06 2010-09-15
5.0
None Remote Low Not required Partial None None
Webmin before 1.290 and Usermin before 1.220 calls the simplify_path function before decoding HTML, which allows remote attackers to read arbitrary files, as demonstrated using “…%01” sequences, which bypass the removal of “…/” sequences before bytes such as “%01” are removed from the filename. NOTE: This is a different issue than CVE-2006-3274.
16 CVE-2006-3274 Dir. Trav. 2006-06-28 2008-09-05
5.0
None Remote Low Not required Partial None None
Directory traversal vulnerability in Webmin before 1.280, when run on Windows, allows remote attackers to read arbitrary files via \ (backslash) characters in the URL to certain directories under the web root, such as the image directory.
17 CVE-2005-3912 DoS Exec Code 2005-11-30 2010-04-02
7.5
User Remote Low Not required Partial Partial Partial
Format string vulnerability in miniserv.pl Perl web server in Webmin before 1.250 and Usermin before 1.180, with syslog logging enabled, allows remote attackers to cause a denial of service (crash or memory consumption) and possibly execute arbitrary code via format string specifiers in the username parameter to the login form, which is ultimately used in a syslog call. NOTE: the code execution might be associated with an issue in Perl.
18 CVE-2005-3042 Bypass 2005-09-22 2008-11-11
7.5
User Remote Low Not required Partial Partial Partial
miniserv.pl in Webmin before 1.230 and Usermin before 1.160, when “full PAM conversations” is enabled, allows remote attackers to bypass authentication by spoofing session IDs via certain metacharacters (line feed or carriage return).
19 CVE-2005-1177 2005-05-02 2008-09-05
10.0
None Remote Low Not required Complete Complete Complete
Unknown vulnerability in (1) Webmin and (2) Usermin before 1.200 causes Webmin to change permissions and ownership of configuration files, with unknown impact.
20 CVE-2004-1468 Exec Code 2004-12-31 2008-09-05
7.5
User Remote Low Not required Partial Partial Partial
The web mail functionality in Usermin 1.x and Webmin 1.x allows remote attackers to execute arbitrary commands via shell metacharacters in an e-mail message.
21 CVE-2004-0583 2004-08-06 2008-09-05
5.0
None Remote Low Not required Partial None None
The account lockout functionality in (1) Webmin 1.140 and (2) Usermin 1.070 does not parse certain character strings, which allows remote attackers to conduct a brute force attack to guess user IDs and passwords.
22 CVE-2004-0582 Bypass 2004-08-06 2008-09-05
5.0
None Remote Low Not required Partial None None
Unknown vulnerability in Webmin 1.140 allows remote attackers to bypass access control rules and gain read access to configuration information for a module.
23 CVE-2004-0559 2004-10-20 2008-09-05
2.1
None Local Low Not required None Partial None
The maketemp.pl script in Usermin 1.070 and 1.080 allows local users to overwrite arbitrary files at install time via a symlink attack on the /tmp/.usermin directory.
24 CVE-2003-0101 +Priv 2003-03-03 2008-09-10
10.0
Admin Remote Low Not required Complete Complete Complete
miniserv.pl in (1) Webmin before 1.070 and (2) Usermin before 1.000 does not properly handle metacharacters such as line feeds and carriage returns (CRLF) in Base-64 encoded strings during Basic authentication, which allows remote attackers to spoof a session ID and gain root privileges.
25 CVE-2002-2360 264 Exec Code 2002-12-31 2008-09-05
9.3
Admin Remote Medium Not required Complete Complete Complete
The RPC module in Webmin 0.21 through 0.99, when installed without root or admin privileges, allows remote attackers to read and write to arbitrary files and execute arbitrary commands via remote_foreign_require and remote_foreign_call requests.
26 CVE-2002-2201 Exec Code 2002-12-31 2008-09-05
10.0
Admin Remote Low Not required Complete Complete Complete
The Printer Administration module for Webmin 0.990 and earlier allows remote attackers to execute arbitrary commands via shell metacharacters in the printer name.
27 CVE-2002-1947 2002-12-31 2008-09-05
6.4
None Remote Low Not required Partial Partial None
Webmin 0.21 through 1.0 uses the same built-in SSL key for all installations, which allows remote attackers to eavesdrop or highjack the SSL session.
28 CVE-2002-1673 Exec Code 2002-12-31 2008-09-05
3.6
None Local Low Not required Partial Partial None
The web interface for Webmin 0.92 does not properly quote or filter script code in files that are displayed to the interface, which allows local users to execute script and possibly steal cookies by inserting the script into certain files or fields, such as a real user name entry in the passwd file.
29 CVE-2002-1672 2002-12-31 2008-09-05
2.1
None Local Low Not required Partial None None
Webmin 0.92, when installed from an RPM, creates /var/webmin with insecure permissions (world readable), which could allow local users to read the root user’s cookie-based authentication credentials and possibly hijack the root user’s session using the credentials.
30 CVE-2002-0757 +Priv Bypass 2002-08-12 2008-09-05
7.5
User Remote Low Not required Partial Partial Partial
(1) Webmin 0.96 and (2) Usermin 0.90 with password timeouts enabled allow local and possibly remote attackers to bypass authentication and gain privileges via certain control characters in the authentication information, which can force Webmin or Usermin to accept arbitrary username/session ID combinations.
31 CVE-2002-0756 XSS 2002-08-12 2008-09-05
7.5
User Remote Low Not required Partial Partial Partial
Cross-site scripting vulnerability in the authentication page for (1) Webmin 0.96 and (2) Usermin 0.90 allows remote attackers to insert script into an error page and possibly steal cookies.
32 CVE-2001-1530 Exec Code 2001-12-31 2008-09-05
4.6
User Local Low Not required Partial Partial Partial
run.cgi in Webmin 0.80 and 0.88 creates temporary files with world-writable permissions, which allows local users to execute arbitrary commands.
33 CVE-2001-1196 +Priv Dir. Trav. 2001-12-17 2008-09-05
10.0
Admin Remote Low Not required Complete Complete Complete
Directory traversal vulnerability in edit_action.cgi of Webmin Directory 0.91 allows attackers to gain privileges via a ‘…’ (dot dot) in the argument.
34 CVE-2001-1074 +Priv 2001-05-28 2008-09-05
7.2
Admin Local Low Not required Complete Complete Complete
Webmin 0.84 and earlier does not properly clear the HTTP_AUTHORIZATION environment variable when the web server is restarted, which makes authentication information available to all CGI programs and allows local users to gain privileges.
35 CVE-2001-0222 2001-03-26 2008-09-10
1.2
None Local High Not required None Partial None
webmin 0.84 and earlier allows local users to overwrite and create arbitrary files via a symlink attack.
36 CVE-1999-1074 +Priv 1999-12-31 2008-09-09
7.5
None Remote Low Not required Partial Partial Partial
Webmin before 0.5 does not restrict the number of invalid passwords that are entered for a valid username, which could allow remote attackers to gain privileges via brute force password cracking.
Total number of vulnerabilities : 36 Page : 1 (This Page)

Howdy,

Security is taken very seriously in Webmin and Virtualmin.

You can see a list of security vulnerabilities that have been discovered/reported, and then corrected, here:

http://www.webmin.com/security.html

Unfortunately, they aren’t listed with their “CVE” numbers there. I’ll talk to Jamie about including those, as that would make it easier to understand which vulnerability was patched.

-Eric

Everything that has a CVE (or otherwise has been made known to us) has been fixed in current Virtualmin/Webmin versions. I agree we should be listing the CVE number in our change log (if one exists), and will try to make sure that happens going forward.

When we get security issue reports, we pretty much drop everything, and roll a new version as soon as possible with the fixes. We aren’t perfect, and with a system as large and complex as Webmin/Virtualmin/Cloudmin/Usermin (over 500kLOC) it would be practically impossible to say “this is secure”.

We are unaware of any currently existing security bugs in Webmin or Virtualmin; and, you may note that the CVEs you’ve listed provide information about the versions effected. Current versions are not among them. They also list the number of known exploits.

As Eric mentioned, we take it seriously, and whenever we receive security reports, we fix the reported issues and check the rest of the code for similar mistakes. We also work with the reporter to insure the issue gets fixed.