lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  PHC 
Open Source and information security mailing list archives
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
From: mattmurphy at (
Subject: Advisory: Multiple Vulnerabilities in Monit

Multiple Vulnerabilities in Monit

I. Product Description

As quoted from web page:

"monit is a utility for managing and monitoring, processes, files,
directories and devices on a Unix system. Monit conducts automatic
maintenance and repair and can execute meaningful causal actions in error
situations. E.g. monit can start a process if it does not run, restart a
process if it does not respond and stop a process if it uses to much
resources. You may use monit to monitor files, directories and devices for
changes, such as timestamp changes, checksum changes or size changes. You
can also use monit to monitor remote hosts; monit can ping a remote host
and can check port connections and protocols."

II. Affected Systems

Stable: Monit 4.2 and prior
Beta: Monit 4.3 Beta 2 and prior

III. Vulnerability Description

Three vulnerabilities were found in Monit during a simple code review.  All
of the vulnerabilities are in Monit's HTTP/HTTPS administration interfaces,
and as such can only be exploited if the interface is enabled and
accessible.  Two of the vulnerabilities lie in the Basic authentication
code, while one vulnerability lies in the processing of POST requests.  

* Basic Authentication Out-of-Bounds Read (Denial of Service)

When faced with a Basic authentication request without a password, Monit
will decrement a pointer returned by a strchr() call without appropriate
NULL pointer checking.  The error results in a segmentation fault during a
strcpy() call.  This request can be generated with a simple web browser. 
This vulnerability does not allow users to gain privileges on the server. 
For instance.  Specifically, if the base64-decoded credentials string does
not contain a colon, the vulnerability can be exploited.

* Basic Authentication Buffer Overflow (Remote Root)

When faced with a Basic authentication request with an overly-long user
name (> 256 characters), vulnerable versions of Monit will overrun a
stack-based buffer.  This potentially allows a remote attacker to gain root

* POST Input Off-By-One (Exploitability Varies)

When faced with a POST submission that is exactly 1,024 bytes, Monit
suffers from an off-by-one overflow.  Exploitability depends upon the
version of gcc used to compile the application.  Some compilers will allow
this overflow to modify the frame pointer, potentially controlling stack

* UPDATE: Integer Overflow in POST Input Handler (Initially discovered by

S-Quadra discovered that a large HTTP POST would cause an xmalloc() call
within the WBA to fail.  This issue was fixed in 4.2.1 as a denial of
service.  In fact, this code also contained an exploitable integer
overflow.  By specifying a Content-Length header of -1, a zero-byte heap
allocation is performed.  An attacker can then input an arbitrary amount of
data, overwriting significant portions of the heap.  My research suggests
that this issue could also be exploited.

IV. Impact

A remote attacker with access to Monit's WBA via HTTP or HTTPS clients
could potentially gain the privileges of the root user.

V. Vendor Response

April 3, 2004:
    * First two vulnerabilities discovered
    * Monit team notified via e-mail (
April 4, 2004:
    * Response from Jan Henrik-Haukeland (
    * Patch for first two reports committed to CVS
    * Third vulnerability discovered
    * Monit team notified via e-mail (
April 5, 2004:
    * Response from Jan Henrik-Haukeland (
    * Patch for third issue committed to CVS
    * Monit team releases security advisory
    * Monit 4.2.1 released
    * Monit 4.3 Beta 3 released
    * Public disclosure

The Monit team deserves praise on a very speedy response to this
vulnerability.  Particularly noteworthy is that the vendor was notified
shortly before midnight on April 4, 2004.  The patch for each of these
issues was committed to CVS within 18 hours of the initial report.  Thanks
to Jan Henrik-Haukeland for a fast response to this issue.

VI. Workaround

For those who cannot immediately upgrade packages, it is recommended that
the Monit HTTP interface be disabled.  If access to this interface is
necessary, limit it to the Local Area Network with appropriate firewalling.
Upgrading as listed in "Solution" below is recommended if possible.  For
those users of Monit who have deployed vendor-provided packages, you should
wait for updated vendor binaries.

VII. Solution

* Monit 4.2 Stable:

The vendor has released Monit 4.2.1, which contains these fixes.  It can be
downloaded at:
MD5 Checksum:

* Monit 4.3 Beta:

The vendor has released Monit 4.3 Beta 3, which contains these fixes.  It
can be downloaded at:
MD5 Checksum:

The vendor has released a security advisory documenting these

mail2web - Check your email from the web at .

Powered by blists - more mailing lists