Het moeilijkste programma

Van de vertaler: ik vond een vraag op Quora: wat is het meest complexe programma of de meest complexe code ooit geschreven? Het antwoord van een van de deelnemers was zo goed dat het zich behoorlijk aangetrokken voelt tot het artikel.

Maak uw veiligheidsgordels vast.

Het meest complexe programma in de geschiedenis is geschreven door een team van mensen van wie we de namen niet kennen.

Dit programma is een computerworm. De worm is blijkbaar geschreven tussen 2005 en 2010. Omdat deze worm zo complex is, kan ik alleen een algemene beschrijving geven van wat hij doet.

De worm verschijnt eerst op een USB-station. Iemand kan een schijf vinden die op de grond ligt, deze per post ontvangen en geïnteresseerd zijn in de inhoud ervan. Zodra de schijf zonder medeweten van de gebruiker in een Windows-pc werd geplaatst, lanceerde de worm zichzelf automatisch en kopieerde hij naar deze computer. Er waren minstens drie manieren waarop hij zichzelf kon lanceren. Als de ene niet werkte, probeerde hij een andere. Minstens twee van deze opstartmethoden waren volledig nieuw en beide gebruikten twee onafhankelijke, geheime bugs in Windows waarvan niemand op de hoogte was totdat deze worm verscheen.

Zodra de worm op de computer start, probeert hij beheerdersrechten te krijgen. Hij geeft niet veel om geïnstalleerde antivirussoftware - de meeste kan hij negeren. Vervolgens zal de worm, afhankelijk van de versie van Windows waarop hij draait, een van de twee voorheen onbekende methoden proberen om beheerdersrechten op de computer te verkrijgen. Net als voorheen, voordat deze worm verscheen, wist niemand van deze verborgen kwetsbaarheden.

Daarna kan de worm sporen van zijn aanwezigheid in de diepten van het besturingssysteem verbergen, zodat geen antivirusprogramma hem kan detecteren. Het verbergt zich zo goed dat zelfs als je op de schijf zoekt naar de locatie waar de worm zou moeten zijn, je niets zult zien. Deze worm verborg zich zo goed dat hij een jaar lang op internet kon surfen en geen beveiligingsbedrijf erkende niet eens het bestaan ​​ervan..

De worm controleert vervolgens of hij toegang heeft tot internet. Als hij kan, probeert hij sites te bezoeken www.mijnpremierfutbol.com of www.todaysfutbol.com. Op dat moment waren deze servers Maleisië en Denemarken. Het opent een gecodeerd communicatiekanaal en vertelt deze servers dat de nieuwe computer met succes is vastgelegd. Waarom werkt de worm zichzelf automatisch bij naar de nieuwste versie?

Daarna kopieert de worm zichzelf naar elk ander USB-apparaat dat u moest plaatsen. Het doet dit door een zorgvuldig vervaardigd nep-schijfstuurprogramma te installeren. Deze driver is digitaal ondertekend door Realtek. Dit betekent dat de makers van de worm op de een of andere manier in staat waren om in te breken op de veiligste locatie van een groot Taiwanees bedrijf en de meest geheime sleutel van het bedrijf te stelen zonder dat het bedrijf er zelf van op de hoogte was.

Later begonnen de auteurs van dit stuurprogramma het te ondertekenen met een privésleutel van JMicron, een ander groot Taiwanees bedrijf. En nogmaals, de auteurs waren in staat om in te breken op de veiligste plek in dit bedrijf en steel de meest geheime sleutel die dit bedrijf zonder dat ze er iets van weten.

De worm waar we het over hebben erg ingewikkeld. En wij zelfs begon niet.

Daarna begint de worm twee recent ontdekte bugs in Windows uit te buiten. Eén bug heeft te maken met netwerkprinters en de andere met netwerkbestanden. De worm gebruikt deze bugs om zichzelf via het lokale netwerk te installeren op alle andere computers op kantoor.

De worm zoekt vervolgens naar specifieke software die door Siemens is ontwikkeld om grote industriële machines te automatiseren. Zodra hij het heeft gevonden, gebruikt hij (je raadt het al) een andere voorheen onbekende bug om zichzelf de programmeerbare logica van de industriële controller te kopiëren. Als een worm zich eenmaal in die computer heeft genesteld, blijft hij daar voor altijd. Geen enkele vervanging of "desinfectie" van de computer zal helpen om er vanaf te komen.

De worm zoekt naar aangesloten industriële elektromotoren van twee specifieke bedrijven. Een van deze bedrijven bevindt zich in Iran en de andere in Finland. De motoren waarnaar hij op zoek is, heten "Variable Frequency Drives". Ze worden gebruikt om industriële centrifuges aan te sturen. Centrifuges kunnen worden gebruikt om veel chemische elementen te zuiveren.

Bijvoorbeeld uranium.

Nu de worm de volledige controle over de centrifuges heeft, kan hij ermee doen wat hij wil. Hij kan ze allemaal uitschakelen. Hij kan ze allemaal onmiddellijk vernietigen - laat ze gewoon op maximale snelheid ronddraaien totdat ze als bommen uit elkaar vliegen en iedereen die toevallig in de buurt is doodt.

Maar nee. Dit complex worm. En de worm heeft andere plannen.

Zodra het alle centrifuges in je fabriek heeft overgenomen... gaat de worm gewoon slapen.

Dagen gaan voorbij. Of weken. Of seconden.

Als de worm besluit dat het zover is, wordt hij snel wakker. Hij selecteert willekeurig verschillende centrifuges terwijl ze het uranium raffineren. De worm blokkeert ze, zodat als iemand merkt dat er iets vreemds is, hij deze centrifuges niet kan uitschakelen.

En dan, langzaam, begint de worm deze centrifuges te laten draaien... een beetje verkeerd. Helemaal niet veel. Gewoon, weet je een klein beetje te snel. Of klein beetje te traag. Alleen licht buiten veilige parameters.

Tegelijkertijd verhoogt het de gasdruk in deze centrifuges. Dit gas wordt UF6 genoemd. Een zeer schadelijk iets. De worm verandert de druk van dit gas een klein beetje buiten veilige grenzen. Precies zo dat wanneer er tijdens bedrijf gas in de centrifuges komt, de kans klein is dat dat gebeurt hij zal in steen veranderen.

Centrifuges houden er niet van om te snel of te langzaam te werken. En ze houden ook niet van stenen.

Maar de worm heeft nog een laatste truc over. En hij is briljant.

Naast al zijn acties begon de worm een ​​record af te spelen van de laatste 21 seconden van de werking die hij had opgenomen toen de centrifuges normaal draaiden.
De worm speelde de opname keer op keer af, in een lus.

Als resultaat zagen de gegevens over alle menselijke centrifuges er vrij normaal uit. Maar dit waren slechts valse vermeldingen die door de worm waren gemaakt.

Stel je nu voor dat je verantwoordelijk bent voor de zuivering van uranium met behulp van deze grote industriële installatie. En alles lijkt goed te werken. De motoren klinken misschien een beetje vreemd, maar de cijfers op de computer laten zien dat de motoren van de centrifuge werken zoals het hoort.

Dan beginnen de centrifuges kapot te gaan. Willekeurig, de een na de ander. Meestal sterven ze stilletjes. In sommige gevallen passen ze echter bij het heden представление. En de uraniumproductie begint sterk te dalen. Uranus moet schoon zijn. Uw uranium is niet zuiver genoeg om er iets nuttigs mee te doen.

Wat zou jij doen als je deze uraniumverrijkingsfabriek runde? Je zou alles keer op keer controleren, zonder te begrijpen wat het probleem is. Je zou alle computers in de fabriek kunnen veranderen als je dat zou willen.

Maar de centrifuges zouden nog steeds kapot gaan. Jij ook wist niet eens waarom.

Na verloop van tijd gaan onder uw toezicht ongeveer 1000 centrifuges kapot of worden uitgeschakeld. Je wordt gek als je probeert uit te zoeken waarom dingen niet werken zoals gepland.

Dit is precies wat er is gebeurd

Je zou nooit verwachten dat al deze problemen zijn veroorzaakt door een computerworm, de meest sluwe en intelligente computerworm in de geschiedenis, geschreven door een ongelooflijk geheim team met onbeperkt geld en tijd. De worm is ontworpen voor slechts één doel: ga door alle bekende digitale verdedigingen en vernietig het nucleaire programma van uw land zonder gepakt te worden.
Een programma maken dat EEN van deze dingen kan doen, is op zich al een klein wonder. Maak een programma dat dit ALLES en meer kan doen...

… voor deze de Stuxnet-worm moest het meest complexe programma ooit geschreven worden.

Bron: www.habr.com

Voeg een reactie