EMP = Embedded Malware Processor

Jeg sidder og kigger lidt på en BeagleBone Black til et projekt til datamuseum.dk.

Det der gør den interessant er at CPU'en ud over sin ARM Cortex-A8 også har to små 32bits processorer kaldet "PRU-ICSS":

Illustration: Privatfoto

Ideen er kort og godt at disse to støtte-CPU'er kan løse kritiske realtids opgaver, således at man ikke behøver et RTOS på hoved-CPU'en.

Ideen er langt fra ny, stort set alle mainframes har hele deres I/O system bygget på den påde, men BBB er den første amatørvenlige platform med en ordentlig co-processor.

Kigger vi lidt nærmere på hvad der er i kassen:

Finder vi to CPU'er med hver 8KB RAM til deres program og adgang til hele hoved-CPU'ens addresserum og hertil nogle dedikerede I/O adgange mv.

Overvej f.eks hvorledes man kan implementere en simpel "console-processor" på den ene PRU, via den dedikerde UART0 seriel port: Det ville være perfekt til remote GDB på et kørende system, eller bare som generel konsol-adgang.

Men overvej så at vi ofte får farvestrålende "die-photos" af se af Intel og AMD's seneste CPUer, ofte med med hovedfunktionsdelene indrammet og navngivet.

Flot og fascinerende.

I de sjælnde tilfælde hvor man kan finde chip fotos af support chips, hvad enten de bliver kaldt North-Bridge, South-Bridge, SuperIO eller andet, er der til gengæld ikke meget hjælp at hente.

Hvad er sandsynligheden for at vores PC'er har embeddede processorer der er perfekte platforme for mal-ware ?

Det er et snydespørgsmål: Vi ved at de er der.

F.eks ligger der noget der ligner en 8051 CPU på alle Intels CPU'er til at tage sig af "microcode upload".

For mobiltelefoner er det den såkaldte "baseband processor" der styrer showet og kan gør lige hvad den vil imod den "application processor" der kører det operativsystem og de apps forbrugeren ser.

Selv ikke en RaspBerryPi er fri for at have en skjult CPU: Den core man kører på, skal startes af den "virkelige" CPU og koden dertil er hemmelig.

Er af spørgsmålene efter mit FOSDEM foredrag var: "Hvad kan EU gøre ?"

Et rigtig godt sted at begynde, er at kræve at ejeren af den fysiske enhed har 100% kontrol over hvilken kode der eksekveres af den dims han har købt, herunder tilstrækkelig dokumentation til at detektere malware der har sneget sig ind og metoder til at stoppe og fjerne det.

Indtil noget i den stil er på plads, har jeg svært ved at få øje på noget der for alvor kan kaldes en "trusted computing platform".

phk

Kommentarer (29)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
Peter Korsgaard

am335x SoC'en har faktisk (mindst) 1 mere coprocessor der ikke er vist på det diagram. Der er en ARM M3 core der bliver brugt til noget af det besværlige power mgmt kode (DDR self refresh og lign).

  • 1
  • 0
Casper Bang

Er af spørgsmålene efter mit FOSDEM foredrag var: "Hvad kan EU gøre ?" Et rigtig godt sted at begynde, er at kræve at ejeren af den fysiske enhed har 100% kontrol over hvilken kode der eksekveres af den dims han har købt.

Der er hackere kendt fra konferencer som Blackhat, DefCon mv. der specialiserer sig i at reverse engineer IC'er. En af de bedst kendte er Chris Tarnovsky, som har nogle vilde præsentationer på youtube. Sattelit broadcasting firmaer køber gutter som Chris til at checke hvor svært det er at bryde, på samme facon kunne EU nedsætte en ekspertgruppe til certificering.

En sådan ekspertgruppe ville skulle have adgang til alskens hi-tech udstyr og teknikker, og strategien vil minde om når man skal finde sorte huller, som ej heller kan observeres direkte men skal påvises indirekte.

Det grundlæggende problem er jo, at med mindre der er en chance for at en producent bliver fanget med hånden i kagedåsen, kommer vi næppe langt med tro, håb og love - bare spørg kansler Merkel!

  • 1
  • 0
Poul-Henning Kamp Blogger

Det grundlæggende problem er jo, at med mindre der er en chance for at en producent bliver fanget med hånden i kagedåsen, kommer vi næppe langt med tro, håb og love - bare spørg kansler Merkel!

Det er jo alene fordi det er ansvarsfrit at være direktør for store virksomheder.

Friheden til selv at bestemme over sine computere burde gøres til en menneskeret og firmaers menneskerettighedsbrud burde gøres til et solidarisk og fuldt ansvar for bestyrelsen og ledelsen af firmaet, inklusive udsigten til at ryge i fængsel hvis det er for groft.

  • 13
  • 0
Lars Bjerregaard

Lettere off-topic, men jeg synes også at BeagleBone Black ser rigtigt interessant ud, til rigtigt mange ting. Den originale BeagleBone så allerede dejlig ud, men BBB giver virkeligt "bang for the buck", til rigtigt mange typer projekter, og Beagleboard projektet er jo generelt dejligt Open Source og Open Hardware orienteret. Et par spørgsmål:

  • Er der ikke noget med at PRU'erne kun kan programmeres i assembler? Det lægger jo lidt en dæmper på begejstringen ved dem (for nogen).
  • Hvad ser du som fordelen ved ikke at bruge et RTOS, på den ellers meget potente MCU?
  • Var der noget med at TI har trukket sig fra embedded markedet, og at man ikke kommer til at se flere af den slags SOC'er fra dem?

Glæder mig til at læse noget om din brug af BBB hen ad vejen ...

  • 0
  • 0
Lars Bjerregaard

Når du siger:

Et rigtig godt sted at begynde, er at kræve at ejeren af den fysiske enhed har 100% kontrol over hvilken kode der eksekveres af den dims han har købt, herunder tilstrækkelig dokumentation til at detektere malware der har sneget sig ind og metoder til at stoppe og fjerne det.

Når vi snakker om baseband processoren i GSM enheder, er "the sticking point" her ikke, at beskytte GSM netværket, som alle afhænger af, imod dårlig kode, og dermed skadelig radiotransmissioner på netværket, og slige sager?

Hvis man forestillede sig, at baseband processor, og den kode der kører på dem, var helt åbne, ville de eksisterende regler omkring individers brug af radiotransmission, så være tilstrækkelige, eller hvordan ville det kunne det lade sig gøre, på samme tid at være helt åben (for interessant hacking) og så beskytte folks brug af GSM netværket?

Hvis nu man tager Internettet som model, så er det jo nok de færreste der kunne tænke sig at kæmpe mod DDOS angreb på deres mobiltelefon dagligt.

Er absolut ikke tilhænger af security through obscurity, men hvordan kunne det bringes til at spille, i praksis?

  • 1
  • 0
Poul-Henning Kamp Blogger
  • 6
  • 1
Peter Korsgaard

Næeh, ikke officielt. Du kan selvf skrive din egen kode til den hvis du har lyst. De har genbrugt designet i am43xx, så det var åbenbart en success. TI er generelt ikke bange for at smide mange cores i deres SoC, den dm8168 jeg arbejder på for tiden har E.G. officielt en A8, 2x M3, 6x arm968, 1x DSP og GPU.

  • 0
  • 0
Lars Bjerregaard

Styrken af radiosignaler aftager (groft sagt) med kvadratet på afstanden, så folk der sender radiosignaler i Kina er ikke noget stort problem for os her i Danmark.

IP pakker ankommer uforandret.

(og Lars Lundin) Det er selvfølgelig rigtigt, og så bogstaveligt skulle min analogi heller ikke tages. Lad mig prøve igen -

Hvordan undgår man problemet, at en moderne partyjoke blandt unge mennesker bliver, at køre igennem byen i den ældstes bil, med "My-GSM-Jammer 2.4" for fuld skrald, fordi den er lettere at hælde på ens smartphone and CyanogenMod, nu da baseband software og processor er helt åben?

Eller ser jeg bare problemer der aldrig vil opstå?

  • 0
  • 0
Jacob Pind

Hvordan undgår man problemet, at en moderne partyjoke blandt unge mennesker bliver, at køre igennem byen i den ældstes bil, med "My-GSM-Jammer 2.4" for fuld skrald, fordi den er lettere at hælde på ens smartphone and CyanogenMod, nu da baseband software og processor er helt åben?

nu kan man jo nemt købe en jammer, har man kunen i flere år og der har ikke været problem.

Problem er ikke du kan jamme gsm, er mere at det eksisterne software som køre baseband, er klydt kode fra ende til anden, hvilket jo er bussines as usual når industien selv laver standarter.

Du kan hente kode til calypso baseret telefoner hos osmocom-bb og ved at sende ting som efter gsm standarten er fuldt standart konformt kan du ligge nettet ned uden at skulle bruge store antender og sendestyrke. Det har ligget der i flere år og er alm. kendt, men vi har ikke set skyggen af et angreb, hvad vi derimod ser er emsi catcher m.med fordi gsm som sådan ikke har nogen sikkerheds features, det begrænser sig til funktioner som alene har med betalingen at gøre, ikke at sikker brugerne at masten du snakker med en en rigitg og ikke imsi catcher.

  • 0
  • 0
Rikard Svenningsen

Jeg arbejder med IT-sikkerhed i vores virksomhed, på en måde er det nemt nok at sikre sig mod "hacker" under forudsætning at de angriber fra steder (IP adresser) man normalt ikke kommer i kontakt med, så ser man efter det unormale trafik. Er det en efterretnings tjeneste man vil afsløre er sagen en anden. Uanset hvilket styrre system man bruger så skal det opdateres, Windows, MAC, Linux og Unix, i alle afskygninger. Man kan jo ikke vide om der er ekstra trafik som er skjult i "opdaterings kanalen", hvis man skal regne med at styrre system producenten har indgået en frivilig eller ufrivilig aftale med en efterretningstjeneste. Det har man ingen changce for at afsløre. Efterretnings tjenester kan måske også hackes og så er der jo rigtig balade i laksegade. Eller de kunne måske fristes over evne hos efterretnings tjenesten og sælge noget der ikke er deres. Det leder jo tanken der den at vi nok er nød til at vende tilbage til pen og papir og så passe på vores papir. Så vores samfund vil nok gå i stå. Så hvad skal man så gøre, blive ved som vi plejer?

  • 0
  • 0
Simon Rigét

Tror det bliver en hård og lang kamp. MS har allere vist vejen. Windows 8 er kun noget du lejer. Man ville kunne gøre det samme med hardware. Det forbavsede mig meget at de mange windowsbrugere ikke gjorde oprør over denne forretningsmodel. Jeg smed windows 8 ud. men det taget til efterretning, er det nok ikke sandsynligt at mange ville gøre oprør, når vi ikke længere har fuldt ejerskab over vores hardware. Og så kan producenterne med rette fylde med med hvad som helst.

  • 0
  • 0
Christian Madsen

For mobiltelefoner er det den såkaldte "baseband processor" der styrer showet og kan gør lige hvad den vil imod den "application processor" der kører det operativsystem og de apps forbrugeren ser.

Baseband IC var indtil 2009, hvor jeg forlod branchen altid forbundet med application IC ved hjælp af et AT kommando snit over et serielt interface (det kan have ændret sig, men jeg har svært ved at forestille mig det).

Naturligvis kan baseband IC lave man-in-the-middle attacks, men ikke direkte blande sig i hvad der foregår i application IC.

Er der nogen som kan give eksempel på et chipset hvor baseband IC kan tilgå adresseområdet (RAM og FLASH) i application IC?

Du kan hente kode til calypso baseret telefoner hos osmocom-bb og ved at sende ting som efter gsm standarten er fuldt standart konformt kan du ligge nettet ned uden at skulle bruge store antender og sendestyrke.

Som jeg husker historien, kan man korrekt nok lægge én celle ned ved at sende på RACH kanalen uden at cellen har bedt om det. Det gør at der ikke kan etableres dedikeret kommunikation imellem cellen og enhederne. Altså kun GSM/GPRS/EGPRS og kun en celle ad gangen. Ikke mere. Altså ikke hele nettet.

Har cellen flere fysiske RACH kanaler på samme timeslot, kan én telefon kun forstyrre en af disse ad gangen og dermed ikke hele cellen.

  • 0
  • 0
Christian Madsen

[quote]Selv ikke en RaspBerryPi er fri for at have en skjult CPU: Den core man kører på, skal startes af den "virkelige" CPU og koden dertil er hemmelig.[/qoute]

Tænker du at BCM2835 har flere kerner end GPU og MCU?

Linket her fortæller om bootsekvensen. Pointen er at Broadcom ønsker at holde detaljerne om GPUen for sig selv og derfor er koden hemmelig. Men jeg er enig - GPUen kan (formodenligt) misbruges.

  • 0
  • 0
Christian Hansen

Jeg er ret hooked på ideen med at EU skulle hyre hackere til at certificere disse ting. Man får på den måde det bedst mulige udgangspunkt fra det daglige liv - EU kan på mange måder være en tidslomme med emner som disse, da de ikke for eksekveret sådanne elementer i rette tid, efter min mening.

Jeg skal ikke gøre mig klog på meget af det i ellers snakker om, da jeg slet ikke er så "hardcore". Har blot en interesse for emnet og ellers kun givet mig ikast med denne her: http://www.alphageek.dk/?q=raspberry%20pi. Raspberry PI har åbnet en ny verden for mig og elsker at lege med det. Håber ikke folk synes jeg er for ukvalificeret til at chatte på dette forum, da man kan lære meget herinde.

  • 0
  • 0
Log ind eller Opret konto for at kommentere