CVE Vulnerabilities

CVE-2022-32320

Cross-Site Request Forgery (CSRF)

Published: Jul 17, 2022 | Modified: Jul 25, 2022
CVSS 3.x
8.8
HIGH
Source:
NVD
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
CVSS 2.x
RedHat/V2
RedHat/V3
Ubuntu

A Cross-Site Request Forgery (CSRF) in Ferdi through 5.8.1 and Ferdium through 6.0.0-nightly.98 allows attackers to read files via an uploaded file such as a settings/preferences file.

Weakness

The web application does not, or can not, sufficiently verify whether a well-formed, valid, consistent request was intentionally provided by the user who submitted the request.

Affected Software

Name Vendor Start Version End Version
Ferdium Ferdium 6.0.0 (including) 6.0.0 (including)
Ferdium Ferdium 6.0.0-beta1 (including) 6.0.0-beta1 (including)
Ferdium Ferdium 6.0.0-beta2 (including) 6.0.0-beta2 (including)
Ferdium Ferdium 6.0.0-beta3 (including) 6.0.0-beta3 (including)
Ferdium Ferdium 6.0.0-nightly1 (including) 6.0.0-nightly1 (including)
Ferdium Ferdium 6.0.0-nightly10 (including) 6.0.0-nightly10 (including)
Ferdium Ferdium 6.0.0-nightly11 (including) 6.0.0-nightly11 (including)
Ferdium Ferdium 6.0.0-nightly12 (including) 6.0.0-nightly12 (including)
Ferdium Ferdium 6.0.0-nightly13 (including) 6.0.0-nightly13 (including)
Ferdium Ferdium 6.0.0-nightly14 (including) 6.0.0-nightly14 (including)
Ferdium Ferdium 6.0.0-nightly15 (including) 6.0.0-nightly15 (including)
Ferdium Ferdium 6.0.0-nightly16 (including) 6.0.0-nightly16 (including)
Ferdium Ferdium 6.0.0-nightly17 (including) 6.0.0-nightly17 (including)
Ferdium Ferdium 6.0.0-nightly18 (including) 6.0.0-nightly18 (including)
Ferdium Ferdium 6.0.0-nightly19 (including) 6.0.0-nightly19 (including)
Ferdium Ferdium 6.0.0-nightly2 (including) 6.0.0-nightly2 (including)
Ferdium Ferdium 6.0.0-nightly20 (including) 6.0.0-nightly20 (including)
Ferdium Ferdium 6.0.0-nightly21 (including) 6.0.0-nightly21 (including)
Ferdium Ferdium 6.0.0-nightly22 (including) 6.0.0-nightly22 (including)
Ferdium Ferdium 6.0.0-nightly23 (including) 6.0.0-nightly23 (including)
Ferdium Ferdium 6.0.0-nightly24 (including) 6.0.0-nightly24 (including)
Ferdium Ferdium 6.0.0-nightly25 (including) 6.0.0-nightly25 (including)
Ferdium Ferdium 6.0.0-nightly26 (including) 6.0.0-nightly26 (including)
Ferdium Ferdium 6.0.0-nightly27 (including) 6.0.0-nightly27 (including)
Ferdium Ferdium 6.0.0-nightly28 (including) 6.0.0-nightly28 (including)
Ferdium Ferdium 6.0.0-nightly29 (including) 6.0.0-nightly29 (including)
Ferdium Ferdium 6.0.0-nightly3 (including) 6.0.0-nightly3 (including)
Ferdium Ferdium 6.0.0-nightly30 (including) 6.0.0-nightly30 (including)
Ferdium Ferdium 6.0.0-nightly31 (including) 6.0.0-nightly31 (including)
Ferdium Ferdium 6.0.0-nightly32 (including) 6.0.0-nightly32 (including)
Ferdium Ferdium 6.0.0-nightly33 (including) 6.0.0-nightly33 (including)
Ferdium Ferdium 6.0.0-nightly34 (including) 6.0.0-nightly34 (including)
Ferdium Ferdium 6.0.0-nightly35 (including) 6.0.0-nightly35 (including)
Ferdium Ferdium 6.0.0-nightly36 (including) 6.0.0-nightly36 (including)
Ferdium Ferdium 6.0.0-nightly37 (including) 6.0.0-nightly37 (including)
Ferdium Ferdium 6.0.0-nightly38 (including) 6.0.0-nightly38 (including)
Ferdium Ferdium 6.0.0-nightly39 (including) 6.0.0-nightly39 (including)
Ferdium Ferdium 6.0.0-nightly4 (including) 6.0.0-nightly4 (including)
Ferdium Ferdium 6.0.0-nightly40 (including) 6.0.0-nightly40 (including)
Ferdium Ferdium 6.0.0-nightly41 (including) 6.0.0-nightly41 (including)
Ferdium Ferdium 6.0.0-nightly42 (including) 6.0.0-nightly42 (including)
Ferdium Ferdium 6.0.0-nightly43 (including) 6.0.0-nightly43 (including)
Ferdium Ferdium 6.0.0-nightly44 (including) 6.0.0-nightly44 (including)
Ferdium Ferdium 6.0.0-nightly45 (including) 6.0.0-nightly45 (including)
Ferdium Ferdium 6.0.0-nightly46 (including) 6.0.0-nightly46 (including)
Ferdium Ferdium 6.0.0-nightly47 (including) 6.0.0-nightly47 (including)
Ferdium Ferdium 6.0.0-nightly48 (including) 6.0.0-nightly48 (including)
Ferdium Ferdium 6.0.0-nightly49 (including) 6.0.0-nightly49 (including)
Ferdium Ferdium 6.0.0-nightly5 (including) 6.0.0-nightly5 (including)
Ferdium Ferdium 6.0.0-nightly50 (including) 6.0.0-nightly50 (including)
Ferdium Ferdium 6.0.0-nightly51 (including) 6.0.0-nightly51 (including)
Ferdium Ferdium 6.0.0-nightly52 (including) 6.0.0-nightly52 (including)
Ferdium Ferdium 6.0.0-nightly53 (including) 6.0.0-nightly53 (including)
Ferdium Ferdium 6.0.0-nightly54 (including) 6.0.0-nightly54 (including)
Ferdium Ferdium 6.0.0-nightly55 (including) 6.0.0-nightly55 (including)
Ferdium Ferdium 6.0.0-nightly56 (including) 6.0.0-nightly56 (including)
Ferdium Ferdium 6.0.0-nightly57 (including) 6.0.0-nightly57 (including)
Ferdium Ferdium 6.0.0-nightly58 (including) 6.0.0-nightly58 (including)
Ferdium Ferdium 6.0.0-nightly59 (including) 6.0.0-nightly59 (including)
Ferdium Ferdium 6.0.0-nightly6 (including) 6.0.0-nightly6 (including)
Ferdium Ferdium 6.0.0-nightly60 (including) 6.0.0-nightly60 (including)
Ferdium Ferdium 6.0.0-nightly61 (including) 6.0.0-nightly61 (including)
Ferdium Ferdium 6.0.0-nightly62 (including) 6.0.0-nightly62 (including)
Ferdium Ferdium 6.0.0-nightly63 (including) 6.0.0-nightly63 (including)
Ferdium Ferdium 6.0.0-nightly65 (including) 6.0.0-nightly65 (including)
Ferdium Ferdium 6.0.0-nightly66 (including) 6.0.0-nightly66 (including)
Ferdium Ferdium 6.0.0-nightly67 (including) 6.0.0-nightly67 (including)
Ferdium Ferdium 6.0.0-nightly69 (including) 6.0.0-nightly69 (including)
Ferdium Ferdium 6.0.0-nightly7 (including) 6.0.0-nightly7 (including)
Ferdium Ferdium 6.0.0-nightly70 (including) 6.0.0-nightly70 (including)
Ferdium Ferdium 6.0.0-nightly71 (including) 6.0.0-nightly71 (including)
Ferdium Ferdium 6.0.0-nightly72 (including) 6.0.0-nightly72 (including)
Ferdium Ferdium 6.0.0-nightly73 (including) 6.0.0-nightly73 (including)
Ferdium Ferdium 6.0.0-nightly74 (including) 6.0.0-nightly74 (including)
Ferdium Ferdium 6.0.0-nightly76 (including) 6.0.0-nightly76 (including)
Ferdium Ferdium 6.0.0-nightly77 (including) 6.0.0-nightly77 (including)
Ferdium Ferdium 6.0.0-nightly78 (including) 6.0.0-nightly78 (including)
Ferdium Ferdium 6.0.0-nightly79 (including) 6.0.0-nightly79 (including)
Ferdium Ferdium 6.0.0-nightly8 (including) 6.0.0-nightly8 (including)
Ferdium Ferdium 6.0.0-nightly80 (including) 6.0.0-nightly80 (including)
Ferdium Ferdium 6.0.0-nightly81 (including) 6.0.0-nightly81 (including)
Ferdium Ferdium 6.0.0-nightly82 (including) 6.0.0-nightly82 (including)
Ferdium Ferdium 6.0.0-nightly83 (including) 6.0.0-nightly83 (including)
Ferdium Ferdium 6.0.0-nightly84 (including) 6.0.0-nightly84 (including)
Ferdium Ferdium 6.0.0-nightly85 (including) 6.0.0-nightly85 (including)
Ferdium Ferdium 6.0.0-nightly86 (including) 6.0.0-nightly86 (including)
Ferdium Ferdium 6.0.0-nightly87 (including) 6.0.0-nightly87 (including)
Ferdium Ferdium 6.0.0-nightly88 (including) 6.0.0-nightly88 (including)
Ferdium Ferdium 6.0.0-nightly89 (including) 6.0.0-nightly89 (including)
Ferdium Ferdium 6.0.0-nightly9 (including) 6.0.0-nightly9 (including)
Ferdium Ferdium 6.0.0-nightly90 (including) 6.0.0-nightly90 (including)
Ferdium Ferdium 6.0.0-nightly91 (including) 6.0.0-nightly91 (including)
Ferdium Ferdium 6.0.0-nightly92 (including) 6.0.0-nightly92 (including)
Ferdium Ferdium 6.0.0-nightly93 (including) 6.0.0-nightly93 (including)
Ferdium Ferdium 6.0.0-nightly94 (including) 6.0.0-nightly94 (including)
Ferdium Ferdium 6.0.0-nightly95 (including) 6.0.0-nightly95 (including)
Ferdium Ferdium 6.0.0-nightly96 (including) 6.0.0-nightly96 (including)
Ferdium Ferdium 6.0.0-nightly97 (including) 6.0.0-nightly97 (including)
Ferdium Ferdium 6.0.0-nightly98 (including) 6.0.0-nightly98 (including)
Ferdi Getferdi * 5.8.1 (including)

Potential Mitigations

  • Use a vetted library or framework that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid.
  • For example, use anti-CSRF packages such as the OWASP CSRFGuard. [REF-330]
  • Another example is the ESAPI Session Management control, which includes a component for CSRF. [REF-45]
  • Use the “double-submitted cookie” method as described by Felten and Zeller:
  • When a user visits a site, the site should generate a pseudorandom value and set it as a cookie on the user’s machine. The site should require every form submission to include this value as a form value and also as a cookie value. When a POST request is sent to the site, the request should only be considered valid if the form value and the cookie value are the same.
  • Because of the same-origin policy, an attacker cannot read or modify the value stored in the cookie. To successfully submit a form on behalf of the user, the attacker would have to correctly guess the pseudorandom value. If the pseudorandom value is cryptographically strong, this will be prohibitively difficult.
  • This technique requires Javascript, so it may not work for browsers that have Javascript disabled. [REF-331]

References