De grote securityrampen van de afgelopen tijd – en waarschijnlijk ook de komende tijd – hebben één belangrijk ding gemeen. Ze overvallen ons vanuit het verre verleden. Shellshock, Poodle, Heartbleed, het zijn allen gaten en bugs in oude, vertrouwde technologie.
Deze en andere recente kwetsbaarheden zijn symptomatisch. Het toont aan hoe oude technologie ten onrechte voor veilig wordt aangezien en ons dagelijks in de problemen brengt. Let wel: nieuwe technologie is niet altijd beter. maar qua veiligheid blijkt veel oude of oudere technologie toch echt achter te lopen. Dit kan meerdere oorzaken hebben. Bijvoorbeeld dat beveiliging niet goed is ingebouwd in de oude technologie, omdat het niet is meegenomen in het basisontwerp. Het is namelijk niet makkelijk – en vaak niet afdoende – om security achteraf ‘toe te voegen’ aan iets dat ooit is ontworpen zonder rekening te houden met het beveiligingsaspect.
Te veel vertrouwen
Een andere mogelijke oorzaak is dat er te veel wordt vertrouwd op de oudere technologie, die zich immers door jarenlang gebruik heeft bewezen. Naast complexe it-systemen op de achtergrond betreft dit tevens bekende toepassingen als pinautomaten waar tegenwoordig ook steeds vaker malware op wordt geplaatst. Door nieuwe ontwikkelingen in detectiemethodes voor kwetsbaarheden en de complexe benutting daarvan, worden we hier nu (pas) mee geconfronteerd. Ondertussen is cybercrime een serieuze business geworden en de inzet is dus hoog.
Vandaar dat veel security-onderzoekers – white hats, grey hats én black hats – zich storten op deze ‘nieuwe’ gaten in oude technologie. Technologie die voorheen niet interessant was voor aanvalsdoeleinden of technologie die veilig werd geacht. De nog onontdekte gaten hierin, zogeheten zero days, zijn kostbare goederen voor een lucratieve handel. De recente Shellshock-bug is er zo eentje. De zoveelste zero day van de afgelopen tijd, en vast ook niet de laatste die een zeer brede impact heeft.
Grootste securityramp
De breedte van de impact wordt mede bepaald door het wijdverbreide gebruik van een oude, vertrouwde technologie. In het geval van Shellshock komt het rampenscenario aan bod van binnendringers op vele Linux- en Unix-systemen wat naast servers ook vele embedded apparaten raakt. Denk aan routers en modems, maar bijvoorbeeld ook aan Wi-Fi-hotspots. Hiermee komen ook de devices van het Internet of Things in beeld. De ‘softwarefout’ die ten grondslag ligt aan de Shellshock-bug is behoorlijk complex, maar het misbruik ervan blijkt relatief eenvoudig. Op simpele wijze is de macht over computers over te nemen. Het heeft na de ontdekking van Shellshock dan ook nog geen dag geduurd voordat kwaadwillenden volautomatische scans loslieten op internet, speurend naar kwetsbare systemen.
Zo’n kwetsbaar systeem hoeft niet eens het daadwerkelijke doelwit te zijn, maar kan juist een middel zijn. Om bijvoorbeeld internetverkeer af te luisteren, zoals het grote Heartbleed-lek ook mogelijk maakte. En terwijl er onder security-experts nog de discussie liep welk beveiligingsgat de grootste securityramp was, diende de volgende zich alweer aan. Het Poodle-gat in het wijdverbreide en lang geleden ontworpen beveiligingsprotocol SSLv3. Weer een oude technologie die ons opbreekt.
Het goede nieuws is dat veel van deze kwetsbaarheden nu worden ontdekt omdat we kritisch kijken naar de fundamenten van onze onmisbare ict. Het slechte nieuws is dat door die kritische blik er nog meer onaangename verrassingen zijn te verwachten. Door rekening te houden met deze mogelijke verrassingen, kunnen we securityrampen echter zoveel mogelijk proberen te voorkomen of op zijn minst in te dammen. Wees dus alert.
Oude technologie is ooit nieuw geweest en dus toen niet beter of slechter dan destijds. Wel geeft tijd altijd de kans fouten aan het licht te brengen en die zitten er in de IT nu eenmaal in. Oude technologie hoeft namelijk niet slecht te zijn, kijk naar de landing van Philae op een komeet. Toen deze van aarde vertrok was de technologie al 15 jaar oud, maar die betrouwbaarheid stelt wel wat eisen aan het project. De belangrijkste factor zijn kosten, in de IT moet het veelal goedkoop en snel.
Woorden zijn mooi, maar daden laten zien wat je echt vindt. In relatie tot beveiliging betekent dat dat iedereen het belang er van onderschrijft, maar het in praktijk blijkbaar acceptabel vindt als het af en toe flink misgaat. De signalering van Martijn dat het relatief vaak gaat om oude technologie vind ik wel waardevol omdat het je er van bewust maakt dat het steeds opnieuw ’toch maar in de lucht houden’ (en liefst tegen lage kosten) van software (ook) dit type nadelen kent. Des te meer reden dus om voldoende aandacht voor onderhoud te hebben of de boel tijdig te saneren.
@Henri: Met telnet kan je nog steeds heel goed troubleshooten. Je hoeft het namelijk niet op poort 25 te gebruiken. Je kan er ook prima POP, ESMTP of andere internet gerelateerde protocollen. SFTP wordt dagelijks nog op veel plekken gebruikt.
On-topic: Uitgekristalliseerde programmatuur heeft de minste fouten en heeft daardoor ook minder kans op ernstige beveiligingsproblemen. In de man pages vind je vaak de bekende bugs of tekortkomingen.
Van wat ik er van mee gekregen heb, is de shellshock problematiek ontstaan doordat programmatuur anders gebruikt is gaan worden, dan waarvoor het oorspronkelijk bedoeld was. Dit is ook het probleem van al die om-school initiatieven. De mensen die hieruit voort komen, kennen de voorgeschiedenis simpel weg niet.