DDIO ieviešana Intel mikroshēmās ļauj tīkla uzbrukumam noteikt taustiņsitienus SSH sesijā

Pētnieku grupa no Vrije Universiteit Amsterdam un ETH Cīrihes ir izstrādājusi tīkla uzbrukuma tehniku NetCAT (Network Cache ATtack), kas ļauj, izmantojot datu analīzes metodes, izmantojot trešo pušu kanālus, attālināti noteikt taustiņus, ko lietotājs nospiež, strādājot SSH sesijā. Problēma parādās tikai serveros, kas izmanto tehnoloģijas RDMA (Attālā tiešā piekļuve atmiņai) un DDIO (Data-Direct I/O).

Intel domā, ka uzbrukums ir grūti īstenojams praksē, jo tas prasa uzbrucēja piekļuvi lokālajam tīklam, sterilus apstākļus un saimniekdatora komunikācijas organizēšanu, izmantojot RDMA un DDIO tehnoloģijas, kuras parasti izmanto izolētos tīklos, piemēram, kuros skaitļošana darbojas kopas. Problēma ir novērtēta kā mazsvarīga (CVSS 2.6, CVE-2019-11184) un tiek sniegts ieteikums neiespējot DDIO un RDMA lokālajos tīklos, kur nav nodrošināts drošības perimetrs un ir atļauta neuzticamu klientu pieslēgšana. DDIO tiek izmantots Intel serveru procesoros kopš 2012. gada (Intel Xeon E5, E7 un SP). Sistēmas, kuru pamatā ir AMD un citu ražotāju procesori, problēma neietekmē, jo tās neatbalsta tīklā pārsūtīto datu saglabāšanu CPU kešatmiņā.

Uzbrukumam izmantotā metode atgādina ievainojamību "Metiena āmurs“, kas ļauj mainīt atsevišķu RAM bitu saturu, manipulējot ar tīkla paketēm sistēmās ar RDMA. Jaunā problēma ir sekas darbam, lai minimizētu aizkaves, izmantojot DDIO mehānismu, kas nodrošina tīkla kartes un citu perifērijas ierīču tiešu mijiedarbību ar procesora kešatmiņu (tīkla karšu pakešu apstrādes procesā dati tiek glabāti kešatmiņā un izgūts no kešatmiņas, nepiekļūstot atmiņai).

Pateicoties DDIO, procesora kešatmiņā ir arī dati, kas ģenerēti ļaunprātīgas tīkla darbības laikā. NetCAT uzbrukuma pamatā ir fakts, ka tīkla kartes aktīvi saglabā datus kešatmiņā, un pakešu apstrādes ātrums mūsdienu lokālajos tīklos ir pietiekams, lai ietekmētu kešatmiņas aizpildīšanu un noteiktu datu esamību vai neesamību kešatmiņā, analizējot datu aizkaves. nodošana.

Izmantojot interaktīvas sesijas, piemēram, izmantojot SSH, tīkla pakete tiek nosūtīta uzreiz pēc taustiņa nospiešanas, t.i. aizkaves starp paketēm korelē ar aizkavi starp taustiņsitieniem. Izmantojot statistiskās analīzes metodes un ņemot vērā, ka aizkaves starp taustiņsitieniem parasti ir atkarīgas no taustiņa novietojuma uz tastatūras, ir iespējams ar noteiktu varbūtību atjaunot ievadīto informāciju. Piemēram, lielākā daļa cilvēku mēdz rakstīt "s" aiz "a" daudz ātrāk nekā "g" aiz "s".

Procesora kešatmiņā glabātā informācija arī ļauj spriest par precīzu tīkla kartes nosūtīto pakešu laiku, apstrādājot savienojumus, piemēram, SSH. Ģenerējot noteiktu satiksmes plūsmu, uzbrucējs var noteikt brīdi, kad kešatmiņā parādās jauni dati, kas saistīti ar konkrētu darbību sistēmā. Lai analizētu kešatmiņas saturu, tiek izmantota metode Prime+Probe, kas ietver kešatmiņas aizpildīšanu ar atsauces vērtību kopu un piekļuves laika mērīšanu tām, kad tās tiek atkārtoti aizpildītas, lai noteiktu izmaiņas.

DDIO ieviešana Intel mikroshēmās ļauj tīkla uzbrukumam noteikt taustiņsitienus SSH sesijā

Iespējams, ka piedāvāto paņēmienu var izmantot, lai noteiktu ne tikai taustiņsitienus, bet arī cita veida konfidenciālus datus, kas noglabāti CPU kešatmiņā. Uzbrukumu var veikt pat tad, ja RDMA ir atspējota, taču bez RDMA tā efektivitāte samazinās un izpilde kļūst ievērojami grūtāka. Ir iespējams arī izmantot DDIO, lai organizētu slēptu sakaru kanālu, ko izmanto datu pārsūtīšanai pēc servera uzlaušanas, apejot drošības sistēmas.

Avots: opennet.ru

Pievieno komentāru