Koordinēta ievainojamības atklāšana
SQL injekcija ar iespējamu ietekmi uz klientu datiem, atbildīgi paziņota
Starptautisks uzņēmums (atbildīgi anonimizēts)
OffSeq dibinātājs Nils Putniņš atklāja SQL injekcijas ievainojamību kāda starptautiska uzņēmuma tīmekļa vietnē, kas varēja pakļaut riskam klientu datus, un ziņoja par to caur CERT.LV – Latvijas nacionālo drošības incidentu reaģēšanas institūciju. Problēma tika risināta saskaņā ar ievainojamības atbildīgas atklāšanas principiem un tika ātri novērsta.
OffSeq
20232 min lasīšanai
Augsts
Galvenie fakti
- Klase
- SQL injekcija (CWE-89)
- Mērķis
- Starptautisks uzņēmums (atbildīgi anonimizēts)
- Koordinators
- CERT.LV – Latvijas nacionālais CERT
- Ziņots sadarbībā ar
- Digital Security Alliance
- Ietekme
- Iespējama nesankcionēta piekļuve klientu datiem
- Loma
- Ziņotājs / pētnieks (Nils Putniņš, OffSeq)
- Statuss
- Novērsts
- Atklāšana
- Koordinēta, atbildīga atklāšana
§ 01. Pārskats
SQL injekcijas ievainojamība tika atklāta kāda starptautiska uzņēmuma publiski pieejamā tīmekļa vietnē. Izmantojot šo trūkumu, potenciāli bija iespējams iegūt nesankcionētu piekļuvi uzņēmuma klientu datiem. Par atradumu tika ziņots CERT.LV – Latvijas Republikas nacionālajai drošības incidentu reaģēšanas institūcijai, kas koordinēja problēmas risināšanu ar skarto organizāciju.
Ziņojumu sniedza OffSeq dibinātājs Nils Putniņš sadarbībā ar Digital Security Alliance. Skartā organizācija apzināti netiek nosaukta: šīs lapas mērķis ir dokumentēt atklāšanas procesu un problēmas klasi, nevis identificēt mērķi. Šeit ir norādīti tikai publiski pārbaudāmi fakti – netiek piešķirts ne CVE, ne oficiāls kritiskuma novērtējums, un precīzi datumi vai iekšēja tehniska specifika šeit netiek atklāti.
§ 02. Kā tas darbojas
SQL injekcija (CWE-89) rodas, kad lietojumprogramma veido datubāzes vaicājumus, tieši savienojot neuzticamu ievadi ar SQL priekšrakstiem, nevis izmantojot parametrizētus vaicājumus. Uzbrucējs, kas kontrolē daļu šīs ievades, var izlauzties no paredzētā datu konteksta un mainīt paša vaicājuma struktūru – pievienojot nosacījumus, apvienojumus vai apakšvaicājumus, kurus izstrādātājs nekad nav paredzējis izpildīt.
Klientiem pieejamā tīmekļa lietojumprogrammā šī veida trūkums parasti ļauj uzbrucējam nolasīt datus, kurus vaicājums nekad nebija paredzēts atgriezt. Tā kā injicētais SQL tiek izpildīts ar pašas lietojumprogrammas datubāzes privilēģijām, robeža, kas parasti nodala viena lietotāja ierakstus no cita, var sabrukt, ļaujot uzskaitīt vai iegūt citiem klientiem piederošus ierakstus. Standarta, labi izprastais risinājums ir parametrizēti vaicājumi (sagatavoti priekšraksti) apvienojumā ar mazāko privilēģiju datubāzes kontiem un stingru ievades validāciju.
Šajā gadījumā publiskais apraksts ir apzināti vispārīgs: ievainojamība bija izmantojams SQL injekcijas punkts uzņēmuma tīmekļa vietnē, caur kuru potenciāli varēja piekļūt klientu datiem. Precīzais injekcijas vektors, datubāze un payload'i netiek atklāti, atbilstoši ievainojamības atbildīgas atklāšanas praksei un lai nesniegtu ceļvedi pret kopš tā laika novērstu sistēmu.
§ 03. Ietekme
Konkrētais risks bija nesankcionēta piekļuve skartā starptautiskā uzņēmuma rīcībā esošajiem klientu datiem. Atkarībā no tā, ko šāda datu kopa satur, klientu ierakstu pakļaušana riskam var radīt datu aizsardzības sekas saskaņā ar GDPR, kā arī reputācijas un regulatīvās izmaksas operatoram.
Būtiski, ka ievainojamība tika atklāta un par to tika ziņots, pirms parādījās jebkādi ļaunprātīgas izmantošanas pierādījumi. Saskaņā ar ievainojamības atbildīgas atklāšanas principiem atklājējs pierādīja trūkuma esamību, nepiekļūstot trešo pušu datiem un neveicot to izfiltrēšanu vairāk, nekā bija nepieciešams to demonstrēšanai, un neatklāja to publiski pirms labojuma.
§ 04. Atklāšana un iznākums
Tā vietā, lai ziņotu tieši un vienpusēji ražotājam, atradums tika novirzīts caur CERT.LV – Latvijas nacionālo CERT, kas darbojas Aizsardzības ministrijas un Nacionālās kiberdrošības likuma ietvaros un koordinē incidentu un ievainojamību risināšanu ar citām CSIRT komandām un skartajām pusēm. Šis nacionālā koordinatora modelis nodrošina uzticamu, autoritatīvu kanālu, lai sasniegtu organizāciju un novestu labojumu līdz galam.
Ievērojot atbildīgas atklāšanas pamatprincipus, skartā organizācija tika informēta un draudi tika ātri novērsti. CERT.LV ir publiski atzinusi Nila Putniņa ieguldījumu Latvijas interneta telpas drošībā.
Atsauces
- CERT.LV – Latvijas nacionālais CERT (atveras jaunā cilnē) (https://cert.lv/en/)
- CERT.LV – atbildīgas atklāšanas politika (atveras jaunā cilnē) (https://cert.lv/en/about-us/responsible-disclosure-policy)
- CERT.LV dalība – FIRST (atveras jaunā cilnē) (https://www.first.org/members/teams/cert-lv)
- CWE-89: SQL injekcija (atveras jaunā cilnē) (https://cwe.mitre.org/data/definitions/89.html)
- OWASP – SQL injekcija (atveras jaunā cilnē) (https://owasp.org/www-community/attacks/SQL_Injection)
Atzinība
Ziņoja Nils Putniņš (OffSeq) sadarbībā ar Digital Security Alliance, koordinējot caur CERT.LV.
Citi rezultāti
Starpvietņu skriptēšanas ievainojamība Oracle Enterprise Command Center
CVE-2023-22107 ir starpvietņu skriptēšanas (XSS) ievainojamība Oracle Enterprise Command Center (ECC) Framework komponentē, kas ietilpst Oracle E-Business Suite. Neautentificēts, tīklā bāzēts uzbrucējs, kurš pierunā leģitīmu lietotāju mijiedarboties ar īpaši veidotu pieprasījumu, var izpildīt skriptu šī lietotāja sesijā, iegūstot neautorizētu lasīšanas un atjaunināšanas piekļuvi daļai ECC datu un pieslēgtajiem produktiem. Oracle to novērsa 2023. gada oktobra kritiskajā ielāpu atjauninājumā (Critical Patch Update).
Ievainojamības atklāšana20232 min lasīšanai
Servera avārija CERT.LV rīkā Graphoscope, ja lietotājs atvienojas augšupielādes laikā
OffSeq atklāja pakalpojuma atteices ievainojamību Graphoscope – CERT.LV publicētajā atvērtā koda platformā, kas ļauj no vienas saskarnes veikt vaicājumus daudzos neatkarīgos datu avotos un attēlot to sakarības grafā. Ja lietotājs augšupielādēja indikatoru sarakstu un aizvēra savienojumu pirms apstrādes beigām, serveris dereferencēja nil WebSocket un avarēja, izrakstot visus lietotājus. To droši varēja izraisīt jebkurš pašreģistrēts konts. OffSeq ziņoja par ievainojamību CERT.LV un iesniedza labojumu, ko CERT.LV iekļāva projektā.
Ievainojamības atklāšana20262 min lasīšanai
Saglabātā starpvietņu skriptošana CERT.LV rīkā Graphoscope caur augšupielādes failu nosaukumiem
OffSeq atklāja saglabātās starpvietņu skriptošanas (XSS) ievainojamību Graphoscope – CERT.LV publicētajā atvērtā koda platformā, kas ļauj no vienas saskarnes veikt vaicājumus daudzos neatkarīgos datu avotos un attēlot to sakarības grafā. Augšupielādētā faila nosaukums tika saglabāts nemainīts un attēlots ar innerHTML, tādēļ indikatoru fails ar īpaši veidotu nosaukumu izpildīja skriptu tā analītiķa sesijā, kurš to augšupielādēja. OffSeq ziņoja par ievainojamību CERT.LV un iesniedza labojumu, ko CERT.LV iekļāva projektā.
Ievainojamības atklāšana20262 min lasīšanai