Die DDIO-implementering in Intel-skyfies laat 'n netwerkaanval toe om toetsaanslagen in 'n SSH-sessie op te spoor

'n Groep navorsers van die Vrije Universiteit Amsterdam en ETH Zurich het 'n netwerkaanvaltegniek ontwikkel NetCAT (Network Cache ATtack), wat dit moontlik maak om, deur gebruik te maak van data-ontledingsmetodes via derdeparty-kanale, op afstand die sleutels te bepaal wat deur die gebruiker gedruk word terwyl hy in 'n SSH-sessie werk. Die probleem verskyn slegs op bedieners wat tegnologie gebruik RDMA (Remote direkte geheue toegang) en DDIO (Data-Direkte I/O).

Intel dink, dat die aanval moeilik is om in die praktyk te implementeer, aangesien dit die aanvaller se toegang tot die plaaslike netwerk, steriele toestande en die organisasie van gasheerkommunikasie vereis deur RDMA- en DDIO-tegnologieë, wat gewoonlik in geïsoleerde netwerke gebruik word, byvoorbeeld, waarin rekenaars klusters werk. Die kwessie word as gering gegradeer (CVSS 2.6, CVE-2019-11184) en 'n aanbeveling word gegee om nie DDIO en RDMA in plaaslike netwerke te aktiveer waar die sekuriteitsomtrek nie verskaf word nie en die verbinding van onbetroubare kliënte toegelaat word. DDIO word sedert 2012 in Intel-bedienerverwerkers gebruik (Intel Xeon E5, E7 en SP). Stelsels gebaseer op verwerkers van AMD en ander vervaardigers word nie deur die probleem geraak nie, aangesien hulle nie die stoor van data wat oor die netwerk oorgedra word in die SVE-kas ondersteun nie.

Die metode wat vir die aanval gebruik word, lyk soos 'n kwesbaarheid "Gooihamer", wat jou toelaat om die inhoud van individuele bisse in RAM te verander deur manipulasie van netwerkpakkies in stelsels met RDMA. Die nuwe probleem is 'n gevolg van werk om vertragings te verminder wanneer die DDIO-meganisme gebruik word, wat direkte interaksie van die netwerkkaart en ander randtoestelle met die verwerkerkas verseker (in die proses om netwerkkaartpakkies te verwerk, word data in die kas gestoor en uit die kas gehaal, sonder toegang tot geheue).

Danksy DDIO bevat die verwerkerkas ook data wat tydens kwaadwillige netwerkaktiwiteit gegenereer word. Die NetCAT-aanval is gebaseer op die feit dat netwerkkaarte data aktief kas, en die spoed van pakkieverwerking in moderne plaaslike netwerke is voldoende om die vul van die kas te beïnvloed en die teenwoordigheid of afwesigheid van data in die kas te bepaal deur vertragings tydens data te ontleed oordrag.

Wanneer interaktiewe sessies gebruik word, soos via SSH, word die netwerkpakkie onmiddellik gestuur nadat die sleutel gedruk is, m.a.w. vertragings tussen pakkies korreleer met vertragings tussen toetsaanslagen. Deur statistiese ontledingsmetodes te gebruik en in ag te neem dat die vertragings tussen toetsaanslagen gewoonlik afhang van die posisie van die sleutel op die sleutelbord, is dit moontlik om die ingevoerde inligting met 'n sekere waarskynlikheid te herskep. Byvoorbeeld, die meeste mense is geneig om "s" na "a" baie vinniger te tik as "g" na "s".

Die inligting wat in die verwerkerkas gedeponeer word, laat 'n mens ook toe om die presiese tyd van pakkies wat deur die netwerkkaart gestuur word, te beoordeel wanneer verbindings soos SSH verwerk word. Deur 'n sekere verkeersvloei te genereer, kan 'n aanvaller die oomblik bepaal wanneer nuwe data in die kas verskyn wat met 'n spesifieke aktiwiteit in die stelsel geassosieer word. Om die inhoud van die kas te ontleed, word die metode gebruik Prime + Sonde, wat behels die invul van die kas met 'n verwysingstel waardes en die meting van die toegangstyd daartoe wanneer dit hervul word om veranderinge te bepaal.

Die DDIO-implementering in Intel-skyfies laat 'n netwerkaanval toe om toetsaanslagen in 'n SSH-sessie op te spoor

Dit is moontlik dat die voorgestelde tegniek gebruik kan word om nie net toetsaanslagen te bepaal nie, maar ook ander tipes vertroulike data wat in die SVE-kas gedeponeer is. Die aanval kan moontlik uitgevoer word selfs al is RDMA gedeaktiveer, maar sonder RDMA word die doeltreffendheid daarvan verminder en die uitvoering word aansienlik moeiliker. Dit is ook moontlik om DDIO te gebruik om 'n geheime kommunikasiekanaal te organiseer wat gebruik word om data oor te dra nadat 'n bediener gekompromitteer is, wat sekuriteitstelsels omseil.

Bron: opennet.ru

Voeg 'n opmerking