Jie aptiko OpenSSH pažeidžiamumą, kurį galima išnaudoti nuotoliniu būdu

pažeidžiamumas

Išnaudojami šie trūkumai gali leisti užpuolikams gauti neteisėtą prieigą prie slaptos informacijos arba apskritai sukelti problemų.

Paskelbta informacija apie a pažeidžiamumas, kuris buvo aptiktas OpenSSH diegimas ssh agentas kuri leidžia kodui paleisti sistemoje, kuri suteikė ssh-agent prieigą prie pagrindinio kompiuterio kitame ssh ryšio gale.

Pažeidžiamumas, jau kataloguotas CVE-2023-38408, jis pastebimas, nes yra nuotoliniu būdu išnaudojamas. Ataka įmanoma tik tuo atveju, jei vartotojas per ssh prisijungė prie užpuoliko valdomos sistemos įgalindami lizdo persiuntimą į ssh-agent per ssh, naudodami parinktį „-A“ arba „ForwardAgent“ nustatymą konfigūracijos faile.

Ssh-agent procesas, naudojamas privačių raktų talpykloje saugoti viešojo rakto autentifikavimui, palaiko pasirenkamą persiuntimo režimą, leidžiantį nuotolinei ssh ryšio pusei pasiekti vietinės sistemos ssh-agentą, kad autentifikavimo duomenys nebūtų saugomi kituose pagrindiniuose kompiuteriuose.

Pažeidžiamumas yra susijęs su ssh-agent palaikymu įkeliant PKCS # 11 modulius, kurį, be kita ko, galima paleisti per unix lizdą, persiųstą į kitą sistemą į ssh-agent.

Ši funkcija leidžia užpuolikui, kuris valdo pagrindinį kompiuterį prie kurio jis prijungtas nedelsiant įkelkite ir iškelkite visas bendrai naudojamas bibliotekas iš /usr/lib* katalogų aukos vietinėje sistemoje atskirame ssh-pkcs11-helper procese. Ši funkcija rodoma ssh-agent, sudarytoje su ENABLE_PKCS11 parinktimi, kuri įgalinta pagal numatytuosius nustatymus.

Iš pradžių galimybė įkelti bendras bibliotekas nebuvo laikoma grėsme saugumo sumetimais, nes įkelti galima tik iš /usr/lib* sistemos katalogų, kuriuose yra oficialiai platinimo teikiamos bibliotekos, o operacijos su šiomis bibliotekomis apsiriboja funkcijų dlopen() ir dlclose() iškvietimu, neiškviečiant bibliotekos funkcijų.

Tačiau nepastebėta, kad kai kurios bibliotekos turi konstruktoriaus ir naikintojo funkcijas kurios automatiškai iškviečiamos atliekant dlopen() ir dlclose() operacijas. To gali pakakti norint pasiimti reikiamas bibliotekas ir organizuoti nuotolinį kodo vykdymą.

Gebėjimas atakuoti parodomas numatytoji aplinka Ubuntu, kadangi nėra išbandytas kituose platinimuose, kurie taip pat įdiegia tris paketus iš "visatos" saugyklos (nors manoma, kad kai kuriuose platinimuose galima atakuoti pagal numatytąją konfigūraciją).

Buvo pasiūlyti 8 puolimo variantai.

Pavyzdžiui, viena iš perspektyvių darbo išnaudojimo kūrimo parinkčių yra pagrįsta tuo, kad libgnatcoll_postgres.so biblioteka, vykdydama dlopen(), registruoja atskirą signalų steką, naudojamą signalų tvarkytuvėse, iškviesdama sigaltstack() funkciją, o iškvietus dlclose() paskirsto atmintį, bet signalo _stack neišjungia (SSABLE).

Norėdami išnaudoti pažeidžiamumą, atliekamos šios manipuliacijos:

  • Norint pakeisti mmap išdėstymą, įkeliamos įvairios bibliotekos.
  • Įkeliama biblioteka libgnatcoll_postgres.so, užregistruojamas alternatyvus signalų krūvas ir vykdomas munmap().
  • Bibliotekos įkeliamos norint pakeisti mmap išdėstymą ir atskirą signalų krūvą pakeisti kita įrašymo režimo atminties sritimi (pavyzdžiui, srauto krūva arba .data/.bss segmentais).
  • Įkeliama biblioteka, kuri registruoja SA_ONSTACK signalų tvarkyklę, bet neregistruoja jos su munmap(), kai iškviečiamas dlclose().
  • Biblioteka, kuri gauna signalą ir iškviečia SA_ONSTACK signalų tvarkyklę, yra įkeliama, todėl pakeistą atminties sritį perrašo dėklo kadrai iš signalų tvarkyklės.
  • Bibliotekos įkeliamos tam, kad specialiai perrašytų pakeistos atminties srities turinį.

Kalbant apie pažeidžiamumą, verta paminėti, kad tai buvo ištaisyta OpenSSH 9.3p2 leidime neseniai paskelbtas. Naujoje versijoje užklausos įkelti PKCS#11 modulius yra išjungtos pagal numatytuosius nustatymus. Kaip saugumo sprendimą galite nurodyti tuščią PKCS#11/FIDO baltąjį sąrašą (ssh-agent -P »), kai paleidžiate ssh-agent, arba aiškiai apibrėžti baltame sąraše leidžiamas bibliotekas.

Galiausiai, jei jus domina galimybė apie tai sužinoti daugiau, išsamią informaciją galite rasti sekanti nuoroda.


Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Už duomenis atsakingas: AB Internet Networks 2008 SL
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.