CVE-2020-11054: Qutebrowser Incorrect Provision Of Specified Functionality Vulnerability

LOW
Advisory Identifier: GHSA-4rcq-jv2f-898j
CVSS 3.5
CWE-684
Published
Advisory Summary

CVE-2020-11054 is a LOW (CVSS 3.5) incorrect provision of specified functionality vulnerability (CWE-684: Incorrect Provision of Specified Functionality) affecting Qutebrowser libraries in the PyPI ecosystem. The issue involves incorrect provision of specified functionality in qutebrowser. Remediation is available by upgrading affected packages to version 1.11.1.

CVE-2020-11054 at a Glance

CVE Identifier CVE-2020-11054
GHSA Identifier GHSA-4rcq-jv2f-898j
Severity LOW
CVSS v3.1 Base Score 3.5
CWE Classification CWE-684: Incorrect Provision of Specified Functionality
Affected Product Qutebrowser
Package Ecosystem PyPI
Published Date
Last Updated

Security Impact

CVSS: 3.5

The security impact metrics below are parsed directly from the CVSS v3.1 vector string (CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:N).

Attack Vector Network (AV:N)
Attack Complexity Low (AC:L)
Privileges Required Low (PR:L)
User Interaction Required (UI:R)
Scope Unchanged (S:U)
Confidentiality Low (C:L)
Integrity None (I:N)
Availability None (A:N)

How to Fix CVE-2020-11054

To remediate this vulnerability, upgrade all affected Qutebrowser dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.

qutebrowser fixed: 1.11.1
pip install qutebrowser>=1.11.1
Verify Direct and Transitive Dependencies

Run the following command in your project directory to verify that all resolved dependencies use the patched release:

pip show qutebrowser

How to Check if You Are Affected

To determine whether your Python environment is affected by CVE-2020-11054, inspect your installed packages using pip:

pip show qutebrowser

Analyze the terminal output to locate any version of Qutebrowser in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 1.11.1), your application is affected.

Note: The pip show qutebrowser command checks currently installed packages in your active Python environment.

Technical Details

Vulnerability Mechanism & Technical Analysis

This vulnerability is classified under CWE-684: Incorrect Provision of Specified Functionality, where the code does not function according to its published specifications, potentially leading to incorrect usage. In Qutebrowser, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.

Source Advisory Statement

# Description After a certificate error was overridden by the user, qutebrowser displays the URL as yellow (`colors.statusbar.url.warn.fg`). However, when the affected website was subsequently loaded again, the URL was mistakenly displayed as green (`colors.statusbar.url.success_https`). While the user already has seen a certificate error prompt at this point (or set `content.ssl_strict` to `false` which is not recommended), this could still provide a false sense of security. # Affected versions and patches All versions of qutebrowser are believed to be affected, though versions before v0.11.x couldn't be tested. The issue is fixed in qutebrowser v1.11.1 (pending release) and v1.12.0 (unreleased). Backported patches for older versions are available, but no further releases are planned. # Mitigation If you are unable to upgrade: - Treat any host with a certificate exception as insecure, ignoring the URL color - Or set `content.ssl_strict` to `True` (instead of `'ask'`), preventing certificate exceptions # References - qutebrowser issue: https://github.com/qutebrowser/qutebrowser/issues/5403 - Fix (master branch): https://github.com/qutebrowser/qutebrowser/commit/021ab572a319ca3db5907a33a59774f502b3b975 - Related issue for KDE Falkon: https://bugs.kde.org/show_bug.cgi?id=420902 - Related issue for eric6 Web Browser: https://tracker.die-offenbachs.homelinux.org/eric/issue328 (fixed in eric6 20.6)

CVE-2020-11054 Affected Qutebrowser Versions

1 component(s)
Fixed Versions:
1.11.1
Product / Package Ecosystem Affected Versions Fixed Version
qutebrowser
PyPI
< 1.11.1
1.11.1

References

GitHub Advisory / Wiki ADVISORY
https://github.com/qutebrowser/qutebrowser/security/advisories/GHSA-4rcq-jv2f-898j
NVD — CVE-2020-11054 NVD
https://nvd.nist.gov/vuln/detail/CVE-2020-11054
Qutebrowser Source Repository REPOSITORY
https://github.com/qutebrowser/qutebrowser/issues/5403
Security Fix Commit FIX COMMIT
https://github.com/qutebrowser/qutebrowser/commit/021ab572a319ca3db5907a33a59774f502b3b975
Security Fix Commit FIX COMMIT
https://github.com/qutebrowser/qutebrowser/commit/19f01bb42d02da539446a52a25bb0c1232b86327
Security Fix Commit FIX COMMIT
https://github.com/qutebrowser/qutebrowser/commit/1b7946ed14b386a24db050f2d6dba81ba6518755
Security Fix Commit FIX COMMIT
https://github.com/qutebrowser/qutebrowser/commit/2281a205c3e70ec20f35ec8fafecee0d5c4f3478
Security Fix Commit FIX COMMIT
https://github.com/qutebrowser/qutebrowser/commit/4020210b193f77cf1785b21717f6ef7c5de5f0f8
Security Fix Commit FIX COMMIT
https://github.com/qutebrowser/qutebrowser/commit/6821c236f9ae23adf21d46ce0d56768ac8d0c467
Security Fix Commit FIX COMMIT
https://github.com/qutebrowser/qutebrowser/commit/9bd1cf585fccdfe8318fff7af793730e74a04db3
Security Fix Commit FIX COMMIT
https://github.com/qutebrowser/qutebrowser/commit/a45ca9c788f648d10cccce2af41405bf25ee2948
Security Fix Commit FIX COMMIT
https://github.com/qutebrowser/qutebrowser/commit/d28ed758d077a5bf19ddac4da468f7224114df23
Security Fix Commit FIX COMMIT
https://github.com/qutebrowser/qutebrowser/commit/f5d801251aa5436aff44660c87d7013e29ac5864
tracker.die-offenbachs.homelinux.org/eric/issue328 WEB
https://tracker.die-offenbachs.homelinux.org/eric/issue328
lists.fedoraproject.org/archives/list/packa... WEB
https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/MKAZOOTJ2MBHTYVYQQ52NL53F5CB2XAP
lists.fedoraproject.org/archives/list/packa... WEB
https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/7YWJ5QNHXKTGG5NLV7EGEOKPBVZBA5GS
Qutebrowser Source Repository REPOSITORY
https://github.com/qutebrowser/qutebrowser
Qutebrowser Source Repository REPOSITORY
https://github.com/pypa/advisory-database/tree/main/vulns/qutebrowser/PYSEC-2020-97.yaml

Frequently Asked Questions

What is CVE-2020-11054?
CVE-2020-11054 is a security vulnerability in Qutebrowser involving Incorrect Provision of Specified Functionality in qutebrowser under CWE-684: Incorrect Provision of Specified Functionality.
Which Qutebrowser versions are affected?
Affected versions include releases prior to 1.11.1 across affected packages: qutebrowser.
What version fixes CVE-2020-11054?
Upgrading to 1.11.1 (or the latest patched release for your respective branch) resolves the vulnerability.
Is qutebrowser affected?
Yes, qutebrowser is affected in releases prior to 1.11.1. Upgrade your dependency to 1.11.1 or later.
What is the CVSS score of CVE-2020-11054?
CVE-2020-11054 has a CVSS v3.1 base score of 3.5 (LOW) with vector string CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:N.
What CWE is associated with CVE-2020-11054?
CVE-2020-11054 is classified under CWE-684: Incorrect Provision of Specified Functionality (The code does not function according to its published specifications, potentially leading to incorrect usage.).
How can I check PyPI dependencies for CVE-2020-11054?
Run the dependency tree command: 'pip show qutebrowser'. This command lists direct and transitive dependencies in your build configuration so you can verify if a vulnerable version is resolved.
Machine-readable OSV JSON OSV v1.5 Schema
Normalized schema output
{
  "schema_version" : "1.4.0",
  "id" : "GHSA-4rcq-jv2f-898j",
  "modified" : "2024-10-16T21:01:54Z",
  "published" : "2020-05-08T19:05:05Z",
  "aliases" : [ "CVE-2020-11054" ],
  "summary" : "Incorrect Provision of Specified Functionality in qutebrowser",
  "details" : "# Description\n\nAfter a certificate error was overridden by the user, qutebrowser displays the URL as yellow (`colors.statusbar.url.warn.fg`). However, when the affected website was subsequently loaded again, the URL was mistakenly displayed as green (`colors.statusbar.url.success_https`). While the user already has seen a certificate error prompt at this point (or set `content.ssl_strict` to `false` which is not recommended), this could still provide a false sense of security.\n\n# Affected versions and patches\n\nAll versions of qutebrowser are believed to be affected, though versions before v0.11.x couldn't be tested.\n\nThe issue is fixed in qutebrowser v1.11.1 (pending release) and v1.12.0 (unreleased). Backported patches for older versions are available, but no further releases are planned.\n\n# Mitigation\n\nIf you are unable to upgrade:\n\n- Treat any host with a certificate exception as insecure, ignoring the URL color\n- Or set `content.ssl_strict` to `True` (instead of `'ask'`), preventing certificate exceptions\n\n# References\n\n- qutebrowser issue: https://github.com/qutebrowser/qutebrowser/issues/5403\n- Fix (master branch): https://github.com/qutebrowser/qutebrowser/commit/021ab572a319ca3db5907a33a59774f502b3b975\n- Related issue for KDE Falkon: https://bugs.kde.org/show_bug.cgi?id=420902\n- Related issue for eric6 Web Browser: https://tracker.die-offenbachs.homelinux.org/eric/issue328 (fixed in eric6 20.6)",
  "severity" : [ {
    "type" : "CVSS_V3",
    "score" : "CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:N"
  } ],
  "affected" : [ {
    "package" : {
      "ecosystem" : "PyPI",
      "name" : "qutebrowser"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "0"
      }, {
        "fixed" : "1.11.1"
      } ]
    } ]
  } ],
  "references" : [ {
    "type" : "WEB",
    "url" : "https://github.com/qutebrowser/qutebrowser/security/advisories/GHSA-4rcq-jv2f-898j"
  }, {
    "type" : "ADVISORY",
    "url" : "https://nvd.nist.gov/vuln/detail/CVE-2020-11054"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/qutebrowser/qutebrowser/issues/5403"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/qutebrowser/qutebrowser/commit/021ab572a319ca3db5907a33a59774f502b3b975"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/qutebrowser/qutebrowser/commit/19f01bb42d02da539446a52a25bb0c1232b86327"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/qutebrowser/qutebrowser/commit/1b7946ed14b386a24db050f2d6dba81ba6518755"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/qutebrowser/qutebrowser/commit/2281a205c3e70ec20f35ec8fafecee0d5c4f3478"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/qutebrowser/qutebrowser/commit/4020210b193f77cf1785b21717f6ef7c5de5f0f8"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/qutebrowser/qutebrowser/commit/6821c236f9ae23adf21d46ce0d56768ac8d0c467"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/qutebrowser/qutebrowser/commit/9bd1cf585fccdfe8318fff7af793730e74a04db3"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/qutebrowser/qutebrowser/commit/a45ca9c788f648d10cccce2af41405bf25ee2948"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/qutebrowser/qutebrowser/commit/d28ed758d077a5bf19ddac4da468f7224114df23"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/qutebrowser/qutebrowser/commit/f5d801251aa5436aff44660c87d7013e29ac5864"
  }, {
    "type" : "WEB",
    "url" : "https://tracker.die-offenbachs.homelinux.org/eric/issue328"
  }, {
    "type" : "WEB",
    "url" : "https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/MKAZOOTJ2MBHTYVYQQ52NL53F5CB2XAP"
  }, {
    "type" : "WEB",
    "url" : "https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/7YWJ5QNHXKTGG5NLV7EGEOKPBVZBA5GS"
  }, {
    "type" : "PACKAGE",
    "url" : "https://github.com/qutebrowser/qutebrowser"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/pypa/advisory-database/tree/main/vulns/qutebrowser/PYSEC-2020-97.yaml"
  } ],
  "database_specific" : {
    "cwe_ids" : [ "CWE-684" ],
    "severity" : "LOW",
    "github_reviewed" : true,
    "github_reviewed_at" : "2020-05-08T19:04:30Z",
    "nvd_published_at" : "2020-05-07T21:15:00Z"
  }
}