Bilişim güvenliğine yönelik spekülasyonlar bitmek bilmezken son iddia, Türkiye Cumhuriyeti'nin resmi internet portalı turkiye.gov.tr hakkında ortaya atıldı. İddiaya göre Rusya merkezli internet sitesi Yandex, Türkiye'nin e-devlet sistemi üzerindeki verileri yerleştirilen javascript kodu sayesinde ele geçirebiliyor.
İddiayı bilişim uzmanı Maruf Çetin gündeme getirdi. Kendisine ait bloku üzerinden “E-Devlet Sisteminde Yandex Skandalı” başlıklı yazı kaleme alan Çetin, Yandex'in vatandaşların bilgilerine ulaşabileceği iddiasında bulundu.
İşte o yazı:
Çocuğun üniversite kaydı için www.turkiye.gov.tr adresine girdiğimde kaynak kodunda yandex.ru sitesinden çalıştırılan bir javascript kodu olduğunu gördüm. Yandex Metrica tıpkı Google Analytics gibi çalışan bir sistem. Siteye gelen ziyaretçilerin bilgilerini toplayıp, topladığı bilgilerin çok önemsiz bir kısmını ülke/bölge lokasyonu, ip, tarayıcı bilgisi vs. gün, ay, yıl olarak raporluyor. Ancak bu sistemlerin topladığı bilgi bundan çok daha fazladır. Bir sitenin kaynak koduna böyle bir kod konulduğunda siteye gelen ziyaretçinin doldurduğu bütün form bilgileri, ve bütün çerezleri okuyabilir. Böylece sisteme giriş için kullanılan kullanıcı adı ve şifre de dahil pek çok bilgiyi ele geçirebilir.
Türkiye'nin tüm e-devlet uygulamalarının bel kemiğini oluşturan www.turkiye.gov.tr adresinde hem de (.ru) uzantılı yandex kodunun ne işi vardır? Zaten bütün web sunucularının kendi ayrıntılı istatiksel raporlamaları vardır. Örneğin önceleri yönettiğim Linux tabanlı kendi sunucularımda açık kaynak Apache web sunucusunu kullanıyordum ve onunla birlikte yine açık kaynak kodlu Webalizer ve Awestats gibi raporlama programlarını yüklüyordum. Tüm sunucularda benzer programlar mevcuttur. Google Analytics veya Metrica'nın verdiği ziyaret raporlarından daha ayrıntılı raporlar veriyorlar. Şimdi Metrica'ya yada Analytics'e neden ihtiyaç duyuluyor? Yandex'teki e-devlet kullanıcı istatistiklerini Cumhurbaşkanına, Başbakana, ilgili bakanlıklara ve ilgili birimlere yine Yandex sitesi üzerinden mi gösteriyorsunuz? Demek ki, birileri devlet sırrı ve mahremiyeti ile blog sitesinin gizliliği ve mahremiyeti arasındaki farkı kavrayamamış!!! Ben bu konuyu sosyal medyada paylaşmaya başlayınca bazı webmaster arkadaşlarım orada basit bir sayaç olduğunu ve abartılmaması gerektiğini savundular. Mübarek insan, e-devlet sistemi senin kendi köyünün ziyaretçi defteri değil ki sayaç koyasın!!! Kendi sitelerinin Admin (Yönetim) kısmına yandex google sayacı ve arama motorları indexlemesi koymayan bu arkadaşlar devlet yönetiminin programına sayaç konulmasını savunabiliyor. Bilgisizlik ve sorumsuzluk, başka bir şey değil.
Siteye dahil edilen bir javascript kodun ne kadar zararlı olabileceğini herhalde bazıları farkedememiş. Bu kod eklendiği zaman sitedeki tüm javascript etkinliklerini yapabilir. Sitede girilen tüm formları, formların içindeki tüm inputları ve bu inputlarda taşınan tüm değerleri alıp yine kendi sunucusu ile iletişim kurarak saklayabilir. Yani sisteme girmek için kimlik numarası ve edevlet şifresini yazıp enterladığın o form varya, o formdaki user ve password bilgilerini aynen yandex.ru adresine aktarabilir. Aynı şekilde sitenin tarayıcıya kaydettiği ve tekrar oradan okuduğu yine kullanıcı, password ve diğer bilgileri içeren çerezleri (cookie) okuyabilir, değiştirebilir ve kendi sunucusuna (yandex.ru) aktarabilir. Dahası, javascriptler sadece cookie ve form okumakla sınırlı değildir. Harici bir site ile makine dilinde de etkileşim sağlayabilir. XML ve JSON kullanarak da başka bir sunucudan bilgi alabilir ve başka bir sunucuya bilgi aktarabilir. Yani o kod orada edevletin tüm veritabanını çekemez. Ama edevlete giriş yapan kullanıcının site ile etkileşiminden doğan tum bilgileri çalabilir. Ben web sitelerinin yanısıra eticaret sistemleri ve otomasyon tasarlamış birisiyim. Arama motorlarında E-Devletin giriş sayfaları dışında indexlenmesi zaten doğru değildir. Vatandaşın tapu kayıtlarının olduğu sayfaları mı indexleyeceksiniz? Neyi indexliyorsun? Ama şifre ile giriş yapıldıktan sonraki vatandaşın tapu kayıtlarının olduğu sayfada da Yandex'in Metrica kodu hala aktif!!!
Yada (örneğin) adalet bakanlığı bölümündeki "devam eden davalar" dosyalarına da erişebiliyor Yandex'in Metrica kodu... Ruslar bu kod ile e-devlet sistemine giriş yapan bütün vatandaşların edevlet platformu içinde yer alan tüm bilgilerini çalabilirler. Sadece şifresini değil, tapu kayıtlarından devam eden davalarına kadar!!!
Dikkat edin e-devlet bir site değil, bir sistemdir. Orası Hürriyet gazetesi değil. Bir haber sitesi yada bir alışveriş sitesi de değil. Devletin vatandaş ile bağlantı kurduğu ve gizlilik taşıması gereken KOMPLİKE BİR SİSTEMDİR. Bir site değil, bir program ve uygulamadır. Kurumlar arasında bilgi akışının sağlandığı bir platformdur. Oraya basitçe bir yandex sayacı koyamazsın. F16daki yazılımı değiştirdik, artık amerikan yazılımını değil %100 Türk yazılımı kullanıyoruz diye böbürlenen bizler, kalkmış F16 yazılımından bile daha önemli olan e-devlet sistemine (.ru) uzantılı bir sayaç programı dahil ediyoruz. Bu mudur yani?
E-devlet vatandaşın, eğitim durumunu, sağlık durumunu, vergi durumunu, sgk sicillerini, tapu ve araç kayıtlarını ve daha onlarca uygulamayı içeren komplike bir sistemdir. Eğer bu kod dışardan yetkisiz bir şekilde konulmuşsa (ki bu ihtimal daha güçlü görünüyor), e-devlet sistemi hacklenmiş demektir. Yok eğer içerideki mühendisler koymuşsa, son derece bilinçsiz bir şekilde bir güvenlik açığı oluşturmuşlardır. Bunun sorumluluları bulunmalı! Analytics yada Metrica gibi sistemlerin kullanılmasının tercih edilmesinin amacı, reklamverenlere doğru bir bilgi sunmaktır. Eğer bir haber siteniz varsa reklam almak için sitenizin ziyaretçi sayısı konusunda reklamverenleri ikna etmeniz gerekiyordur. Sizin kendi sitenizdeki sunucunuzdaki webalizer sonuçlarına güvenmeyebilir. Çünkü oradaki raporlarla oynama ihtimaliniz olabilir. Bu durumda Analytics üçüncü bir taraf olarak reklamverenlere ziyaretçilerin sayısı konusunda daha güvenilir bilgiler sağlar. E-Devlet sitesi reklam alan bir site midir?
Giriş için SMS Aktivasyonu Uygulansın
Çok mühim bir konu da girişteki kolaylıktır. Mevcut haliyle şifreyi ele geçirmesi durumunda sadece yetkisiz kişiler değil, aynı zamanda yazılım robotları (bot deniyor) da sisteme giriş yapabilir. Robotlar sistemi sömürür ve tıkanmasına da sebep olurlar. Çünkü bir vatandaşın sitede gezinirken açabileceği sayfalardan çok daha fazlasını açarlar. Vatandaşların e-devlet şifreleri belirli mahfiller tarafından ele geçirildikten sonra, (ki muhakkak geçirilmiştir) bir robot yazılımı ile o vatandaşlara ait e-devlet platformu üzerindeki tüm bilgiler çok ayrıntılı olarak çalınabilir. Sanki o vatandaş siteyi ziyaret ediyor işlem yapıyormuş gibi bir uygulama yapılabilir. (Ki muhakkak yapmışlardır) Bu yüzden e-devlet giriş bölümüne acilen SMS Aktivasyonu uygulanmalıdır. Tıpkı bankalarda olduğu gibi vatandaş şifreyle giriş yaptığı zaman sistemde kayıtlı cep telefonuna SMS ile geçici aktivasyon şifresi gelmelidir. Vatandaşın sistemde kayıtlı cep telefonu yoksa, ilk girişte cep telefonunu tanımlamaya ve aktivasyonunu yapmaya zorlanmalıdır. Hatta yine bankalarda olduğu gibi giriş sırasında rastgele ve daha özel sorular da sorulmalı. Doğum yeri, doğu tarihi, anne kızlık soyadının bazı harfleri vs.
Önemli Sitelerde Bir Başka Güvenlik Sorunu
www.edevlet.gov.tr adresine bakınca da daha hafif olsa da yine güvenlik sorunu oluşturabilecek bir durumla karşı karşıyayız. Bir site başka bir siteden kod çalıştırmasına izin vermemeli. Bunu hiç bir banka yapmaz. Yan resimdeki www.edevlet gov.tr sitesinde bizim sitenin dışında aspnetcdn.com, devexpress.com, jquery.com, onlinehtmltools.com, ajax.googleapis.com domainlerinden harici olarak kod kullanımına izin verildiği görülmektedir. Günümüzde web tasarımında ve programlamasında önemli bir hale gelen framework'ler doğrudan kendi sitelerindeki CDN üzerinden kullanılmamalı. Bu sitelerde çoğu açık kaynak olan bu framework'lerin indirilerek (download) sitenin içine kurulması bu konuda olası bazı güvenlik sorunlarını azaltmış olur.