Kritinė SQL injekcija „Fortinet FortiClientEMS“: analizė ir mažinimas

Paskutiniai pakeitimai: balandžio 4 d. 2026 m.
  • Kritinė „FortiClientEMS 7.4.4“ pažeidžiamumas CVE-2026-21643 leidžia atlikti SQL injekciją ir nuotolinį kodo vykdymą be autentifikavimo.
  • Pažeidžiamumas susijęs su nesaugiu HTTP svetainės antraštės apdorojimu tarpinėje programinėje įrangoje, kuria galima pasinaudoti per viešąjį galinį tašką /api/v1/init_consts.
  • Dėl šio išnaudojimo gali būti visiškai pažeista valdymo duomenų bazė, pavogti prisijungimo duomenys ir pakeistos politikos, paskirstytos visiems galiniams įrenginiams.
  • Švelninimas apima atnaujinimą į „FortiClientEMS 7.4.5“ ar naujesnę versiją, kelių nuomininkų režimo išjungimą, jei jo negalima nedelsiant pataisyti, ir prieigos prie administravimo konsolės apribojimą.

Kritinė SQL injekcijos pažeidžiamumas „Fortinet“ sistemoje

Galinių taškų valdymo platformų saugumas daugeliui įmonių tapo kritine problema, o naujausias aiškus pavyzdys yra „Fortinet“ ir jos „FortiClient Endpoint Management Server“ (EMS) sprendimas. Pastaraisiais mėnesiais buvo aptikta kritinė SQL injekcijos spraga, paveikianti labai specifinę produkto versiją, ir tai sukėlė didelį ažiotažą kibernetinio saugumo bendruomenėje.

Šiame straipsnyje ramiai aptarsime, kas vyksta su kritine SQL injekcijos pažeidžiamumu „Fortinet“ sistemoje , kaip veikia CVE-2026-21643 pažeidžiamumas, kokį realų poveikį jis daro organizacijoms, kaip jis išnaudojamas praktiškai ir, svarbiausia, kokias skubias ir vidutinės trukmės priemones turėtumėte įgyvendinti, jei valdote infrastruktūrą, pagrįstą „FortiClientEMS“ ar panašiais produktais.

CVE-2026-21643 pažeidžiamumo „FortiClientEMS“ kontekstas

Įvairių šaltinių duomenimis, pažeidžiamumas CVE-2026-21643 buvo klasifikuojamas kaip kritinis , o jo CVSS balas svyruoja nuo 9.1 iki 9.8, todėl jis praktiškai patenka į aukščiausią pavojingumo lygį. Šis trūkumas yra „FortiClient Endpoint Management Server“ (EMS) – platformoje, kurią įmonės naudoja „FortiClient“ agentams diegti ir valdyti savo vartotojų įrenginiuose.

Tiksliau sakant, problema paveikia „FortiClientEMS“ 7.4 atšakos 7.4.4 versiją, kai įjungtas kelių nuomininkų režimas („Svetainių“ funkcija). 8.0 ir 7.2 versijos, taip pat „FortiEMS Cloud“ egzemplioriai, nėra paveikti šios klaidos, todėl „Fortinet“ visas rekomendacijas dėl problemos sprendimo sutelkė į aplinkas, kuriose vis dar naudojama 7.4.4 versija vietoje.

Ši SQL injekcija įvyksta dėl netinkamo specialiųjų elementų neutralizavimo SQL sakiniuose , klasifikuojamuose pagal CWE-89. Praktiškai tai leidžia neautentifikuotam nuotoliniam užpuolikui siųsti specialiai sukurtas HTTP užklausas ir priversti serverį vykdyti savavališkas SQL komandas, o tai gali sukelti nuotolinį kodo vykdymą (RCE) su duomenų bazės vartotojo teisėmis.

„Fortinet“ saugumo patarimuose nurodoma, kad pažeidžiamumas slypi „FortiClientEMS“ grafinės sąsajos komponente , konkrečiai – žiniatinklio sąsajoje, kurią administratoriai naudoja galiniams įrenginiams valdyti ir stebėti. Tai reiškia, kad bet kuris objektas su prie interneto prieinama sąsaja tampa pagrindiniu užpuolikų taikiniu.

Kaip „Fortinet“ sistemoje atsiranda kritinė SQL injekcija

Problemos priežastis siejama su dideliu tarpinės programinės įrangos pertvarkymu „FortiClientEMS 7.4.4“ versijoje . Šios kodo peržiūros metu kūrėjai pakeitė, kaip programa tvarko ryšius su „PostgreSQL“ duomenų baze ir nuomininkų maršrutizavimą, netyčia įvesdami klaidą ryšio faile.

Pagal šią naują logiką serveris tiesiogiai perduoda HTTP antraštė Site į konsultaciją search_path iš PostgreSQLTikslas buvo pasirinkti kiekvienam nuomininkui atitinkamą schemą pagal šią antraštę, tačiau didelė problema yra ta, kad tarpinė programinė įranga netinkamai patikrina ar išvalo tą reikšmę.

Dėl to užpuolikas gali pažeisti numatytą eilutės formatą ir į SQL sakinį įterpti savo kenkėjišką naudingąją apkrovą , įterpdamas savavališkas komandas, kurias duomenų bazė vykdys su didelėmis privilegijomis, kurias paslaugos vartotojas sukonfigūravo „Fortinet“ virtualioje mašinoje.

  Kaip užšifruoti USB atmintinę naudojant „VeraCrypt“: išsamus praktinis vadovas

Riziką dar labiau padidina tai, kad ši pažeidžiama tarpinė programinė įranga paleidžiama prieš bet kokius autentifikavimo patikrinimus . Kitaip tariant, nereikia prisijungti ar turėti kredencialų: pakanka tiesiog išsiųsti modifikuotą HTTPS užklausą su modifikuota svetainės antrašte, kad būtų bandoma išnaudoti pažeidžiamumą.

Šis modelis puikiai atitinka CVSS 3.1 scenarijų AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H , kai ataka vykdoma per tinklą, yra mažai sudėtinga, nereikalauja išankstinių privilegijų ar vartotojo sąveikos ir visiškai pažeidžia paveiktos sistemos konfidencialumą, vientisumą ir prieinamumą.

Atakos vektorius: galinis taškas /api/v1/init_consts ir svetainės antraštė

Saugumo tyrėjai, tokie kaip Bishop Fox komanda, paaiškino, kad praktiškiausias atakos vektorius yra galiniame taške. viešai prieinama /api/v1/init_consts, „FortiClientEMS“ API maršrutas, naudojamas sąsajos inicijavimo metu.

Užpuolikai pirmiausia gali naudoti šį galinį tašką, kad Patikrinkite, ar įjungtas kelių nuomininkų režimasJei jie aptinka, kad „Sites“ funkcionalumas įjungtas, jie įterpia SQL naudingąją apkrovą per HTTP antraštę. Site, pasinaudojant tuo, kad reikšmė perduodama sakiniui be išvalymo search_path.

Šis galinis taškas turi keletą konstrukcijos trūkumų: pirma, jam trūksta greičio ribojimo mechanizmų ir specifinių grubios jėgos apsaugos būdų; antra, jis tiesiogiai grąžina „PostgreSQL“ sugeneruotus klaidų pranešimus atsakymo tekste. Tai labai palengvina užpuoliko darbą.

Gavęs šias klaidas taip aiškiai, kenkėjiškas veikėjas gali atlikti klaidomis pagrįstus išgavimo metodus vienoje užklausoje , nenaudodamas daug lėtesnių, laiku pagrįstų injekcijų. Tai leidžia itin greitai išvardyti jautrias lenteles, stulpelius ir duomenis.

Jei išnaudojimas sėkmingas, užpuolikas visiškai užgrobia galinių taškų valdymo duomenų bazę . Kadangi duomenų bazės vartotojas veikia su „PostgreSQL“ supervartotojo teisėmis, jis gali ne tik išgauti informaciją, bet ir nuotoliniu būdu vykdyti kodą pagrindinėje operacinėje sistemoje.

Realus poveikis organizacijai ir valdomiems galiniams taškams

Šios pažeidžiamumo poveikis yra daug platesnis nei paprastas duomenų nutekėjimas. Galimybė vykdyti savavališkas SQL komandas „FortiClientEMS“ duomenų bazėje leidžia užpuolikams pavogti administratoriaus slaptažodžius, skaitmeninius sertifikatus ir visus prie platformos prijungtų įrenginių inventorius .

Turėdamas tokį prieigos lygį, grėsmių kūrėjas gali modifikuoti saugumo politikas ir platinti kenkėjiškas konfigūracijas visiems valdomiems galiniams taškams. Tai atveria duris sudėtingiems scenarijams, kai organizacijos saugumo agentai tampa atakų vektoriumi į vidinį tinklą.

Be to, valdymo duomenų bazės pažeidimas taip pat turi įtakos saugomų duomenų konfidencialumui (pvz., informacijai apie naudotojus, įrangą, politikas ir sertifikatus), vientisumui (taisyklių, šablonų ir priskyrimų keitimas) ir prieinamumui (galimas duomenų ištrynimas arba administravimo serverio sabotažas).

Ši grėsmė atitinka vis dažnesnę atakų prieš periferinius įrenginius ir valdymo sistemas tendenciją , kurias labai vertina kibernetiniai nusikaltėliai, nes jos veikia kaip informacijos koncentratoriai ir kontroliuoja didelius galinių įrenginių kiekius.

Dėl visų aukščiau išvardytų priežasčių „Fortinet“ šią pažeidžiamumą klasifikavo kaip kritinį, o saugumo agentūros ir įmonės rekomenduoja bet kokį paveiktą „FortiClientEMS 7.4.4“ egzempliorių laikyti didžiausios rizikos turtu, kol nebus įrodyta kitaip.

Aktyvaus išnaudojimo ir poveikio zona

Nors kai kuriose pradinėse ataskaitose buvo nurodyta, kad nebuvo aptikta jokių aktyvių pažeidžiamumo išnaudojimų, bendrovės „Defused“ tyrėjai patvirtino realias atakas, pasinaudojant CVE-2026-21643 pažeidžiamumu, likus vos keturioms dienoms iki pažeidžiamumo paskelbimo.

  Kaip smarkiai pagerinti 4K arba 1080p internetinės kameros kokybę

Tokių organizacijų kaip „Shadowserver“ surinkti duomenys rodo, kad stebėjimo metu maždaug 2.000 „FortiClientEMS“ serverių buvo tiesiogiai paveikti interneto . Jungtinės Valstijos pirmavo statistikoje su maždaug 756 pažeidžiamais serveriais, po jų sekė Europa su daugiau nei 680. „Shodan“ taip pat aptiko daugiau nei 1.000 viešai prieinamų „FortiClientEMS“ žiniatinklio sąsajų, daugelis iš kurių greičiausiai nebuvo pataisytos.

Oficialus NIST registro įrašas, skirtas CVE-2026-21643, patvirtina šį itin didelį atakos pavojų, rodydamas AV:N/AC:L/PR:N/UI:N vektorių, turintį didelį poveikį C, I ir A. Tai reiškia, kad bet kuris „FortiClientEMS 7.4.4“ serveris su atvira žiniatinklio sąsaja gali būti visiškai pažeistas, užpuolikui nereikalaujant prisijungimo duomenų ar įtikinėjant bet kurį vartotoją ką nors spustelėti.

„Defused“ pranešė apie šiuos pažeidžiamumus kovo 28 d., taip pat pažymėdama, kad nepaisant to, pažeidžiamumas dar nebuvo įtrauktas į CISA KEV (žinomų išnaudotų pažeidžiamumų) katalogą ar kitus viešus aktyviai išnaudotų trūkumų sąrašus, o tai dažniausiai nutinka per pirmuosius išnaudojimo laikotarpius.

Kita vertus, „Fortinet“ jau vasario mėnesį išleido taisomąją 7.4.5 versiją, kuri aiškiai parodo pasikartojantį kibernetinio saugumo modelį: tarp pataisos prieinamumo ir jos faktinio įdiegimo gamybinėje aplinkoje yra didelis laiko tarpas – laikotarpis, per kurį užpuolikai pasinaudoja proga pažeisti sistemas, kurios dar nėra atnaujintos.

Kompromitacijos ir užpuolimo požymiai

„FortiClientEMS“ valdantiems administratoriams labai svarbu suprasti potencialaus bandymo įsilaužti į ataką užuominas. Pagrindiniai kompromitavimo (IoC) rodikliai yra šie:

Pirma, jie pabrėžia neįprastai ilgas atsako laikas, nuo 5 iki daugiau nei 20 sekundžių, galiniuose taškuose /api/v1/auth/signin o /api/v1/init_consts, kaip matyti „Apache“ arba kito priekyje esančio žiniatinklio serverio prieigos žurnaluose.

Tai taip pat įspėjamasis ženklas, kurį reikia pamatyti Pakartotiniai HTTP 500 atsakymai iš to paties IP adreso prieš galinį tašką /api/v1/init_constsŠis modelis gali rodyti, kad užpuolikas bandymų ir klaidų būdu tikslina savo SQL injekcijos paketus, kol randa veikiantį ir negeneruojantį klaidų.

Be to, verta peržiūrėti „PostgreSQL“ klaidų žurnalus. užklausos search_path su viengubomis kabutėmis, kabliataškiais arba SQL raktažodžiais kaip SELECT, INSERT o UPDATE už numatyto konteksto ribų. Šio tipo pėdsakai paprastai tiesiogiai rodo bandymą manipuliuoti svetainės antrašte.

Reagavimo į tai priemone bet kuris „FortiClientEMS 7.4.4“ serveris, kuris buvo prijungtas prie interneto be tinkamų atnaujinimų, turėtų būti laikomas potencialiai pažeistu . Tai apima jo izoliavimą nuo tinklo, išsamios teismo ekspertizės analizę (duomenų bazės, operacinės sistemos ir žurnalų) ir kontroliuojamo aplinkos rekonstrukcijos planavimą, jei būtų rasta įsilaužimo įrodymų.

Neatidėliotinas švelninimas ir oficialus „Fortinet“ sprendimas

Pagrindinė pažeidžiamumo mažinimo priemonė aiški: kuo greičiau atnaujinti „FortiClientEMS 7.4.4“ į 7.4.5 ar naujesnę versiją . „Fortinet“ ištaisė pažeidžiamumą pakeisdama eilučių interpoliaciją užklausoje tinkamu parametruotų identifikatorių apdorojimu ir saugiai pakeisdama įvesties kodą iš svetainės antraštės.

8.0 ir 7.2 versijoms, taip pat „FortiEMS Cloud“, papildomų veiksmų imtis nereikia , nes šis konkretus pažeidžiamumas joms nepaveikiamas. Nepaisant to, vis tiek verta peržiūrėti savo interneto pažeidžiamumą ir prieigos konfigūracijas, nes valdymo konsolių atakų paviršius visada turėtų būti kuo mažesnis.

Komandoms, kurios dėl operacinių priežasčių negali iš karto įdiegti pataisos, kai kurie tyrėjai rekomenduoja laikiną švelninimo priemonę: išjungti kelių nuomininkų „Sites“ funkcionalumą . Šis veiksmas neleidžia vykdyti pažeidžiamo kodo kelio, susieto su svetainės antrašte, taip žymiai sumažinant išnaudojimo galimybes.

  10 supratimo raktų: kas yra dviejų veiksnių autentifikavimas?

Taip pat labai svarbu apriboti prieigą prie EMS valdymo sąsajos per internetą, kad ją būtų galima naudoti tik patikimuose vidiniuose tinkluose . Idealiu atveju konsolė turėtų būti įrengta už VPN arba naudojant nulinio pasitikėjimo prieigos mechanizmą ir niekada nebūtų tiesiogiai prijungta prie interneto, išskyrus labai išimtinius ir tinkamai apsaugotus atvejus.

Be to, patartina peržiūrėti ir sustiprinti užkardos taisykles ir visus WAF prieš „FortiClientEMS“ , taikant filtrus, kurie blokuoja tipinius SQL injekcijos šablonus HTTP antraštėse, ypač svetainės antraštėje, ir atidžiai stebint visas anomalias API užklausas.

Gera saugumo praktika už pataisos ribų

Šis incidentas ne tik paprasčiausiai taiko pataisas ir konkrečius rizikos mažinimo sprendimus, bet ir aiškiai parodo, kad pažeidžiamumų valdymas turi būti nuolatinis procesas , o ne vienkartinė reakcija į tiekėjo įspėjimą. Organizacijos, kurios naudoja galinių įrenginių valdymo platformas ir tinklo saugumo sprendimus, turėtų stiprinti savo strategiją keliais aspektais.

Viena vertus, labai svarbu turėti atnaujintą išteklių ir versijų sąrašą , kad paskelbus kritinį CVE, būtų galima per kelias minutes nustatyti, kurios sistemos yra pažeidžiamos, ir suskirstyti jų atnaujinimus pagal pavojaus lygį ir kritiškumą.

Kita vertus, patartina rinktis periodinius įsiskverbimo testus ir architektūros apžvalgas, kurios patvirtintų ne tik paties produkto patikimumą, bet ir jo diegimo būdus: tinklo segmentavimą, valdymo plokštumų atskyrimą, prieigos apribojimus, centralizuotą žurnalų stebėjimą ir anomalinio elgesio aptikimą.

Žvelgiant iš kūrimo perspektyvos, šis atvejis dar kartą parodo, kaip svarbu taikyti saugias kūrimo praktikas ir regresinį testavimą, kai atliekamas gilus tarpinės programinės įrangos ar kritinių komponentų pertvarkymas. Našumo ar mastelio keitimo gerinimas negali būti lydimas žingsnio atgal tokiuose pagrindiniuose mechanizmuose kaip įvesties valymas.

Kibernetinio saugumo ir saugaus programavimo srityje besispecializuojančios įmonės siūlo kodo audito, įsiskverbimo testavimo ir konsultavimo paslaugas, specialiai sukurtas šiems pažeidžiamumams aptikti prieš jiems pasiekiant gamybinę aplinką. Aplinkose, kuriose derinama vietinė infrastruktūra, debesijos ir periferiniai įrenginiai, pasikliauti išorės ekspertais dažnai yra labai svarbu.

Galiausiai, valdymo ir verslo lygmenimis labai naudinga turėti ataskaitų suvestines ir verslo analitikos sistemas , kurios leidžia vizualizuoti pažeidžiamumų būklę, valdymo sąsajų poveikį ir galimą kritinio gedimo poveikį organizacijos procesams. Toks požiūris palengvina investicijų prioritetizavimą ir prevencinių priemonių, kurios iš pirmo žvilgsnio gali atrodyti brangios, tačiau vidutinės trukmės laikotarpiu padeda išvengti daugelio problemų, pagrįstumą.

Dėl rimto projektavimo trūkumo, didelio atakų paviršiaus ir įprasto vėlavimo diegiant pataisymus CVE-2026-21643 pavyzdinis pavyzdys, kodėl valdymo konsolės saugumo niekada nereikėtų nuvertinti. Bet kuri organizacija, naudojanti „FortiClientEMS“ ar panašius sprendimus, turėtų šį incidentą laikyti žadinimo signalu peržiūrėti savo saugumo padėtį, paspartinti atnaujinimų ciklus ir sustiprinti valdymo platformų apsaugą, kol dar viena nulinės dienos spraga ar SQL injekcija vėl nepadarys jų nepalankioje padėtyje.

Kas yra SQL-8 injekcija?
Susijęs straipsnis:
SQL injekcija: kas tai yra, kaip tai veikia, pavyzdžiai ir patarimai, kaip apsaugoti savo duomenis