Vuosia Intel on työskennellyt Linux-korjausten parissa tukeakseen niiden Control-Flow Enforcement Technology (CET)-tekniikkaa epäsuoralla haaraseurannalla ja Shadow Stack-tuella. Se on ollut työn alla vuosia ja monien versioiden kautta, kun nyt he etsivät uutta reittiä ja keskittyvät vain Shadow Stack-käyttäjätilan toiminnallisuuteen.
Varjopinotoiminto keskittyy puolustautumiseen ROP-hyökkäyksiä vastaan. Shadow Stack säilyttää kopion jokaisesta CALL:sta ja palatessaan (RET) tarkistaa normaaliin pinoon tallennetun paluuosoitteen varmistaakseen, että se vastaa Shadow Stackin sisältöä, muuten syntyy virhe.
Intel Shadow Stack-tuki on palannut töihin Linuxille.
Intel on tukenut CET:tä paluussa Tiger Lake-järjestelmiin käyttämällä epäsuoraa haaran seurantaa osana sitä. myös JOP/COP-hyökkäysten torjumiseen. Vaikka IBT Linux-korjauksia on työstetty, eteenpäin Intel keskittyy vain Shadow Stack-käyttäjätilan tukeen päästäkseen päälinjan Linux-ytimen käyttöön. Tämä on suunnitelma ainakin lähitulevaisuudessa, kun IBT-laastarit jäävät nyt taka-alalle.
Intelin Rick Edgecombe totesi uudessa korjaustiedostosarjassa sunnuntaina:
Tämä on pieni uudelleenkäynnistys userspace CET-sarjaan. Otan sarjan haltuun Yu-chengiltä. Joidenkin sisäisten suositusten mukaisesti olen nollannut versionumeron ja kutsun sitä uudeksi sarjaksi. Toivottavasti se ei aiheuta hämmennystä.
Uusi suunnitelma on lisätä vain userspace Shadow Stack-tukea tässä vaiheessa. IBT voi seurata myöhemmin, mutta toistaiseksi keskityn vain CET:n kysytyimpään ja laajemmin saatavilla olevaan osaan (jossa on nyt AMD-suorittimissa oleva ominaisuus).
Nyt olemme osoitteessa 35 korjaustiedoston sarjaa ehdotetaan shadow-pinoiksi käyttäjätila. Tämä ei keskity pelkästään turvallisuuden parantamiseen nykyaikaisilla x86_64-prosessoreilla, vaan Google pyrkii myös käyttämään varjopinoja jäljityksen parantamiseksi suorituskyvyn ja luotettavuuden parantamiseksi.
Uusi korjaustiedostosarja sisältää uuden järjestelmäkutsun varjopinon varaamiseen, muutoksia, joilla varmistetaan, että vanhemmat binaarit eivät katkea, ja paljon muuta. Vaikka uusimmat AMD Ryzen 5000-sarjan prosessorit voivat tukea myös varjopinoja, nykyiset korjaustiedostot on rajoitettu erityisesti Intel-suorittimiin. Suunnitelmana on sallia AMD-suorittimen tuki käyttäjätilan varjopinoille, kun joku on testannut sen-toivottavasti tämä tapahtuu ennen korjaustiedostojen yhdistämistä.
Katsotaan, saadaanko tämä uusi Shadow Stacks for User-Space-sarja käyttöön nopeammin kuin aikaisempi pysähtynyt CET-korjauspäivityssarja.