core: OPNsense: Root RCE via Arbitrary File Write in GeoIP Alias Importer
What fixes it
No source in this snapshot names a fixed version. The vendor advisories under References are the place to check.
Description
OPNsense is a FreeBSD based firewall and routing platform. Prior to version 26.1.11, the Firewall Alias GeoIP importer's process_zip() and process_gzip() paths in src/opnsense/scripts/filter/lib/alias/geoip.py use an unvalidated CSV country_code value to construct output filenames below /usr/local/share/GeoIP/alias. A user with Firewall Alias Edit privilege can configure an attacker-controlled GeoIP source URL and supply an archive whose country code traverses into another existing directory, causing attacker-controlled content to be written as root with an -IPv4 or -IPv6 suffix. A crafted newsyslog fragment and oversized log file can use the default hourly root cron job to execute commands as root, resulting in complete firewall compromise. This issue is fixed in version 26.1.11.
Text from CVE List
Affected versions 1
- coreaffected: < 26.1.11CVE List
References 4
- github.com/opnsense/core/commit/c46aced9c47d956167e294911113bc334fea5f48Fixvia CVE List
- github.com/opnsense/core/commit/e7fbfaa7f5e070da667e3f243da11fd3d4b731faFixvia CVE List
- github.com/opnsense/core/security/advisories/GHSA-wjqq-rfmm-v5h3Exploitvia CVE List
- hackerask.com/posts/opnsenseReferencevia CVE List