Adresse Space Layout Randomization (ASLR) er en sikkerhetsteknikk som brukes i operativsystemer, som først ble implementert i 2001. De nåværende versjonene av Alle de viktigste operativsystemene (iOS, Android, Windows, MacOS og Linux) har ASLR-beskyttelse. Men i den siste uken er det funnet en ny metode for å omgå ASLR. Så bør du være bekymret?
For de som ikke har en lav programmeringsbakgrunn, kan ASLR være forvirrende. For å forstå det, må du først forstå det virtuelle minnet.
Virtual Memory er en minnehåndteringsteknikk med mange fordeler, men det ble først og fremst opprettet for å gjøre programmeringen lettere. Tenk deg at du har Google Chrome, Microsoft Word og flere andre programmer åpne på en datamaskin med 4 GB RAM. Som en helhet bruker programmene på denne datamaskinen mye mer enn 4 GB RAM. Men ikke alle programmene vil være aktive til enhver tid, eller trenger samtidig tilgang til RAM.
Operativsystemet tildeler biter av minne til programmer kalt sider . Hvis det ikke er nok RAM til å lagre alle sidene samtidig, lagres sidene som sannsynligvis er nødvendig, på den langsommere (men mer romslige) harddisken. Når de lagrede sidene trengs, bytter de mellomrom med mindre nødvendige sider i øyeblikket i RAM. Denne prosessen kalles personsøking, og gir navnet sitt til pagefile.sys-filen på Windows.
Virtuelt minne gjør det enklere for programmer å administrere sitt eget minne, og gjør dem også mer sikre. Programmer trenger ikke å bekymre seg om hvor andre programmer lagrer data, eller hvor mye RAM som er igjen. De kan bare spørre operativsystemet for ekstra minne (eller returnere ubrukt minne) etter behov. Alt programmet ser er en enkelt kontinuerlig del av minneadresser for eksklusiv bruk, kalt virtuelle adresser. Programmet har ikke lov til å se på et annet programs minne.
Når et program trenger tilgang til minne, gir det operativsystemet en virtuell adresse. Operativsystemet kontakter CPUs minnehåndteringsenhet (MMU). MMU oversetter mellom virtuelle og fysiske adresser, og returnerer denne informasjonen til operativsystemet.
Adresseplassering Randomisering (ASLR) brukes primært til å beskytte mot overfall av bufferoverflate. I en bufferoverflyt, gir angriperne en funksjon så mye søppelpost som det kan håndtere, etterfulgt av en ondsinnet nyttelast. Nybelastningen vil overskrive data programmet har til hensikt å få tilgang til. Instruksjoner for å hoppe til et annet punkt i koden er en felles nyttelast. Den berømte JailbreakM-metoden for jailbreaking iOS 4, for eksempel, brukte et bufferoverløbsangrep, og Apple ble bedt om å legge til ASLR i iOS 4.3.
Bufferoverløp krever at en angriper vet hvor hver del av programmet ligger i minnet. Å regne ut dette er vanligvis en vanskelig prøveprosess. Etter å ha bestemt seg for det, må de lage en nyttelast og finne et passende sted å injisere det. Hvis angriperen ikke vet hvor målkoden er plassert, kan det være vanskelig eller umulig å utnytte den.
ASLR fungerer sammen med virtuell minnehåndtering for å randomisere plasseringene til ulike deler av programmet i minnet. Hver gang programmet kjøres, flyttes komponenter (inkludert stakken, bunken og bibliotekene) til en annen adresse i virtuelt minne. Attackers kan ikke lenger lære hvor målet deres er gjennom prøving og feiling, fordi adressen vil være annerledes hver gang. Generelt må applikasjoner kompileres med ASLR-støtte, men dette blir standard, og krever selv på Android 5.0 og nyere.
Forskere fra SUNY Binghamton og University av California, Riverside, presenterte et dokument som heter Jump Over ASLR: Attacking Branch Predictors for å bypass ASLR. Papiret beskriver en måte å angripe Branch Target Buffer (BTB) på. BTB er en del av prosessoren som øker hastigheten hvis uttalelser ved å forutsi utfallet. Ved hjelp av forfatterens metode er det mulig å fastslå steder av kjente greninstruksjoner i et løpende program. Angrepet i spørsmålet ble utført på en Linux-maskin med en Intel Haswell-prosessor (først utgitt i 2013), men kan sannsynligvis brukes på ethvert moderne operativsystem og prosessor.
Når det er sagt, bør du ikke nødvendigvis fortvile. Papiret ga noen måter som maskinvare- og operativsystemutviklere kan redusere denne trusselen. Nyere, fine korn ASLR teknikker vil kreve mer innsats fra angriperen, og økning av mengden entropi (tilfeldighet) kan gjøre Jump Over-angrepet umulig. Mest sannsynlig vil nyere operativsystemer og prosessorer være immun mot dette angrepet.
Så hva er igjen for deg å gjøre? Hopp over bypass er ny, og har ennå ikke blitt sett i naturen. Når angripere utnytter det, vil feilen øke den potensielle skaden som en angriper kan forårsake på enheten. Dette nivået av tilgang er ikke enestående; Microsoft og Apple implementerte bare ASLR i operativsystemene som ble utgitt 2007 og senere. Selv om denne typen angrep blir vanlig, vil du ikke være noe verre enn du var tilbake i dagene i Windows XP.
Vær oppmerksom på at angriperne fortsatt trenger å få sin kode på enheten for å gjøre skade. Denne feilen gir dem ingen ekstra måter å infisere deg på. Som alltid bør du følge sikkerhetspraksis for sikkerhet. Bruk antivirus, hold deg unna sketchy nettsteder og programmer, og hold programvaren oppdatert. Ved å følge disse trinnene og holde skadelige skuespillere av datamaskinen, blir du så trygg som du noensinne har vært.
Image Credit: Steve / Flickr
Hvordan deaktiverer du TrackPoint-museknappen på en Dell-bærbar PC?
En TrackPoint-museknapp kan avhengig av aktivitetene og følsomhetsnivået være svært nyttig eller svært irriterende. Så hvordan deaktiverer du det hvis det hele tiden forårsaker problemer? Dagens SuperUser Q & A-post har svar på en frustrert leser spørsmål. Dagens Spørsmål & Svar-sesjon kommer til oss med høflighet av SuperUser-en underavdeling av Stack Exchange, en fellesskapsdrevet gruppe av Q & A-nettsteder.
Den enkleste måten å finne og laste undertekst (SRT) filer med video
Hvis du har lastet ned en film eller video som inneholder en eller flere SRT-filer for teksting, kan du kanskje lure på hva den beste måten ville være å se på videoen?Du kan bruke Windows Media Player eller Media Player Classic på Windows, eller du kan bruke QuickTime Player på en Mac. Hvis du søker på Google, finner du at det finnes alle typer opplæringsprogrammer for å laste undertekster i disse programmene, men det kommer til mange problemer.For det fø