Atlassian 21. jūlijā vienā drošības biļetenā aizvēra 101 ievainojamību savos pašmitinātajos Data Center un Server produktos. No tām 18 ir kritiskas un 83 augstas bīstamības. Visas 101 sēž iebūvētajās trešo pušu bibliotēkās, nevis Atlassian pašas rakstītajā kodā.
Skarti astoņi produkti: Jira Software, Jira Service Management, Confluence, Bitbucket, Bamboo, Crowd, Fisheye/Crucible un Sourcetree. Mākoņa versijas biļetenā nav minētas, jo tās Atlassian atjaunina pati. Visu sarakstu ar labotajām versijām uzņēmums publicēja savā jūlija drošības biļetenā.
Kur ievainojamību visvairāk
Vairāk nekā puse krīt uz diviem produktiem. Confluence Data Center un Server saņēma 33 labojumus, no tiem seši kritiski. Bitbucket saņēma 27, no tiem viens kritisks. Jira Software dabūja 15 ievainojamības ar piecām kritiskām, Jira Service Management 14 ar piecām kritiskām. Bamboo saraksts ir desmit garš, Fisheye/Crucible četri, Sourcetree divi un Crowd viens.
Skaitļi rāda vienkāršu likumsakarību: jo lielāks produkts un jo vairāk bibliotēku tas komplektē, jo garāks tā ieraksts biļetenā. Confluence un Jira ir Atlassian apjomīgākie servera produkti, tāpēc arī to saraksti ir garākie.
Kāpēc visas nāk no bibliotēkām
Neviena no 101 ievainojamības nav Atlassian pašas koda kļūda. Tās visas ir jau zināmas problēmas atklātā koda bibliotēkās, ko produkti komplektē līdzi: HTTP klientos, XML parseros, kriptogrāfijas un tīkla slāņos. Kad kāda no šīm bibliotēkām saņem CVE numuru, to manto katrs produkts, kas bibliotēku iekļauj savā laidienā.
Tā ir programmatūras piegādes ķēdes problēma tīrā veidā. Izstrādātājam, kas lieto Jira vai Confluence, kods var būt nemainīgs mēnešiem, bet drošības stāvoklis mainās ikreiz, kad kāda no desmitiem iekļauto bibliotēku saņem jaunu CVE. Atlassian norāda, ka lielāko daļu šā mēneša ierakstu radījusi koordinēta drošības izpēte vairākās plaši lietotās atklātā koda bibliotēkās. Kad pētnieki uzņemas vienu populāru komponenti, sekas parādās visos produktos, kas to lieto.
Šāda atkarību manta ir iemesls, kāpēc programmatūras sastāva saraksts (SBOM) pēdējos gados kļuvis par standarta prasību. Ja administrators zina, tieši kuras bibliotēkas un versijas ir iekļautas produktā, viņš var ātri saprast, vai konkrētais CVE viņu skar. Bez šāda saraksta atliek gaidīt piegādātāja biļetenu un ticēt, ka tajā ir viss.
Kritiskās sēž tīkla un JavaScript bibliotēkās
Kritiskās 18 ievainojamības skar tādas bibliotēkas kā axios, lodash, Netty, Apache ActiveMQ un Spring Boot. Augstākie CVSS vērtējumi sasniedz 10,0. Daļa no tām ļauj attālinātu koda izpildi vai servera puses pieprasījumu viltošanu (SSRF), ja uzbrucējs spēj sasniegt ievainojamo komponenti.
SSRF nozīmē, ka uzbrucējs piespiež serveri pašu izsūtīt pieprasījumus uz adresēm, kurām parasti nevarētu piekļūt, piemēram, iekšējiem tīkla resursiem vai mākoņa metadatu servisiem. Attālināta koda izpilde ir vēl smagāka, jo ļauj palaist uzbrucēja kodu tieši uz servera. Tieši šīs divas kategorijas ir bīstamākās publiski pieejamām Confluence un Jira instalācijām.
Atlassian produkti bieži darbojas iekšējos korporatīvajos tīklos, tāpēc daļai instalāciju šie caurumi paliek grūtāk sasniedzami. Publiski pieejamas instalācijas tomēr ir izplatītas, īpaši projektu dokumentācijai un klientu atbalstam.
Atlassian atzīmē, ka daļā gadījumu bibliotēkas kritiskais vērtējums neatspoguļo reālo risku produktā, jo uzņēmums šo atkarību lieto ierobežotā veidā. Vērtējums paliek augsts pēc bibliotēkas CVSS, taču faktiskā ekspluatējamība produktā var būt zemāka.
Mākoņa lietotājiem šis biļetens neattiecas
Biļetens skar tikai Data Center un Server laidienus, ko organizācijas mitina pašas. Atlassian mākoņa produktus atjaunina savā infrastruktūrā, tāpēc to lietotājiem nekas nav jādara. Tieši šī atšķirība ir viens no argumentiem, ko Atlassian gadiem lieto par labu pārejai uz mākoni: pašmitināta steka drošības uzturēšana paliek klienta atbildībā un prasa gandrīz ikmēneša atjaunināšanas ciklu.
Ko darīt administratoriem
Vienīgais risinājums ir atjaunināt uz labotajām versijām, kas norādītas biļetenā. Katram produktam ir sava fiksētā versija, tāpēc pašmitinātām instalācijām jāpārbauda tieši savs produkts un laidiena zars. Atlassian kritiskās ievainojamības apraksta arī atsevišķos drošības brīdinājumos, kas iznāk ārpus mēneša biļetena grafika, tāpēc tikai biļetena lasīšana ne vienmēr ir pietiekama.
Kas nevar atjaunināt uzreiz, tam vērts vismaz noskaidrot, kuras no skartajām bibliotēkām ir sasniedzamas no tīkla. Publiski pieejama Confluence vai Jira instalācija ar SSRF vai attālinātas koda izpildes caurumu ir daudz steidzamāks gadījums nekā tā pati bibliotēka slēgtā iekšējā tīklā.
Data Center klasteros atjaunināšana prasa plānošanu, jo mezgli jāatjaunina secīgi un jāpārbauda savietojamība ar spraudņiem. Tāpēc lielās instalācijās starp biļetena iznākšanu un pilnu ielāpošanu var paiet nedēļas, kuru laikā publiski pieejami mezgli paliek atklāti.
Šis nav vienreizējs notikums. Jūnija biļetenā Atlassian aizvēra līdzīgu apjomu ievainojamību tajos pašos produktos, arī toreiz galvenokārt bibliotēkās. Šie 101 ieraksti ir jau ceturtais liela apjoma Atlassian biļetens šogad, pēc janvāra, aprīļa un jūnija.
Komentāri
Šim rakstam vēl nav komentāru. Esi pirmais, kurš dalās ar savu viedokli.