|
|
Subscribe / Log in / New account

Security

The OWASP ModSecurity Core Rule Set 3.0

December 21, 2016

This article was contributed by Christian Folini

A defensive approach to web-application security generally relies on an onion architecture, with multiple layers of defense. One of those layers is often a web-application firewall (WAF), such as a WAF created using ModSecurity. As we saw in last week's article, though, writing ModSecurity rules for a web application can be an overwhelming task. For that reason, many turn to the OWASP ModSecurity Core Rule Set, or CRS for short; that project has just released CRS 3.0 with many improvements—notably for false-positive elimination.

Some background

The CRS is a set of generic blacklisting rules. Ofer Shezaf started the project almost exactly ten years ago by pulling in regular expressions from various other defense projects and writing new rules of his own. Later, Ryan Barnett took over and introduced the CRS scoring mechanism, where individual rules no longer block requests directly but, instead, raise an anomaly score. When all the rules have been executed, a user-defined threshold is applied and the request is blocked if it exceeds the value.

Barnett also steered the project into the arms of the Open Web Application Security Project (OWASP), where it is supported as a flagship project. It has become the most widespread WAF rule set on the internet. Last winter, Chaim Sanders took over and revived the project which had slowed down a bit.

The CRS is a set of about 200 rules that try to detect attacks against web applications in a generic way. It does not know about individual exploits, but it knows the typical building blocks that are often used to construct attacks, such as those described by the OWASP Top Ten project.

One example might be hex-encoded payloads. Various SQL servers are known to decode and execute hex-encoded queries. Hex-encoded payloads are thus a good entry point for SQL injection attacks. That is why the CRS has a rule that detects a hex-encoded payload and flags it as a potential attack.

This is clearly a heuristic approach. Of course, not all hex-encoded payloads are an attack and sometimes you cannot even be sure something is really hex-encoded or just looks that way. So, in real life, there is always the chance of a false alarm: a false positive of the detection mechanism.

A typical example in this regard is session cookies: web applications use cookies to identify users by assigning their browser session a random string as a token. The browser will then submit this identification string with every request and the application server is able to link the request to a session. Many applications generate random session identifiers in a way that does not raise suspicion (e.g. simple hex strings without any "0x"). But there are applications that use the full alphabet and the numbers 0-9 for session identifiers. So there is some chance that the token string will contain "0x" followed by some hexadecimal numbers. The rule watching out for hex-encoded payloads will score a hit now and potentially block the user.

And that was exactly how this would play out in all CRS releases in the 2.x series. ModSecurity would alert on every request of the session with messages pointing to rule 981260 "SQL Hex Encoding Identified" (rule). It does not take much imagination to see that false positives are a major roadblock for WAF deployments and especially ModSecurity CRS deployments. However, with the new CRS 3.0 release, this is largely not the case.

New features of the 3.0 release

For the Core Rule Set 3.0 release, Sanders made the fight against false positives a priority. This was really needed, as false positives like the notorious "SQL Hex Encoding Identified"—or its partners in crime 981172 "Restricted SQL Character Anomaly Detection Alert: Cookies" (rule) and 981173 "Restricted SQL Character Anomaly Detection Alert: Request Parameters" (rule)—buried many system administrators under an avalanche of reports. False positives combined with a lack of documentation and guidance on how to fight them effectively would often lead to frustration and a full stop to the ModSecurity adventure. Or the WAF was put in detection-only mode with nobody looking at the alerts anymore. With the release of CRS 3.0, over 95% of false positives in the default install are gone. How was this achieved?

First, the rule set was consolidated for the CRS 3.0 release. This process began when Barnett was still running the project. The rules were categorized and only those that contributed substantially to the detection rate made the cut. Second, a wide group of SQL-injection and cross-site scripting (XSS) rules was abandoned in favor of Nick Galbreath's libinjection library, which does a far better job than the previous heuristics.

This year, the project closed existing holes in its detection capabilities. Walter Hop extended the rules fighting remote command execution (RCE) substantially and introduced a small group of highly efficient rules to detect PHP injection attempts. This is a delicate area as the most widespread content management systems (CMS) are written in PHP and their installations regularly fall victim to all sorts of attacks.

Of course, a CMS protected by the CRS used to cause many false positives, so the new rules had to be diligent in avoiding them. On top of this, the new release comes with a set of optional rule exclusions for the core installations of WordPress and Drupal. These are optional configuration files that tune the rules to avoid false positives for these applications. This means it switches off certain rules for certain requests or parameters where it is known that ModSecurity would trigger an alert.

Disabling individual rules in this way is always a compromise. The idea is to keep the disruption of the rule set to a minimum and, by reducing the false positives in such a way, allow people to actually run ModSecurity for WordPress and Drupal. Formerly, installations of CRS 2.x were usually disabled rather quickly unless the system administrator invested a lot of time and effort into the badly documented tuning process. The CRS 3.0 release also updates the documentation with a series of tutorials hosted at netnea, guiding users through the ModSecurity installation, the inclusion of the Core Rule Set, and handling the remaining false positives. Combine this with the second edition of the ModSecurity Handbook that has been released as a preview and you can see that the documentation situation has improved a great deal.

The default CRS 3.0 install is generally meant to be mostly void of false positives and it has detection capabilities at least on par with the CRS 2.x release line. Once the anomaly scoring threshold has been reduced to the minimum, if a higher security level is desired, more rules that are disabled by default can be enabled. This is called "Paranoia Mode". It is configured via the Paranoia Level (PL) configuration item.

Paranoia Level, which defaults to one, controls the selection of rules applied to a request. At PL1, you get about 150 rules known to have a high detection ability and that are unlikely to provoke false positives. Raise that to PL2 and you get an additional set of 30 rules that are a bit more aggressive—a bit more paranoid, so to speak. They cover more attacks, effectively raising the security level, but the system will likely receive a few false alarms in return, so the security comes at a price. The standard procedure is to look at these false positives and write rule exclusions.

Go to PL3 to get another 15 rules and now quite a few false positives with them. At PL3, one will become quite proficient at handling false positives. Finally, raising to PL4 reaches the maximum level of paranoia. Here, half a dozen additional rules go crazy with anything that does not look totally innocent.

For example, PL4 defines a small range of byte values it accepts in a request body. Every file upload and most special characters outside of letters and numbers will provoke an alert in an extremely paranoid way. If you write the necessary rule exclusions, you end up with an efficient way of protecting your application, with special characters limited to the places where they are really mandatory for the online application.

The definition of the byte range is also present in PL1, PL2, and PL3, but it is much more lax. With every new PL, new rules are applied that restrict the character set more and more. Think of it as a relaxed base rule and a set of stricter siblings.

The Paranoia Levels are meant to be mapped to the security level of a site. A private blog does not have same resources to put into security that a site processing credit card data does. The project envisions a future where security officers and auditors regularly assign CRS Paranoia Levels to online services: "This is a PL3 service. Please reserve time in the project for the handling of false positives."

False positives are not the only obstacle on the road to a tight CRS setup. Often, system administrators are afraid of the performance impact. This is a serious concern. There is typically a performance loss of a few percentage points when introducing ModSecurity with the CRS. The exact value is hard to know in advance and depends on the situation.

The new Sampling Mode allows enabling the CRS for a limited percentage of requests in order to get a feeling for it. That makes it possible to observe the behavior and performance of an installation on a controllable number of requests. With growing confidence and possible performance problems weeded out, the sampling percentage can slowly be raised until 100%, which is the default value.

[CRS poster]

Overall, the kinds of attacks that the CRS targets are the major problem areas for web applications today, which is unsurprising. SQL injection, cross-site scripting, PHP code injection, and shell command injection are the types of attacks where the CRS has the strongest protections. Within the many rules, however, there are also rules covering protocol violations and alerting on back-end error messages reaching attackers.

With these new features and the false-positive problem solved to a large extent, the Core Rule Set is now ready for prime time. The times where only ModSecurity experts succeeded with their setups are gone. Well-tested beginner-level documentation, in the form of the tutorials mentioned above, and professional courses are available. So the project believes that the rule set is ready for wide adoption. This CRS 3.0 release is thus aimed at mainstream installations. The project has highlighted this with a release poster (seen at right) aimed at mainstream adoption.

Plans for the future

The mainstreaming of the CRS will also allow the project to bring new people into the community to help with the plans it has for the future. The developers want to reduce the remaining false negatives by using new detection methods. The project also wants to follow the development of new exploits and bypasses more attentively so that holes can be closed more quickly.

CRS 3.0 demonstrates that a predefined set of rule exclusions allows for a simple installation for WordPress and Drupal core. The project hopes to join forces with developers and security teams to expand this to the standard plugins for these systems and for a wider set of standard online applications that would be supported with optional rule exclusion files in future CRS releases.

The CRS documentation has improved a great deal. But the project won't stop until every rule is documented individually with an explanation of the mechanism, as well as examples of payloads triggering the rule, and unit tests safeguarding against errors in future pull requests. Eventually, the CRS project sees the rule set rolled out as the first line of defense against web-application attacks in the same way that hosting providers are now installing free TLS certificates from Let's Encrypt by default: simple, smooth, and with no nasty side effects, but a big improvement in terms of security.

Comments (none posted)

Brief items

Security quotes of the week

No matter how bad the next four years get, I don't believe that a Trump administration will permanently end privacy, freedom, and liberty in the US. I don't believe that it portends a radical change in our democracy. (Or if it does, we have bigger problems than a free and secure Internet.) It's true that some of Trump's institutional changes might take decades to undo. Even so, I am confident -- optimistic even -- that the US will eventually come around; and when that time comes, we need good ideas in place for people to come around to. This means proposals for non-surveillance-based Internet business models, research into effective law enforcement that preserves privacy, intelligent limits on how corporations can collect and exploit our data, and so on.
Bruce Schneier

As the dumpster fire that is 2016 crawls to the finish line, we had another story about a massive Yahoo breach. 1 billion user accounts had data stolen. Just to give some context here, that has to be hundreds of gigabytes at an absolute minimum. That's a crazy amount of data.

And nobody really cares.

Sure, there is some noise about all this, but in a week or two nobody will even remember. There has been a similar story to this about every month all year long. Can you even remember any of them? The stock market doesn't, basically everyone who has ever had a crazy breach hasn't seen a long term problem with their stock. Sure there will be a blip where everyone panics for a few days, then things go back to normal.

Josh Bressers

Comments (1 posted)

O'Cearbhaill: Reliably compromising Ubuntu desktops by attacking the crash reporter

Donncha O'Cearbhaill has discovered that Ubuntu's "apport" tool, which handles application crash data, passes arbitrary data to the Python eval() function. There are a couple of other vulnerabilities as well, making it possible to fully compromise a system. The bugs (now known as CVE-2016-9949, CVE-2016-9950, and CVE-2016-9951) have been fixed; applying the updates is highly recommended for Ubuntu users. "The computer security industry has a serious conflict of interest right now. There is major financial motivation for researchers to find and disclose vulnerability to exploit brokers. Many of the brokers are in the business of keeping problems unfixed. Code execution bugs are valuable. As a data point, I received an offer of more than 10,000 USD from an exploit vendor for these Apport bugs."

Comments (18 posted)

Project Wycheproof

Google has announced the release of a set of security tests that check cryptographic software libraries for known weaknesses, called Project Wycheproof. "Our first set of tests are written in Java, because Java has a common cryptographic interface. This allowed us to test multiple providers with a single test suite. While this interface is somewhat low level, and should not be used directly, we still apply a "defense in depth" argument and expect that the implementations are as robust as possible. For example, we consider weak default values to be a significant security flaw. We are converting as many tests into sets of test vectors to simplify porting the tests to other languages."

Comments (none posted)

A security update from the Freenode infrastructure team

A freenode volunteer identified a suspected compromise of their e-mail accounts, which could have provided an unauthorized user with limited access to some data sent through internal e-mail systems. "Naturally, we instigated audit procedures immediately so as to ensure the security of the production network and accompanying infrastructure. The investigation is ongoing, but at this time we have no reason to believe that any other unauthorised access was gained. Nevertheless, in the interests of transparency and security for our users, we wish to notify anyone who may have been affected." It is recommended that you change your Freenode password as a precaution. (Thanks to Paul Wise)

Comments (9 posted)

New vulnerabilities

apport: three vulnerabilities

Package(s):apport CVE #(s):CVE-2016-9949 CVE-2016-9950 CVE-2016-9951
Created:December 15, 2016 Updated:December 21, 2016
Description: From the Ubuntu advisory:

Donncha O Cearbhaill discovered that the crash file parser in Apport improperly treated the CrashDB field as python code. An attacker could use this to convince a user to open a maliciously crafted crash file and execute arbitrary code with the privileges of that user. This issue only affected Ubuntu 14.04 LTS and Ubuntu 16.04 LTS. (CVE-2016-9949)

Donncha O Cearbhaill discovered that Apport did not properly sanitize the Package and SourcePackage fields in crash files before processing package specific hooks. An attacker could use this to convince a user to open a maliciously crafted crash file and execute arbitrary code with the privileges of that user. (CVE-2016-9950)

Donncha O Cearbhaill discovered that Apport would offer to restart an application based on the contents of the RespawnCommand or ProcCmdline fields in a crash file. An attacker could use this to convince a user to open a maliciously crafted crash file and execute arbitrary code with the privileges of that user. (CVE-2016-9951)

Alerts:
Ubuntu USN-3157-1 apport 2016-12-14

Comments (none posted)

ceph: denial of service

Package(s):ceph CVE #(s):CVE-2016-5009
Created:December 21, 2016 Updated:December 21, 2016
Description: From the CVE entry:

The handle_command function in mon/Monitor.cc in Ceph allows remote authenticated users to cause a denial of service (segmentation fault and ceph monitor crash) via an (1) empty or (2) crafted prefix.

Alerts:
openSUSE openSUSE-SU-2016:3201-1 ceph 2016-12-20

Comments (none posted)

dcmtk: buffer overflows/underflows

Package(s):dcmtk CVE #(s):CVE-2015-8979
Created:December 21, 2016 Updated:December 30, 2016
Description: From the Debian LTS advisory:

At several places in the code a wrong length of ACSE data structures received over the network can cause overflows or underflows when processing those data structures. Related checks have been added at various places in order to prevent such (possible) attacks. Thanks to Kevin Basista for the report.

The bug will indeed affect all DCMTK-based server applications that accept incoming DICOM network connections that are using the dcmtk-3.6.0 and earlier versions.

Alerts:
Debian DSA-3749-1 dcmtk 2016-12-29
Debian-LTS DLA-755-1 dcmtk 2016-12-21

Comments (none posted)

firefox: denial of service

Package(s):firefox CVE #(s):
Created:December 16, 2016 Updated:December 21, 2016
Description: From the Red Hat bugzilla entry:

Dragging around the Google map from http://pskreporter.info/ for a bit, in an X session, eventually causes firefox to crash with a Gdk-ERROR BadAccess

Alerts:
Fedora FEDORA-2016-85eae56259 firefox 2016-12-19
Fedora FEDORA-2016-bd94ef48c8 firefox 2016-12-16
Fedora FEDORA-2016-f115a880a6 firefox 2016-12-16

Comments (none posted)

flightgear: file overwrites

Package(s):flightgear CVE #(s):CVE-2016-9956
Created:December 21, 2016 Updated:January 9, 2017
Description: From the Debian advisory:

It was discovered that the Flight Gear flight simulator performs insufficient sanitising of Nasal scripts which allows a malicious script to overwrite arbitrary files with the privileges of the user running Flight Gear.

Alerts:
Mageia MGASA-2017-0011 flightgear 2017-01-09
Fedora FEDORA-2016-a1f774c3d7 FlightGear 2017-01-06
Fedora FEDORA-2016-01eba63bcc FlightGear 2017-01-06
Debian DSA-3742-1 flightgear 2016-12-20

Comments (none posted)

freeipa: two vulnerabilities

Package(s):freeipa CVE #(s):CVE-2016-9575 CVE-2016-7030
Created:December 20, 2016 Updated:January 4, 2017
Description: From the Red Hat bugzilla:

CVE-2016-9575: Due to a missing permission check, certprofile-mod can be used by an authenticated but unprivileged user to modify certificate profile configuration. This could allow the issuance of certificates with fraudulent subject naming information (allowing the holder of the private key to impersonate another entity), or inappropriate key usage or extended key usage information (use of certificate for unauthorised purposes e.g. code signing).

Affected versions : 4.2 and above (all versions supporting certificate profiles)

CVE-2016-7030: A flaw was found that allows any unauthenticated party to easily run DoS attack against kerberized services in FreeIPA/IdM realm.

FreeIPA contains MIT KDC as its main component + FreeIPA is using custom database driver for the KDC. As a side-effect of implementation, FreeIPA is enforcing password policies for all principals, including services which do not use "password" but keytab with randomly-generated/strong key.

Default password policy locks an account after 5 unsuccessful authentication attempts for 10 minutes. An attacker can use this to simply lock-out any principal, including system services.

Alerts:
Scientific Linux SLSA-2017:0001-1 ipa 2017-01-03
Fedora FEDORA-2016-d337166907 freeipa 2017-01-03
Oracle ELSA-2017-0001 ipa 2017-01-03
CentOS CESA-2017:0001 ipa 2017-01-02
Red Hat RHSA-2017:0001-01 ipa 2017-01-02
Fedora FEDORA-2016-ca1d1e1dc1 freeipa 2016-12-19

Comments (none posted)

game-music-emu: multiple vulnerabilities

Package(s):game-music-emu CVE #(s):CVE-2016-9957 CVE-2016-9958 CVE-2016-9959 CVE-2016-9960 CVE-2016-9961
Created:December 19, 2016 Updated:February 13, 2017
Description: From the Debian LTS advisory:

Chris Evans found several issues in the emulation code in game-music-emu that could lead to arbitrary code execution. Further information can be found at http://scarybeastsecurity.blogspot.de/2016/12/redux-compromising-linux-using-snes.html

Alerts:
Mageia MGASA-2017-0046 audacious-plugins 2017-02-12
Fedora FEDORA-2017-3d771a1702 audacious-plugins 2017-01-25
Fedora FEDORA-2017-5bf9a268df audacious-plugins 2017-01-24
Fedora FEDORA-2017-5bf9a268df audacious 2017-01-24
openSUSE openSUSE-SU-2017:0022-1 libgme 2017-01-04
Fedora FEDORA-2016-04383482b4 game-music-emu 2016-12-31
Mageia MGASA-2016-0428 game-music-emu 2016-12-29
SUSE SUSE-SU-2016:3250-1 libgme 2016-12-22
Debian DSA-3735-1 game-music-emu 2016-12-15
Fedora FEDORA-2016-fbf9f8b204 game-music-emu 2016-12-19
Debian-LTS DLA-750-1 game-music-emu 2016-12-17

Comments (none posted)

gstreamer-plugins-good: denial of service

Package(s):gstreamer-plugins-good CVE #(s):CVE-2016-9807
Created:December 21, 2016 Updated:December 22, 2016
Description: From the Red Hat advisory:

An invalid memory read access flaw was found in GStreamer's FLC/FLI/FLX media file format decoding plug-in. A remote attacker could use this flaw to cause an application using GStreamer to crash.

Alerts:
openSUSE openSUSE-SU-2017:0298-1 gstreamer-0_10-plugins-good 2017-01-27
SUSE SUSE-SU-2017:0225-1 gstreamer-0_10-plugins-good 2017-01-20
SUSE SUSE-SU-2017:0237-1 gstreamer-0_10-plugins-good 2017-01-20
SUSE SUSE-SU-2017:0210-1 gstreamer-0_10-plugins-good 2017-01-19
openSUSE openSUSE-SU-2017:0151-1 gstreamer-plugins-good 2017-01-16
openSUSE openSUSE-SU-2017:0141-1 gstreamer-plugins-good 2017-01-16
openSUSE openSUSE-SU-2017:0160-1 gstreamer-0_10-plugins-good 2017-01-16
CentOS CESA-2017:0020 gstreamer1-plugins-good 2017-01-09
CentOS CESA-2017:0019 gstreamer-plugins-good 2017-01-09
openSUSE openSUSE-SU-2017:0071-1 gstreamer-plugins-good 2017-01-08
Scientific Linux SLSA-2017:0020-1 gstreamer1-plugins-good 2017-01-05
Scientific Linux SLSA-2017:0019-1 gstreamer-plugins-good 2017-01-05
Oracle ELSA-2017-0020 gstreamer1-plugins-good 2017-01-05
Oracle ELSA-2017-0019 gstreamer-plugins-good 2017-01-05
Red Hat RHSA-2017:0020-01 gstreamer1-plugins-good 2017-01-05
Red Hat RHSA-2017:0019-01 gstreamer-plugins-good 2017-01-05
SUSE SUSE-SU-2016:3303-1 gstreamer-plugins-good 2016-12-30
SUSE SUSE-SU-2016:3288-1 gstreamer-plugins-good 2016-12-29
Mageia MGASA-2016-0424 gstreamer1.0-plugins-good 2016-12-29
Oracle ELSA-2016-2975 gstreamer-plugins-good 2016-12-21
CentOS CESA-2016:2975 gstreamer-plugins-good 2016-12-21
Scientific Linux SLSA-2016:2975-1 gstreamer-plugins-good 2016-12-21
Red Hat RHSA-2016:2975-01 gstreamer-plugins-good 2016-12-21

Comments (none posted)

kernel: out of bounds stack read

Package(s):kernel CVE #(s):CVE-2016-8399
Created:December 19, 2016 Updated:December 21, 2016
Description: From the Red Hat bugzilla:

Due to lack of size checking on ICMP header length, it is possible to cause out-of-bounds read on stack.

Alerts:
SUSE SUSE-SU-2017:0494-1 the Linux Kernel 2017-02-17
SUSE SUSE-SU-2017:0471-1 kernel 2017-02-15
SUSE SUSE-SU-2017:0464-1 kernel 2017-02-15
Ubuntu USN-3190-2 linux-raspi2 2017-02-09
SUSE SUSE-SU-2017:0437-1 the Linux Kernel 2017-02-09
SUSE SUSE-SU-2017:0407-1 kernel 2017-02-06
Ubuntu USN-3189-2 linux-lts-xenial 2017-02-03
Ubuntu USN-3189-1 linux, linux-raspi2, linux-snapdragon 2017-02-03
Ubuntu USN-3190-1 kernel 2017-02-03
SUSE SUSE-SU-2017:0333-1 kernel 2017-01-30
Mageia MGASA-2017-0004 kernel-tmb 2017-01-03
Mageia MGASA-2017-0003 kernel-linus 2017-01-03
Debian-LTS DLA-772-1 kernel 2017-01-01
Mageia MGASA-2016-0429 kernel, kmod 2016-12-29
Fedora FEDORA-2016-e5b72816d0 kernel 2016-12-16
Fedora FEDORA-2016-02db2f32fd kernel 2016-12-16

Comments (none posted)

kernel: two vulnerabilities

Package(s):kernel CVE #(s):CVE-2016-6213 CVE-2016-9313
Created:December 21, 2016 Updated:December 21, 2016
Description: From the Ubuntu advisory:

CAI Qian discovered that shared bind mounts in a mount namespace exponentially added entries without restriction to the Linux kernel's mount table. A local attacker could use this to cause a denial of service (system crash). (CVE-2016-6213)

It was discovered that the keyring implementation in the Linux kernel improperly handled crypto registration in conjunction with successful key- type registration. A local attacker could use this to cause a denial of service (system crash). (CVE-2016-9313)

Alerts:
Ubuntu USN-3161-4 linux-snapdragon 2016-12-20
Ubuntu USN-3161-3 linux-raspi2 2016-12-20
Ubuntu USN-3162-2 linux-raspi2 2016-12-20
Ubuntu USN-3161-2 linux-lts-xenial 2016-12-20
Ubuntu USN-3160-2 linux-lts-trusty 2016-12-20
Ubuntu USN-3160-1 kernel 2016-12-20
Ubuntu USN-3161-1 kernel 2016-12-20
Ubuntu USN-3162-1 kernel 2016-12-20

Comments (none posted)

kernel: code execution

Package(s):kernel CVE #(s):CVE-2016-4568
Created:December 21, 2016 Updated:December 21, 2016
Description: From the Ubuntu advisory:

It was discovered that the Video For Linux Two (v4l2) implementation in the Linux kernel did not properly handle multiple planes when processing a VIDIOC_DQBUF ioctl(). A local attacker could use this to cause a denial of service (system crash) or possibly execute arbitrary code.

Alerts:
Ubuntu USN-3161-4 linux-snapdragon 2016-12-20
Ubuntu USN-3161-3 linux-raspi2 2016-12-20
Ubuntu USN-3161-2 linux-lts-xenial 2016-12-20
Ubuntu USN-3161-1 kernel 2016-12-20

Comments (none posted)

libupnp: code execution

Package(s):libupnp CVE #(s):CVE-2016-8863
Created:December 16, 2016 Updated:January 4, 2017
Description: From the Debian advisory:

CVE-2016-8863: Scott Tenaglia discovered a heap buffer overflow vulnerability, that can lead to denial of service or remote code execution.

Alerts:
Gentoo 201701-52 libupnp 2017-01-23
Mageia MGASA-2017-0002 libupnp 2017-01-03
Debian-LTS DLA-747-1 libupnp 2016-12-16
Debian-LTS DLA-748-1 libupnp4 2016-12-16
Debian DSA-3736-1 libupnp 2016-12-16

Comments (none posted)

most: command execution

Package(s):most CVE #(s):CVE-2016-1253
Created:December 19, 2016 Updated:December 21, 2016
Description: From the Debian LTS advisory:

The most pager can automatically open files compressed with gzip, bzip2 and (in Debian) LZMA. Alberto Garcia discovered that Debian's version of most was susceptible for a shell injection attack that could be exploited to run arbitrary commands on the user's computer.

Alerts:
Debian-LTS DLA-745-1 most 2016-12-16

Comments (none posted)

nagios: two vulnerabilities

Package(s):nagios CVE #(s):CVE-2016-9565 CVE-2016-9566
Created:December 19, 2016 Updated:February 13, 2017
Description: From the CVE entries:

MagpieRSS, as used in the front-end component in Nagios Core before 4.2.2 might allow remote attackers to read or write to arbitrary files by spoofing a crafted response from the Nagios RSS feed server. NOTE: this vulnerability exists because of an incomplete fix for CVE-2008-4796. (CVE-2016-9565)

base/logging.c in Nagios Core before 4.2.4 allows local users with access to an account in the nagios group to gain root privileges via a symlink attack on the log file. NOTE: this can be leveraged by remote attackers using CVE-2016-9565. (CVE-2016-9566)

Alerts:
Gentoo 201702-26 nagios-core 2017-02-21
Mageia MGASA-2017-0045 nagios 2017-02-12
Red Hat RHSA-2017:0211-01 nagios 2017-01-31
Red Hat RHSA-2017:0212-01 nagios 2017-01-31
Red Hat RHSA-2017:0213-01 nagios 2017-01-31
Red Hat RHSA-2017:0214-01 nagios 2017-01-31
openSUSE openSUSE-SU-2017:0146-1 icinga 2017-01-16
Gentoo 201612-51 icinga 2016-12-31
Debian-LTS DLA-751-1 nagios3 2016-12-16

Comments (none posted)

openjpeg2: two vulnerabilities

Package(s):openjpeg2 CVE #(s):CVE-2016-9580 CVE-2016-9581
Created:December 20, 2016 Updated:January 2, 2017
Description: From the Red Hat bugzilla:

CVE-2016-9580: An integer overflow vulnerability was found in tiftoimage function resulting into heap buffer overflow.

CVE-2016-9581: An infinite loop vulnerability in tiftoimage that results into heap buffer overflow in convert_32s_C1P1 was found.

Alerts:
openSUSE openSUSE-SU-2017:0207-1 openjpeg2 2017-01-19
openSUSE openSUSE-SU-2017:0185-1 openjpeg2 2017-01-17
openSUSE openSUSE-SU-2017:0155-1 openjpeg2 2017-01-16
Fedora FEDORA-2016-3b7f39a8c1 openjpeg2 2017-01-01
Fedora FEDORA-2016-52a1b18397 mingw-openjpeg2 2017-01-01
Fedora FEDORA-2016-89ee54c661 mingw-openjpeg2 2017-01-01
Mageia MGASA-2016-0426 openjpeg2 2016-12-29
SUSE SUSE-SU-2016:3270-1 openjpeg2 2016-12-27
Fedora FEDORA-2016-c404a59411 openjpeg2 2016-12-19

Comments (none posted)

python-bottle: CRLF attacks

Package(s):python-bottle CVE #(s):CVE-2016-9964
Created:December 21, 2016 Updated:January 30, 2017
Description: From the Debian advisory:

It was discovered that bottle, a WSGI-framework for the Python programming language, did not properly filter "\r\n" sequences when handling redirections. This allowed an attacker to perform CRLF attacks such as HTTP header injection.

Alerts:
Mageia MGASA-2017-0031 python-bottle 2017-01-29
Debian-LTS DLA-761-2 python-bottle 2017-01-15
Debian DSA-3743-2 python-bottle 2017-01-15
Debian-LTS DLA-761-1 python-bottle 2016-12-24
Debian DSA-3743-1 python-bottle 2016-12-20

Comments (none posted)

samba: three vulnerabilities

Package(s):samba CVE #(s):CVE-2016-2123 CVE-2016-2125 CVE-2016-2126
Created:December 19, 2016 Updated:January 9, 2017
Description: From the Debian advisory:

CVE-2016-2123: Trend Micro's Zero Day Initiative and Frederic Besler discovered that the routine ndr_pull_dnsp_name, used to parse data from the Samba Active Directory ldb database, contains an integer overflow flaw, leading to an attacker-controlled memory overwrite. An authenticated user can take advantage of this flaw for remote privilege escalation.

CVE-2016-2125: Simo Sorce of Red Hat discovered that the Samba client code always requests a forwardable ticket when using Kerberos authentication. A target server, which must be in the current or trusted domain/realm, is given a valid general purpose Kerberos "Ticket Granting Ticket" (TGT), which can be used to fully impersonate the authenticated user or service.

CVE-2016-2126: Volker Lendecke discovered several flaws in the Kerberos PAC validation. A remote, authenticated, attacker can cause the winbindd process to crash using a legitimate Kerberos ticket due to incorrect handling of the PAC checksum. A local service with access to the winbindd privileged pipe can cause winbindd to cache elevated access permissions.

Alerts:
Fedora FEDORA-2017-d0a537062c samba 2017-01-09
Mageia MGASA-2016-0431 samba 2016-12-30
openSUSE openSUSE-SU-2017:0020-1 samba 2017-01-04
openSUSE openSUSE-SU-2017:0021-1 samba 2017-01-04
Debian-LTS DLA-776-1 samba 2017-01-02
Slackware SSA:2016-363-02 samba 2016-12-28
Fedora FEDORA-2016-364f61377b samba 2016-12-22
Arch Linux ASA-201612-19 samba 2016-12-23
Ubuntu USN-3158-1 samba 2016-12-19
Debian DSA-3740-1 samba 2016-12-19

Comments (none posted)

tomcat: two vulnerabilities

Package(s):tomcat CVE #(s):CVE-2016-9774 CVE-2016-9775
Created:December 19, 2016 Updated:December 21, 2016
Description: From the Debian advisory:

Multiple security vulnerabilities were discovered in the Tomcat servlet and JSP engine, as well as in its Debian-specific maintainer scripts. Those flaws allowed for privilege escalation, information disclosure, and remote code execution.

Alerts:
Ubuntu USN-3177-2 tomcat 2017-02-02
Ubuntu USN-3177-1 tomcat6, tomcat7, tomcat8 2017-01-23
Debian-LTS DLA-753-1 tomcat7 2016-12-18
Debian-LTS DLA-746-2 tomcat6 2016-12-17
Debian-LTS DLA-746-1 tomcat6 2016-12-16
Debian DSA-3739-1 tomcat8 2016-12-18
Debian DSA-3738-1 tomcat7 2016-12-18

Comments (none posted)

tomcat: denial of service

Package(s):tomcat CVE #(s):CVE-2016-6817
Created:December 15, 2016 Updated:December 21, 2016
Description: From the Red Hat bugzilla entry:

The HTTP/2 header parser entered an infinite loop if a header was received that was larger than the available buffer. This made a denial of service attack possible.

Alerts:
Fedora FEDORA-2016-9c33466fbb tomcat 2016-12-15
Fedora FEDORA-2016-a98c560116 tomcat 2016-12-14
Fedora FEDORA-2016-98cca07999 tomcat 2016-12-14

Comments (none posted)

tor: denial of service

Package(s):tor CVE #(s):CVE-2016-1254
Created:December 20, 2016 Updated:January 6, 2017
Description: From the Debian advisory:

It was discovered that Tor, a connection-based low-latency anonymous communication system, may read one byte past a buffer when parsing hidden service descriptors. This issue may enable a hostile hidden service to crash Tor clients depending on hardening options and malloc implementation.

Alerts:
Mageia MGASA-2017-0008 tor 2017-01-06
Fedora FEDORA-2016-76b646637e tor 2016-12-31
Fedora FEDORA-2016-95b4e9077e tor 2016-12-31
openSUSE openSUSE-SU-2016:3281-1 tor 2016-12-28
openSUSE openSUSE-SU-2016:3282-1 tor 2016-12-28
Debian-LTS DLA-754-1 tor 2016-12-20
Debian DSA-3741-1 tor 2016-12-20

Comments (none posted)

xen: information leak

Package(s):xen CVE #(s):CVE-2016-9932
Created:December 20, 2016 Updated:December 22, 2016
Description: From the Red Hat bugzilla:

The x86 instruction CMPXCHG8B is supposed to ignore legacy operand size overrides; it only honors the REX.W override (making it CMPXCHG16B). So, the operand size is always 8 or 16.

When support for CMPXCHG16B emulation was added to the instruction emulator, this restriction on the set of possible operand sizes was relied on in some parts of the emulation; but a wrong, fully general, operand size value was used for other parts of the emulation.

As a result, if a guest uses a supposedly-ignored operand size prefix, a small amount of hypervisor stack data is leaked to the guests: a 96 bit leak to guests running in 64-bit mode; or, a 32 bit leak to other guests.

A malicious unprivileged guest may be able to obtain sensitive information from the host.

Alerts:
Mageia MGASA-2017-0012 xen 2017-01-09
openSUSE openSUSE-SU-2017:0008-1 xen 2017-01-02
openSUSE openSUSE-SU-2017:0007-1 xen 2017-01-02
openSUSE openSUSE-SU-2017:0005-1 xen 2017-01-02
Gentoo 201612-56 xen 2016-12-31
Fedora FEDORA-2016-bcbae0781f xen 2016-12-23
SUSE SUSE-SU-2016:3207-1 xen 2016-12-21
SUSE SUSE-SU-2016:3208-1 xen 2016-12-21
SUSE SUSE-SU-2016:3221-1 xen 2016-12-22
SUSE SUSE-SU-2016:3241-1 xen 2016-12-22
Fedora FEDORA-2016-1b868c23a9 xen 2016-12-19

Comments (none posted)

xen: multiple vulnerabilities

Package(s):xen CVE #(s):CVE-2016-9815 CVE-2016-9816 CVE-2016-9817 CVE-2016-9818 CVE-2016-9921 CVE-2016-9922 CVE-2016-9913 CVE-2016-9914 CVE-2016-9915 CVE-2016-9916
Created:December 19, 2016 Updated:December 21, 2016
Description: From the Red Hat bugzilla:

CVE-2016-9913, CVE-2016-9914, CVE-2016-9915, CVE-2016-9916: Quick Emulator(Qemu) built with the VirtFS, host directory sharing via Plan 9 File System(9pfs) support, is vulnerable to memory leakage issue. It could occur via its '9p-handle' or '9p-proxy' backend drivers as they do not free their respective allocated data objects.

A privileged user inside guest could use this flaw to leak host memory, thus affecting other services on the host and/or potentially crash the Qemu process on the host.

CVE-2016-9815, CVE-2016-9816, CVE-2016-9817, CVE-2016-9818, xsa201: Depending on how the hardware and firmware have been integrated, guest-triggered asynchronous aborts (SError on ARMv8) may be received by the hypervisor. The current action is to crash the host.

A guest might trigger an asynchronous abort when accessing memory mapped hardware in a non-conventional way. Even if device pass-through has not been configured, the hypervisor may give the guest access to memory mapped hardware in order to take advantage of hardware virtualization.

CVE-2016-9921, CVE-2016-9922: Quick emulator(Qemu) built with the Cirrus CLGD 54xx VGA Emulator support is vulnerable to a divide by zero issue. It could occur while copying VGA data when cirrus graphics mode was set to be VGA.

A privileged user inside guest could use this flaw to crash the Qemu process instance on the host, resulting in DoS.

Alerts:
Fedora FEDORA-2017-12394e2cc7 qemu 2017-01-25
Gentoo 201701-49 qemu 2017-01-23
Fedora FEDORA-2017-b953d4d3a4 qemu 2017-01-20
openSUSE openSUSE-SU-2017:0194-1 qemu 2017-01-18
SUSE SUSE-SU-2017:0127-1 qemu 2017-01-13
Gentoo 201612-56 xen 2016-12-31
Debian-LTS DLA-765-1 qemu-kvm 2016-12-26
Debian-LTS DLA-764-1 qemu 2016-12-26
Fedora FEDORA-2016-bcbae0781f xen 2016-12-23
Fedora FEDORA-2016-1b868c23a9 xen 2016-12-19
Fedora FEDORA-2016-cc2916dcf4 xen 2016-12-19

Comments (none posted)

zlib: multiple vulnerabilities

Package(s):zlib CVE #(s):CVE-2016-9840 CVE-2016-9841 CVE-2016-9842 CVE-2016-9843
Created:December 21, 2016 Updated:January 23, 2017
Description: From the openSUSE advisory:

- Avoid out-of-bounds pointer arithmetic in inftrees.c (boo#1003579, CVE-2016-9840, CVE-2016-9841)

- Avoid left-shift with negative number (boo#1003580, CVE-2016-9842)

- Avoid undefined behaviour in pointer arithmetic on powerpc (boo#1013882, CVE-2016-9843)

Alerts:
Gentoo 201701-56 zlib 2017-01-23
openSUSE openSUSE-SU-2017:0077-1 zlib 2017-01-08
openSUSE openSUSE-SU-2017:0080-1 zlib 2017-01-08
openSUSE openSUSE-SU-2016:3202-1 zlib 2016-12-20

Comments (none posted)

Page editor: Jake Edge
Next page: Kernel development>>


Copyright © 2016, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds