Kan en virus ødelægge BIOS på en moderne computer?

I slutningen af 1990erne begyndte en computervirus kendt som CIH at inficere nogle computere. Dens nyttelast, når den udløses, overskrev systemoplysninger og ødelagde computerens BIOS og i det væsentlige murede den computer, den inficerede. Kunne en virus, der påvirker moderne operativsystemer (Ligesom Windows 10) ødelægge BIOS på en moderne computer og i det væsentlige mur det samme måde, eller er det nu umuligt for en virus at få adgang til en moderne computers BIOS?

Kommentarer

  • ja, men fra et angriberperspektiv det er spild eller ressourcer … Mere info om et rootkit til UEFI som et eksempel i nedenstående papir … welivesecurity.com/wp-content/uploads/2018/ 09 / ESET-LoJax.pdf
  • Kommentarer er ikke til udvidet diskussion; denne samtale er flyttet til chat .
  • Nogle (eller de fleste?) desktop bundkort har en ROM, der bruges til at gendanne BIOS fra en eller anden form af medier (i gamle dage, disketter, i disse dage, USB-sticks, måske cd-rom). ROMen kan ‘ ikke ændres, men gendannelse kræver normalt at åbne sagen og flytte en jumper for at starte i BIOS-gendannelsestilstand. Jeg ved ikke ‘ hvordan bærbare computere håndterer dette.
  • Relateret: security.stackexchange.com/q / 13105/165253

Svar

Moderne computere har ikke BIOS, de har a UEFI . Opdatering af UEFI-firmware fra det kørende operativsystem er en standardprocedure, så enhver malware, der formår at blive udført på operativsystemet med tilstrækkelige privilegier, kan forsøge for at gøre det samme. De fleste UEFIer accepterer dog ikke en opdatering, der ikke er digital signeret af producenten. Det betyder, at det ikke skal være muligt at overskrive det med vilkårlig kode.

Dette forudsætter dog, at:

  1. bundkortproducenterne formår at holde deres private nøgler hemmelige
  2. UEFI har ikke utilsigtede sikkerhedssårbarheder, der gør det muligt at overskrive den med vilkårlig kode eller på anden måde kan udnyttes til at forårsage skade.

Og disse to antagelser holder ikke nødvendigvis .

Med hensyn til lækkede nøgler: hvis en UEFI-signeringsnøgle blev kendt for offentligheden, kan du antage, at der ville være en hel del medieindberetning og hysterisk patching i gang. Hvis du følger nogle IT-nyheder, du vil sandsynligvis se en masse alarmister “Hvis du har et [brand] bundkort OPDATER DIN UEFI NU !!! 1111one” overskrifter. Men en anden mulighed er at underskrive nøgler, der hemmeligt lækkes til statslige aktører. Så hvis dit arbejde måske er interessant for industriel spionage, kan dette også være en troværdig trussel for dig.

Med hensyn til bugs: UEFIs vinder mere og mere funktionalitet, som har flere og flere muligheder for skjulte fejl. De mangler også de fleste af de interne sikkerhedsfunktioner, du har, efter at du har startet et “ægte” operativsystem.

Kommentarer

Svar

Ja, det er bestemt muligt.

I dag, hvor UEFI bliver udbredt, er det endnu mere bekymrende: UEFI har en meget større angrebsflade end traditionel BIOS, og en (potentiel) fejl i UEFI kan være gearing for at få adgang til maskinen uden at have enhver form for fysisk adgang ( som demonstreret af folket i Eclypsium ved sort hat sidste år ).

Svar

En virus er praktisk talt software, så det kan gøre alt, hvad enhver anden software kan gøre.

Så den enkle måde svar på dette spørgsmål og alle andre i klassen “Kan vira gøre X?” er at spørge “Gør software i øjeblikket X?”

Sådanne spørgsmål kan omfatte “kan en virus gå min hund?” (ikke uden en hundevandrende robot); “Kan en virus skaffe mig pizza?” (ja: dette er desværre ikke hovedfokus for de fleste virusforfattere).

Opdateres BIOSer (UEFI) i øjeblikket ved hjælp af software? Svaret er, ja det er de. Mine blev opdateret i går aftes, da jeg genstartede.

Og så er svaret ja.

Af samme logik kan vira også forårsage (og historisk har forårsaget) fysisk skade på din CPU, harddiske og printere.

Hjemmeautomationssystemer og førerløse køretøjer er også mulige mål for fysisk skade, men jeg kender ingen vira, der har gjort det.

Kommentarer

  • Jeg ville ‘ ikke have noget imod det, hvis mine personlige oplysninger blev brugt af malwareudviklere til at bestille mig gratis pizza og intet andet. (+1 for nyttige ræsonnementer)
  • @Marc.2377, jeg ville ikke have noget imod det, hvis dine personlige oplysninger blev brugt til at bestille mig gratis pizza … 🙂
  • Moderne vira vil have en meget hård tid forårsager fysisk skade. I det højeste kunne de nedbryde hardware lidt ved at køre CPUen virkelig varmt, hvilket forkorter den nyttige levetid, men det ‘ er ikke almindeligt, at det kan forårsage skade Tidligere var det dog ikke ‘. Se ” dødens poke “.
  • @forest Aren ‘ t ventilatorerne og kølesystemets software, der kontrolleres i disse dage? Jeg ‘ er ikke sikker, men jeg vedder på, at du på en eller anden måde kunne forkaste CPU- eller GPU-blæseren fra software. Rusland ødelagde generatorer eksternt ved at skifte dem til og fra med en resonansfrekvens – jeg vedder på, at der er lignende tricks, der kan dræbe din skærm temmelig hurtigt. Plade-harddiske kan helt sikkert skraldes ved at dreje dem op og ned gentagne gange, solid state-drev er sårbare over for gentagne læse / skrive-cyklusser. Jeg vedder på, at der er meget, som en motiveret hacker kunne gøre ..
  • Jeg tror, at vi ‘ d har brug for at definere omfanget af ” forårsage fysisk skade ” før vi besluttede, om det var muligt / plausibelt. Hvis du begrænser definitionen til bogstaveligt at beskadige computeren, der kører koden, er den ‘ ret smal, og jeg tror @forest har ret. Hvis du inkluderer fysisk skade i en mere generel forstand, er det ‘ meget lettere at forestille sig scenarier, hvor en inficeret computer, der ‘ styrer noget ellers (kraftværk, trafiklys, massetransitsystem, vandbehandlingsanlæg osv.) kan let forårsage store fysiske skader.

Svar

Ja, det er bestemt muligt.

Her er et eksempel på en malware-OS-opdatering, der svigagtigt er underskrevet med producentens private nøgle: https://www.theregister.co.uk/2019/03/25/asus_software_update_utility_backdoor/

Ifølge Kaspersky Labs blev omkring en million Asus-bærbare computere inficeret af Shadowhammer, med en opdatering, der syntes at være signeret korrekt. Det er ikke klart, om det ændrede firmwaren, men det kunne bestemt have gjort.

Svar

Dit spørgsmål antyder et mere dybtgående emne, der er ringetoner og tilladelser til kode på et operativsystem. På MS DOS kunne koden gøre hvad den vil. Hvis koden ville skrive alle 0x00 “s til en harddisk, kunne den, hvis den ønskede at sende mærkelig output til et stykke hardware, kunne det også være, at der ikke var noget, der stoppede brugerens kode. På et moderne operativsystem er der et koncept af ringe (dette håndhæves af CPUen). Kernen kører på ring nul, og den kan gøre, hvad den vil. Brugerens kode på den anden side kan ikke. Den kører på noget, der kaldes ring 3, og den får sin egen lille hukommelse og inde i den hukommelse kan den gøre, hvad den vil, men den kan ikke direkte tale med hardware . Hvis brugerens kode forsøger at tale med hardware, så dræber kernen straks programmet. Dette betyder, at det er meget usandsynligt, at en almindelig virus kan dræbe hardware, fordi den ikke kan tale direkte med den.

Hvis kernen er hacket, så er spillet dybest set forbi. Kernen kan gøre, hvad den vil, og en hel række dårlige ting kan ske, såsom overklokning af CPUen til et punkt, hvor hardwaren er ustabil, tørring af harddiskene (fyldning med nuller for eksempel) eller stort set ethvert andet sandsynligt angreb.

Kommentarer

  • ” Hvis brugerens ‘ -kode forsøger at tale med hardware, så dræber kernen straks programmet ” – Virkelig? Kan du give en henvisning til det? Jeg troede, at den beskyttede instruktion simpelthen ville fejle, og det ‘ er op til programmet for at håndtere det med rimelighed eller gå ned.
  • @Marc .2377 Det er korrekt. Hvis brugeren ‘ s kode forsøger at udføre en instruktion i CPL3, der kræver CPL0-rettigheder, den kaster #GP(0) (generel beskyttelsesfejl eller GPF). Dette får koden til at hoppe ind i kernen for at se, hvilken signalhåndterer der blev oprettet til den begivenhed. Som standard vil kernen dræbe processen, selvom den ‘ er teknisk mulig for processen at oprette en signalbehandler til SIGSEGV, i hvilket tilfælde kernen genoptager udførelsen af processen kl. placeringen af signalbehandleren. Det ‘ er generelt ikke en god idé, men fordi en proces anses for at være i en …
  • … udefineret tilstand ifølge POSIX, hvis udførelsen genoptages efter at en SIGSEGV er rejst, der ikke ‘ t kom fra raise(). Det genoptager udførelsen ved den mislykkede instruktion, som bare kører igen og får processen til at låse, hvis signalet ignoreres.Så det kan være op til programmet at håndtere det, hvis det opretter en signalbehandler til SIGSEGV, men der ‘ s stort set aldrig nogen situation, hvor det ville blive gjort (selvom jeg tror, at Dolphin-emulatoren fanger segfaults for en slags hacky-optimering, så det behøver ikke ‘ at efterligne nogle underlige sider og kan stole på MMU).
  • Se dette for et (sjældent) eksempel på, når det er op til programmet. Eller læs bare PoC || GTFO 6: 3.

Svar

Potentielt. Det ville dog være svært at gøre, da det mere end sandsynligt skulle maskeres som en legit BIOS-opdatering et eller andet sted på linjen. Metoden til at gøre det vil ændre sig afhængigt af din mobo, men chancerne er, at det bliver nødvendigt at involvere utæthed af private eller hardware nøgler eller andre hemmeligheder.

Svar

Ja. Det er hardware-specifikt, men her er et tilfælde af, at en bruger ved et uheld bryder deres bundkort-firmware fra OS-niveauet https://github.com/systemd/systemd/issues/2402

En fejl i firmwaren på en MSI-bærbar computer betød, at rydning af efi-variablerne fik den bærbare computer til at være ubrugelig. Fordi disse variabler blev eksponeret for operativsystemet og monteret som en fil, slettes alle filer fra OS-niveau forårsagede problemet, der kunne udnyttes af en virus til specifikt at målrette mod disse variabler.

Svar

Der er mange måder, og nogle af dem er foruroligende. F.eks. ser Computrace ud til at være en permanent bagdør , der kan omgå ikke kun operativsystemet, men endda BIOS. Og mere generelt er Intel Management Engine har fuld kontrol over din computer og kan sandsynligvis udnyttes. Disse kan ændre din BIOS, men behøver ikke engang det. Bare i 2017 regnede sikkerhedsforskere med at ut hvordan man udnytter Intel IME via USB til at køre usigneret kode .

Pointen er, at selvom du har et helt sikkert operativsystem og du downloader aldrig usikker eller ondsindet software, der er stadig en ikke-ubetydelig mulighed for, at du kan blive påvirket af en malware, der omgår alt dette ved at udnytte en sikkerhedssårbarhed i din hardware (selv når din computer angiveligt er slukket). / p>

Svar

Noget, jeg har set her:

Hvis angriberen får tilstrækkelig tilladelse til at installere selv en embedsmand UEFI-firmware, korrekt underskrevet af systemproducenten, kan de stadig potentielt efterlade computeren i en ikke-startbar tilstand ved at slukke for computeren på et passende tidspunkt under processen.

Opdateringskoden i moderne firmware forsøger normalt at minimere den tid, computeren bruger i en tilstand, hvor et strømsvigt vil forårsage korruption af firmwaren, og s ome firmwares har endda en gendannelsestilstand, som aktiveres i et sådant tilfælde.

Imidlertid er mange af disse systemer ikke helt skudsikre. Selvom de tilbyder god beskyttelse mod tilfældige strømafbrydelser, kan en velindstillet strømafbrydelse stadig banke den ihjel, hvis firmwaren ikke har en robust automatisk gendannelsesfunktion.

Man behøver måske ikke engang at angribe hovedsystemets firmware. Næsten meget enhver enhed i en moderne pc har en firmware af en slags, og mange af dem kan opdateres via software. Disse enheder er ofte mindre sikre. De accepterer muligvis usignerede firmwares helt eller i det mindste mindre modstandsdygtige mod ondsindede strømafbrydelser under opdateringsprocessen.

Hvis du ødelægger firmwaren på strømstyringen, lagercontrolleren, lagerenheden, videoenheden eller inputcontrolleren, kan systemet muligvis blive lige så ubrugeligt som hvis du havde angreb UEFI.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *