Kako pregledati svoje okolje za ranljive različice Curl

Kako pregledati svoje okolje za ranljive različice Curl

Kako pregledati svoje okolje za ranljive različice Curl PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Varnostnim ekipam ni treba preklopiti v krizni način, da bi obravnavale nedavno odpravljene ranljivosti v orodju ukazne vrstice curl in knjižnici libcurl, vendar to ne pomeni, da jim ni treba skrbeti za prepoznavanje in sanacijo prizadetih sistemov. Če sistemov ni mogoče takoj izkoristiti, imajo varnostne ekipe nekaj časa za te posodobitve.

Ta tehnični nasvet združuje smernice o tem, kaj morajo narediti varnostne ekipe, da zagotovijo, da niso ogrožene.

Temeljno omrežno orodje za sisteme Unix in Linux, cURL se uporablja v ukaznih vrsticah in skriptih za prenos podatkov. Njegova razširjenost je posledica dejstva, da se uporablja kot samostojen pripomoček (curl) in kot knjižnica, ki je vključena v veliko različnih vrst aplikacij (libcurl). Knjižnico libcurl, ki razvijalcem omogoča dostop do API-jev curl iz lastne kode, je mogoče uvesti neposredno v kodo, uporabiti kot odvisnost, uporabiti kot del svežnja operacijskega sistema, vključiti kot del vsebnika Docker ali namestiti na Vozlišče gruče Kubernetes.

Kaj je CVE-2023-38545?

Visoka resnost ranljivosti vpliva na curl in libcurl različice 7.69.0 do 8.3.0, nizka ranljivost pa vpliva na libcurl različice 7.9.1 do 8.3.0. Vendar pa ranljivosti ni mogoče izkoristiti pod privzetimi pogoji. Napadalec, ki poskuša sprožiti ranljivost, bi moral usmeriti curl na zlonamerni strežnik pod napadalčevim nadzorom, zagotoviti, da curl uporablja proxy SOCKS5 z uporabo načina razreševanja proxyja, konfigurirati curl za samodejno sledenje preusmeritvam in nastaviti velikost medpomnilnika na manjšo velikost.

Glede na Yair Mizrahi, višji varnostni raziskovalec pri JFrog, je knjižnica libcurl ranljiva samo če so nastavljene naslednje spremenljivke okolja: CURLOPT_PROXYTYPE  nastavite na tip CURLPROXY_SOCKS5_HOSTNAMEAli CURLOPT_PROXY or CURLOPT_PRE_PROXY  nastavite na shemo nogavice5h://. Knjižnica je ranljiva tudi, če je ena od spremenljivk okolja proxy nastavljena tako, da uporablja nogavice5h:// shema. Orodje ukazne vrstice je ranljivo le, če se izvaja z -socks5-ime gostitelja zastavo ali z -zastopnik (-x) oz –predposrednik nastavite za uporabo sheme nogavice5h://. Ranljivo je tudi, če se curl izvaja s prizadetimi spremenljivkami okolja.

»Nabor predpogojev, ki so potrebni, da je stroj ranljiv (glejte prejšnji razdelek), je bolj restriktiven, kot se je sprva verjelo. Zato verjamemo, da ta ranljivost ne bo prizadela velike večine uporabnikov curl,« je v analizi zapisal Mizrahi.

Preglejte okolje za ranljive sisteme

Prva stvar, ki jo morajo organizacije narediti, je določiti obseg svojih okolij za identifikacijo vseh sistemov, ki uporabljajo curl in libcurl, da ocenijo, ali ti predpogoji obstajajo. Organizacije bi morale popisati svoje sisteme in ovrednotiti postopke dostave programske opreme z uporabo orodij za analizo sestave programske opreme za kodo, vsebnike za skeniranje in pripomočke za upravljanje varnostne drže aplikacij, ugotavlja Alex Ilgayev, vodja varnostnih raziskav pri Cycode. Čeprav ranljivost ne vpliva na vsako implementacijo curl, bi bilo lažje prepoznati prizadete sisteme, če ekipa začne s seznamom možnih lokacij, ki jih je treba iskati.

Naslednji ukazi določajo, katere različice curl so nameščene:

Linux/MacOS:

find / -name curl 2>/dev/null -exec echo "Najdeno: {}" ; -exec {} --različica;

Windows:

Get-ChildItem -Path C: -Recurse -ErrorAction SilentlyContinue -Filter curl.exe | ForEach-Object { Write-Host "Najdeno: $($_.FullName)"; & $_.FullName --version }

GitHub ima poizvedbo za zagon v programu Defender for Endpoint za identifikacijo vseh naprav v okolju, ki imajo nameščen curl ali uporabljajo curl. Qualys je objavil svoja pravila za uporabo njegove platforme.

Organizacije, ki uporabljajo vsebnike Docker ali druge tehnologije vsebnikov, bi morale tudi skenirati slike za ranljive različice. Pričakuje se precejšnje število ponovnih gradenj, zlasti v slikah dockerjev in podobnih entitetah, ki vključujejo kopije liburl. Docker se je zbral seznam navodil pri ocenjevanju vseh slik.

Če želite poiskati obstoječe repozitorije:

docker scout repo enable --org /skavtski-demo

Za analizo lokalnih slik vsebnika:

politika docker skavtov [SLIKA] --org [ORG]

To vprašanje poudarja pomen natančnega spremljanja vse odprtokodne programske opreme, ki se uporablja v organizaciji, pravi Henrik Plate, varnostni raziskovalec pri Endor Labs.

"Poznavanje vseh uporab curl in libcurl je predpogoj za oceno dejanskega tveganja in izvajanje sanacijskih ukrepov, pa naj gre za popravljanje curl, omejevanje dostopa do prizadetih sistemov iz nezaupljivih omrežij ali izvajanje drugih protiukrepov," je dejal Plate.

Če je aplikacija opremljena s programsko opremo, bi bilo to dobro mesto za začetek iskanja primerkov curl, dodaja John Gallagher, podpredsednik Viakoo Labs.

Samo zato, ker pomanjkljivosti ni mogoče izkoristiti, ne pomeni, da posodobitve niso potrebne. Obliži so na voljo neposredno za curl in libcurl, številni operacijski sistemi (Debian, Ubuntu, Red Hat itd.) pa so ponudili tudi fiksne različice. Bodite pozorni na varnostne posodobitve drugih aplikacij, saj je libcurl knjižnica, ki jo uporabljajo številni operacijski sistemi in aplikacije.

Ena rešitev, dokler posodobitev ni mogoče uvesti, je prisiliti curl, da uporablja lokalno razreševanje imen gostitelja pri povezovanju s proxyjem SOCKS5, glede na JFrog's Mizrahi. Ta sintaksa uporablja shemo socks5 in ne socks5h: curl -x socks5://someproxy.com. V knjižnici zamenjajte spremenljivko okolja CURLPROXY_SOCKS5_HOSTNAME z CURLPROXY_SOCKS5.

Po besedah ​​Benjamina Marra, varnostnega inženirja pri Intruder, bi morale varnostne ekipe spremljati zastavice curl za pretirano velike nize, saj bi to pomenilo, da je bil sistem ogrožen. Zastave so –socks5-ime gostiteljaali -zastopnik or –predposrednik nastavite za uporabo sheme nogavice5h://.

Časovni žig:

Več od Temno branje