Tarihin en sofistike yazılımı, isimlerini bilmediğimiz bir ekip tarafından yazılmıştır. Bu yazılım bir bilgisayar solucanıdır (worm). Solucan, muhtemelen, 2005 ve 2010 yılları arasında yazılmıştır. Çok karmaşık ve sofistike olduğu için, sadece yaptıklarının en yüzeysel taslağına değinilecektir.
Bu solucan ilk olarak bir USB bellek ile ortaya çıkmıştır. Bu bellek herhangi bir şekilde içinde ne olduğu merak edilen biri tarafından bulunup bilgisayara bağlandığı anda solucan sessizce bir kopyasını çalıştığı kişisel bilgisayara kopyalamaktadır. Kendisini çalıştırabilmek için 3 ayrı yöntem izlemektedir. Yöntemlerden herhangi biri işe yaramadığında diğerini dener. Bu yöntemlerden 2 tanesi tamamen yeni ve kimse tarafından daha önce bilinmeyen ve sadece bu solucana özgü, gizli Windows hatalarını (bug) kullanmaya dayanır.
Solucan kendisini herhangi bir şekilde PC’de çalıştırmayı başardığında o bilgisayarda sistem yöneticisi (administrator) yetkilerini almaya çalışır. Çalıştığı bilgisayarda bir antivirüs yazılımı olmasının da bir önemi yoktur. Onlara fark edilmeden çalışabilmektedir. Daha sonra çalıştığı bilgisayardaki Windows versiyonuna göre yine daha önce hiç bilinmeyen 2 ayrı Windows açığını/hatasını (bug) kullanarak yönetici yetkilerini de elde eder.
Bu noktada, solucan artık işletim sisteminin altına gizlenerek izlerini kapatabilir, böylece hiçbir antivirüs yazılımı varlığını tespit edememektedir. İşletim sistemi ile oldukça entegre bir şekilde gizlendiği için solucanın varlığını herhangi bir şekilde algılama imkânı kalmamıştır. Öyle ki, bu solucan yıllarca internette dolaştığı halde dünyadaki hiçbir bilgisayar güvenlik şirketi tarafından dahi fark edilememiştir.
Bilgisayarda kendisini çalıştırabildikten sonra, o bilgisayarın internete bağlanıp bağlanamadığını kontrol etmektedir. Eğer bağlanabiliyorsa http://www.mypremierfutbol.com ya da http://www.todaysfutbol.com sitelerine bağlanmaya çalışmaktadır. Solucanın aktif olduğu zamanlarda bu sitelerin sunucuları Malezya ve Danimarka’daydı. Şifreli bir link açarak sunucuya yeni bir PC’ye bağlandığı bilgisini iletmektedir. Daha sonra kendisini otomatik olarak güncellemektedir.
Bu adımdan sonra, bulaştığı PC’ye bağlanan tüm USB disklere kendi kopyasını kurmaktadır. Bunu da oldukça özenli tasarlanmış sahte bir USB disk sürücü yazılımı ile yapmaktaydı. Bu disk sürücü yazılımı Realtek firmasının dijital imzasını taşıyordu. Bu da solucanı yazanların Tayvan kökenli bu devasa şirkete sızdıklarını ve bir şekilde firmanın gizli anahtarlarını, Realtek’in haberi dahi olmadan çalabildiklerini gösteriyordu. Daha sonraki versiyonlarda, aynı disk sürücü yazılımı için yine büyük bir Tayvan şirketi olan JMicron firmasının gizli sürücü anahtarları kullanılmıştır. Bunu da aynı şekilde JMicron’un haberi dahi olmadan sistemlerine sızıp almışlardır.
Dediğim gibi oldukça sofistike bir solucandan bahsediyoruz ve henüz yapacaklarını yapmaya başlamadı bile.
Solucan, bulaşma, kendini güncelleme ve daha sonra da tekrar başka usb disklere sinsice bulaşma aşamalarını geçtikten sonra yine Windows’un daha önce hiç bilinmeyen farklı 2 hatasını daha kullanarak bağlı olduğu ağda yayılmaya çalışır. Bu hatalardan biri ağa bağlı yazıcılarla ilgili diğeri de ağdaki dosyalarla ilgilidir. Windows açıkları üzerinden bağlı olduğu yerel ağdaki diğer tüm bilgisayarlara bulaşabilmektedir. Solucan tüm ağdaki bilgisayarlara bulaştıktan sonra, Siemens tarafından geliştirilmiş ve çok büyük endüstriyel otomasyon sistemlerinde kullanılan bir makinaya ait spesifik bir kontrol yazılımını aramaya başlamaktadır. Bu yazılımı bulduğu anda, yine tahmin edeceğiniz üzere bu yazılımın o ana kadar tespit edilmemiş bir açığı üzerinden kendisini kontrol cihazının programlanabilir kontrol ünitesine kopyalamaktadır. Kontrolöre bir kez bulaştıktan sonra bu solucandan kurtulmak çok zor bir aşamaya gelmektedir. Herhangi bir şekilde ağda tespit edilip tüm bilgisayarlar değiştirilse dahi kendisini yeniden ağdaki tüm bilgisayarlara bulaştırabilecektir.
Solucan bu aşamada, kontrolöre bağlı iki spesifik şirkete özel endüstriyel elektrik motoru tipinden herhangi biri var mı diye kontrol eder. Bu şirketlerden biri İran diğeri de Finlandiya’dadır. Aradığı spesifik elektrik motorunu kontrol eden değişken frekans sürücüsü cihazını tarar. Bu sistemler endüstriyel santrifüj için kullanılmaktadır. Bu santrifüjler birçok kimyasal maddeyi ayrıştırmada ve saflaştırmada kullanılabilirler. Uranyum da bunlardan biridir. Değişken frekans sürücü cihazını da kontrol edebildiğine göre artık solucanımız santrifüjlerin kontrolünü de ele geçirmiştir. Artık istediğini yapabilir. Tamamen kapatabilir ya da çok yüksek hızlarda çalıştırıp bir bomba gibi patlatarak etrafındaki herkese zarar verebilir. Daha önce de dediğimiz gibi bu oldukça sofistike bir solucan ve başka bir planı mevcut.
Bulaştığı tesisteki tüm santrifüjleri kontrol etmeyi başardığı anda sadece uygun zamanın gelmesi için uyku moduna geçer. Haftalar günler ya da belki birkaç saniye bekler. Uygun zamanın geldiğine karar verdiğinde sessizce uyanır. Uranyum saflaştırma işlemi yapan santrifüjlerden rastgele birkaçını seçer. Bir şeylerin ters gittiğini fark eden herhangi birisinin santrifüjleri kapatmasını önlemek için kontrol ünitelerini kitler.
Solucan bu aşamada santrifüjlerin çalışmasını oldukça az bir oranda bozar. Oldukça küçük bir müdahaledir bu, santrifüjün çalışmasını çok küçük bir oranda daha hızlı ya da küçük bir oranda daha yavaş yapar. Güvenli sınırların çok az dışına çıkarır. Aynı zamanda da bu santrifüjlerdeki gaz basıncını çok az arttırır. UF6 (uranyum heksaflorid) denen bu gazın basıncını güvenli sınırların çok az üstüne çıkarır. Bu durum da santrifüjün içinde düşük bir ihtimalle de olsa gazın kaya gibi bir yapıya dönüşmesine yol açar. Santrifüjler hassastır ve güvenli sınırların dışında çalışmak ya da kaya oluşumları ile uğraşmak onlar için uygun değildir.
Solucanın son bir numarası daha vardır ve bunun altında şeytani bir deha yatar.
Yaptığı tüm işlemlerin ötesinde bir görevi daha vardır solucanın. Santrifüjlerin izleme arayüzlerinin bulunduğu bilgisayarlardan daha önce (sistemin normal çalıştığı zamanlarda) kaydettiği 21 saniyelik ekran görüntüsünü tekrar tekrar oynatır. Yanlış parametrelerle çalışan santrifüjlerin yanlış çalıştığını da ekrandan görmek mümkün olmaz. Ekranı izleyen tesis çalışanları her şeyin yolunda olduğunu görecektir. Oysa ekrandaki görüntü sahte bir görüntüdür.
Solucanın bulaştığı tesiste, zamanla bazı santrifüjler arızalanmaya başlayacak ve kullanılamaz hale gelecektir. Üstelik de elde edilmek istenen saf uranyum ise kullanılamayacak kadar kirli olacaktır. Saflaştırılamayan uranyum artık işe yaramayacaktır. Tesisi işletiyor olsanız ne olduğunu anlamanız da neredeyse imkansız olacaktır. Hatayı gözlemleyemediğiniz gibi neden tesisteki cihazların hızla kullanılmaz hale geldiğine anlam vermek de oldukça zordur. Olası bir siber saldırıdan şüphelenip tüm bilgisayarlarınızı değiştirseniz dahi sorundan kurtulamayacaksınız. Santrifüjleriniz bozulmaya devam ederken ve uranyumunuz çöp olurken ne olup bittiğini anlamanın bir yolu da yoktur. Tasarladığınız sistemin tamamen doğru çalışması gerektiği halde yaklaşık 1000 kadar santrifüj bozuluncaya kadar ne olup bittiğini izlemekle kalırsınız ve bu durum sizi çıldırtacaktır. Gerçekte de tam olarak bunlar yaşanmıştır.
Bir bilgisayar solucanının bu kadar büyük sorunlar çıkarabileceğini asla beklemezsiniz. Parası ve kaynağı neredeyse limitsiz olan ve oldukça gizli bir ekip tarafından tasarlandığı tahmin edilen bu solucan, çok karmaşık ve dolambaçlı yollarla ilerleyen tarihin en akıllı bilgisayar solucanıdır. Tek bir amaç için tasarlanmıştır, tüm dijital savunma hatlarını aşarak düşman ülkenin nükleer programına sızıp yakalanmadan etkisiz hale getirmek.
Herhangi bir yazılımın bu yazıda bahsettiğim herhangi bir işlevi yapması bile mucizevidir. Burada anlatıların tümünü hatta çok daha fazlasını yapan STUXNET solucanı ise tarihin en sofistike yazılımıdır.
- Çeviri: Ali Cihan
- Yazının Yazarı: John Byrd, CEO, Gigantic Software; Director, Sega; Sr Manager, Electronic Arts; Harvard ’91
- İngilizce Orjinali: https://www.quora.com/What-is-the-most-sophisticated-piece-of-software-code-ever-written