www.belgium.be Logo of the federal government
TRISIS

Trisis malware

Paper

TRISIS, ook bekend als TRITON of HatMan, is een malwarevariant die zich richt op Schneider Electric Triconex Safety Instrumented System (SIS) controllers. Het valt niet uit te sluiten dat er meerdere groepen dezelfde tool delen en er 1 of meerdere groepen achter de recente aanvallen zitten. De laatste tijd is het gebruik van deze malwarevariant toegenomen.

Belangrijkste feiten

  • TRISIS heeft verschillende slachtoffers gemaakt.
  • Wereldwijd worden er ongeveer 18 000 Triconex-veiligheidssystemen ontplooid.
  • Hoewel dezelfde SIS-systemen in verschillende industrieën worden gebruikt, is elke SIS-implementatie verschillend. Voordat de malware kan worden ingezet om het industriële netwerk op een manier in gevaar te brengen, moet de bedreigende partij inzicht hebben in de omgeving en de betrokken processen.
  • Elke aanval is doelgericht en op maat gemaakt voor het systeem van het doelwit. Deze aanval kan dus niet zo maar overgedaan worden naar andere systemen.
  • Deze malware werkt alleen als de fysieke keyswitch op de Triconex SIS Controller in program modus staat. In de run modus zijn wijzigingen niet toegestaan.
  • Het in gevaar brengen van de beveiliging van een SIS betekent niet dat de veiligheid van het gehele systeem in het gedrang komt. Safety engineering is een zeer specifieke vaardigheid en vereist strenge normen om ervoor te zorgen dat een proces veilig genoeg is.

TRISIS Capabilities

Samenvatting

TRISIS kan worden beschouwd als een Stage 2 ICS-aanvalscapaciteit (zie ICS killchain hieronder). Het doel van deze malware zijn specifieke ICS-systemen; het is duidelijk gericht op industriële netwerken en niet op traditionele IT-omgevingen.

Om een industrieel netwerk in gevaar te brengen, moet je eerst het omringende bedrijfs-IT-netwerk in gevaar brengen en een manier vinden om in de industriële omgeving te geraken. Als TRISIS wordt opgemerkt, betekent dit dat een hacker al succes heeft geboekt in het in gevaar brengen van het bedrijfsnetwerk.

De malware op zich bestaat uit een Pythonscript gecompileerd met py2exe, een publiek beschikbare compiler. Op die manier kan TRISIS in een omgeving worden uitgevoerd zonder dat de voorafgaande installatie van Python nodig is (wat in een industriële omgeving vaak geen zin heeft). Het doel van het script is de logica van een target-SIS te veranderen.

TRISIS proces

  1. Infectie van het bedrijfsnetwerk (voltooiing van de klassieke Kill-chain).
  2. Ontwikkelen – identificeren van het target SIS en vervolgens de vervangings-logic en loader ontwikkelen.
  3. Test – Testen of de malware werkt zoals bedoeld, waarschijnlijk door hem te testen op vergelijkbare apparaten in vergelijkbare omstandigheden (niet op het doelnetwerk).
  4. Aanleveren – TRISIS overbrengen naar het SIS, dat de 'loader'-module voor de nieuwe logic bevat en binaire bestanden ondersteunt die de nieuwe logic leveren.
  5. Installatie – De malware vermomt zich in principe als Triconex-software voor het analyseren van SIS-logs. Vervolgens identificeert de malware de exacte geheugenlocatie om zijn eigen initialisatiecode te vervangen en te uploaden.
  6. ICS-aanval uitvoeren – TRISIS controleert of de vorige stap geslaagd is. Als dit het geval is, wordt de nieuwe ladderlogic naar het SIS geüpload.

Conclusie

De TRISIS-malware is een soort zeer doelgerichte tool waarmee een hacker de ladderlogic op de betrokken apparaten volledig kan vervangen. Hierdoor kan hij de industriële omgeving verder in gevaar brengen.

De kennis die nodig is om dit soort zeer gerichte aanvallen uit te voeren is echter niet onbelangrijk. Voor elke intrusie zijn planning, ontwikkeling en op maat gemaakte code nodig. Geen van deze zijn triviaal en bemoeilijken het schalen en verspreiden van deze aanval naar andere omgevingen (inclusief omgevingen met Triconex-apparaten).

Proactive Mitigation

In het geval van TRISIS heeft Schneider Electric de volgende aanbevelingen gedaan voor Triconex Controllers:

  • Veiligheidssystemen moeten altijd op geïsoleerde netwerken worden ontplooid.
  • Fysieke controles moeten aanwezig zijn zodat onbevoegden geen toegang hebben tot de veiligheidscontrollers, de randapparatuur of het veiligheidsnetwerk.
  • Alle controllers moeten zich in gesloten kasten bevinden en mogen nooit in de Program-modus blijven staan.
  • Alle Tristation-terminals (Triconex-programmeersoftware) moeten in gesloten kasten worden bewaard en mogen nooit worden aangesloten op een ander netwerk dan het veiligheidsnetwerk.
  • Alle methoden van mobiele-gegevensuitwisseling met het geïsoleerde veiligheidsnetwerk zoals cd's, usb-sticks etc. moeten worden gescand vóór gebruik in de Tristation-terminals of een ander op dit netwerk aangesloten knooppunt.
  • Laptops die al op een ander netwerk dan het veiligheidsnetwerk werden aangesloten, mogen nooit zonder de juiste controle en beveiliging op het veiligheidsnetwerk worden aangesloten. Een goede sanering omvat het controleren op wijzigingen in het systeem en niet alleen het uitvoeren van antivirussoftware (in het geval van TRISIS heeft geen enkele grote antivirusverkoper deze malware gedetecteerd op het moment dat hij werd gebruikt).
  • De operator stations moeten zo worden geconfigureerd dat een alarm wordt weergegeven wanneer de Tricon key switch zich in de Program modus bevindt.