Internet Güvenliği 3: Pratik Tavsiyeler

Internet Güvenliği 3: Pratik Tavsiyeler

Mevcut pratiklerin zararlı olduğunu gördük.
Bizi koruyan bazı teknolojilerin perde arkasını gördük.
Şimdiyse herkesin uyması gereken kurallara bakalım.

(TDK notu: "Şifre"nin encryption'a, "parola"nın da password'e denk geldiğini öğrendim. Bense ikisine de "şifre" diyordum. Kurumlar dahil herkes o şekilde kullandığı için bu yanlışta ısrar edeceğim. Dil ne güzel bir şey, yeterince fazla insan aynı yanlışı yaparsa, o yanlış doğru oluyor. Yaşasın kalabalıkların cehaleti.)

***
 

#1 - Şu Saniye İşi Gücü Bırakıp Şifrelerinizi Değiştirmeniz Lazım

Bir önceki yazıda bahsettiğim LinkedIn rezaletinde açığa çıkan parolaların üçte biri "utanç listelerinde" idiler. Yani basit dictionary saldırılarına gebeler. Hash tablolarını çalmayı bırak, web üzerinden 3 tane parola denesen belki yetecek bazılarının hesabına girmeye.

Bir diğer üçte birlik kesim de, standart brute-force programlarıyla kolayca kırılabilecek cinsten parolalar seçmişler. Yani utanç listesinde yer alan bir şifrenin, basit bir varyasyonu mesela. Yahut İngilizce sözlüklerde sıkça geçen bir kelime. Yahut anlaşılmaz bir şey ama çok kısa.

Yani Mr Robot klonu olmanıza gerek yok; Rus forumlarından indirebileceğiniz o çalınmış hash tablosu + piyasada satılan basit programları kullanarak, birkaç saat içinde her 3 LinkedIn kullanıcısının 2'sinin hesabına girebilirdiniz.

Hepimiz çoğu konuda kendimizi ortalama üstü görüyoruz ama ne yazık ki şifre konusunda o %66'lık LinkedIn kalabalığı içinde olma ihtimaliniz -sıkı durun- %66.

 

#2 - Şifrelerinizi Bir Kenara Yazmayın

Kasanın üstüne kasa şifresini yazmakla, arabanın üstünde anahtarını bırakmakla, bilgisayarın şifresini post-it'le ekrana yapıştırmak arasında fark var mı?

Hadi evdeki bilgisayar neyse, oraya biri girmişse zaten daha önemli dertleriniz var demektir. Ama bir keresinde, İş Bankası'nın güvenlik ekibinden birinin ekranına post-it ile yapıştırılmış firewall parolası görmüştüm. Test makinesi değil, bildiğin canlı ortam. "Kozmik oda"da filan da değildik, yüzlerce insan gibi oraya iş yapmaya gitmiş biriydim. Fotoğrafını bile çekmiştim çaktırmadan, Google Drive'da bir yerde duruyor. (Image recognition ile tarasalar -ki tarıyorlar- o şifreyi anlayacak Google.) Elbette tek bir şifre bilmek yeterli değil ama başka yollardan olan erişimime eklenince...yani abartmayayım ama o gün isteseydim Amerikan başkanı dahil her iktidarı düşürürdüm.

Cüzdana da şifre yazmayın. Hayatınızın bir noktasında cüzdanınızı kaybetme/çaldırma ihtimaliniz %95 (kaynak: Nasa).

İlla yazacaksanız, bari bir açıklama olmadan ve mesela karakterleri birer ikişer arttırarak yazın. (Bu tekniğin genel hali olan Caesar Cipher'ı, 2000 yıl önce Roma'da kullanıyorlardı.)

 

#3 - Cleartext Haramdır

Asıl kabus senaryo post-it değil, notepad. Daha doğrusu, şifreleri herhangi bir elektronik ortama açık halde yazmak. Bunların eninde sonunda çalınacakları kesin.

Bir düşünün, babanızın hesabını ele geçirmek için gidip Google'ı hacklemek yerine, telefonunda veya PC'sinde gezen malware'ler ile bu tip text dosyalarını okumak çok daha kolay. Veya onu email phishing ile kandırmanın kolaylığını düşünün. Nijeryalı devrik diktatörlerin ellerindeki açık şifrelerin sayısını hayal edemiyorum. (Yanlış anlamayın, babanızı tanıdığımdan değil ama biraz saf diyorlar.)

tesco.png

Bu günahı bazı web siteleri de işliyor, size açık şifrenizi emailleyerek. Yukarda alışveriş devi Tesco'nun facia güvenlik politikasının bir kanıtı var (ayrıntısı burada). Bu kısa email nelere işaret ediyor?

  • Gerçek şifrenizi Tesco biliyor, yani hashing yapmıyorlar, yani bir çalışan tüm şifreleri sızdırabilir.
  • Emaile erişim güvenli değil çünkü her seferinde login olmuyoruz. Telefonumu veya laptop'ımı çalan biri, emailime kolayca bakabilir.
  • Kimse emaillerini silmiyor. Hesabınız taa 3 sene sonra bile hacklense, bu tip şifreleri görmek için tek gereken "password" diye aratmak.

Bunları düşünemeyen bir web sitesinin kim bilir başka ne güvenlik açıkları vardır. O yüzden size herhangi bir hassas bilgiyi emailleyen şitelerle iş yapmayın, kendi şifrelerinizi de emaillerde saklamayın.

 

#4 - Dandik Sitelere Dandik Şifreler

Birileri o Tesco.com'u veya bokgibisysadminiolansite.com'u illa ki hackleyecektir ve ele geçirdiği her şeyi bankalar için, Google için, e-devlet için de deneyecektir. Bunu önlemek için iki yöntem var:

  1. Her siteye özel şifre (bir password manager gerektirir, birazdan değineceğim)
  2. Dandik siteler için, "123456" gibi bilinen şifreleri kullanmak.

Hangi yolu seçerseniz seçin, bu sitelere ikincil bilgiler vermeyin. Yani doğum tarihi, telefon numarası, vs. Zira bunlar illa ki sızacaktır ve daha önemli hesaplarınızı ele geçirmek için kullanılabilirler.

 

#5 - Güvenlik Soruları Güvensizdir, Doğru Cevaplamayın

Eskiden "şifremi unuttum" hıyarlığı için standart çözüm olan güvenlik soruları artık birer güvenlik açığı haline geldiler. Ben hayatımda sadece bir kere hacklendim ("challenge accepted"), o da zamanında Google hesabımdaki bu sorulardan birinin aşırı basit olması yüzündendi.

Tasarım hatasına bakın: Benim şifremi kırmak için belki 50 trilyon deneme yapmanız gerekiyor ama "şifremi unuttum" deyip, ilk gittiğim okulu veya ilk arabamın markasını tahmin etmek için belki sadece 10 deneme yeterli.

Şu işin ilk denemeden hemen sonra tarihin tozlu yapraklarına gömülmesi lazımdı, nasıl yıllar boyunca kullanıldı inanamıyorum. O süreçte Internet'e saldığınız tüm o cevapların da çoktan çalınmış olduklarını farzedin. Neyse ki artık çoğu site bu soruları sormuyor, sorana da güvenmeyin.

 

  Bu tip sorular birer social engineering davetiyesi gibiler

Bu tip sorular birer social engineering davetiyesi gibiler

 

#6 - Şifrenizi Test Etmeyin

"Şöyle şifre kullanın, böylesini kullanmayın" diye bin tane tavsiyeyle şiştikten sonra, aklınızdaki bir şifreyi test etmek çekici gelebilir. Sürüyle online password-meter var. Mesela bu. Eğlenceli ama asıl şifrelerinizi buralarda denemeyin.

İlkin, basit bir denemeyle, bu testlerin ne kadar manasız olduğunu görebilirsiniz. Linklediğim siteye göre "Passw0rd!23" şifresini çözmek 400 sene alacakmış ortalama, "yapmahayrettin" ise sadece 51 sene. 

Uzunluğa ve karakter çeşitliliğine bakıp bir hesap yapıyorlar hep. Oysa hash tablolarını çalmış biri, sizin sadece küçük harf kullanıp kullanmadığınızı önceden bilmiyor. Zaten o tablolarda sadece siz yoksunuz ki. O hackerın izleyeceği genel stratejiye göre, muhtemelen ilk söylediğim şifre daha önce denenip kırılacaktır, çok sık kullanılan bir şifrenin varyasyonu olduğu için. 

İlk bölümde dediğim gibi, "şifreniz ne kadar saçma sapan karakterlerden oluşursa o kadar güvenli olur" diye bir kural yok. Bu tip şifre ölçerler tam da bu yanlış intibayı besliyorlar.

metre.JPG

***

İkincisi de, bu test siteleri riskli. Kötü niyetli kişiler tarafından şifre toplamak için hazırlanmış olabilirler. Linkteki site Dashlane sponsorluğunda olduğu için görece güvenilir ve offline çalışıyor (yani yazdığınız şifreyi bir sunucuya gönderip, orada işleyip, sonra size sonucu göstermek yerine, kodunu sizin browserınızda lokal olarak çalıştırıyor). 

Ama gerçekten de Dashlane sponsorluğunda olduğundan emin miyim? Yahut her seferinde ethernet kablosunu çekerek veya kaynak koduna bakarak, programın lokal çalıştığını kontrol edecek miyim? Etsem bile bunu anlayacak kadar Javascript biliyor muyum?

Hepsinin cevabı hayır. Boşuna risk almayın, buralarda sadece dandik şifreler deneyin eğlence için.

 

#7 - Bu Sefer İşlevinden Çok Boyutu Önemli

Uzun şifrelerin daha zor kırılması sürpriz değil (yukardaki sitede "hayrettinyapmahayrettin"i denediğimde, süre 277 trilyon seneye çıktı), asıl numara post-it gerektirmeyecek bir uzun şifre bulabilmekte.

Bir password manager kullansanız bile, 2-3 tane sağlam ve hatırlayabileceğiniz parola lazım. Zaten password manager'a bağlanmak için bir tane gerekecek her halükarda.

İyi şifre yaratma sorununun Diceware gibi ilginç çözümleri var. Bana en kolay gelen stratejiyse, kendimi robot yerine koymaktan vazgeçip, özel karakterlere fazla bulaşmamak. Konuyla veya siteyle alakalı bir cümle kuruyorum mesela (içinde sitenin adı geçmiyor). Cümle anlamsız da olabilir, önemli olan içindekileri aynı kare içinde kafanızda canlandırmak. Bunu yaparsanız bir daha o şifreyi unutmazsınız.

Şifredeki kelimelerden biri, size anlamlı gelmesine rağmen sözlüklerde bulunmayacak bir şey olsun. Asıl güvenlik sağlayan kısım o. Kalan kısım, hatırlamayı kolaylaştırmak için.

(Çoğu site en az bir rakamı ve özel karakteri zorunlu kıldığı için, herkes gibi başına sonuna eklemek yerine, bunları şifrenin ortalarına bir yerine yedirin. Mesela ünlem işaretini hatırlamak için, kafamda canlandırdığım sahnede şaşıran birileri olabilir.)

password_time.jpg

 

#8 - Öldürmeyeceksin, Aynı Şifreyi Kullanmayacaksın

Internet güvenliği hakkındaki en önemli kutsal emir, şifrelerin tekrar kullanımı hakkında: 

Thou shall not reuse passwords! (Üstad burada İngiliz halkına sesleniyor)

(Bu arada, 10 emir'in sıralamasını bilmiyorsanız bir bakın. Aslen 10'dan fazla emir içeriyor ve "birbirinizi öldürmeyin" 7. sırada. Ben de en önemli güvenlik emrini 8. sıraya koydum o yüzden.)

***

Çoğunuz "her yerde" aynı şifreyi kullanacak kadar saf değildir umarım ama muhtemelen "dandik yerler için bir şifrem, önemli yerler için de başka bir şifrem var" tayfasındansınızdır. Yahut belki de süper bir şifre buldunuz ama onun sonuna "apple", "google", vs ekleyerek bir düzine farklı yerde kullanıyorsunuz. Halbuki brute force algoritmaları sık kullanılan site isimlerini ve ilk x harflerini, otomatikman deniyorlar zaten, kimseyi kandırmıyorsunuz yani.

Aynı şifreyi veya yakın akrabalarını tekrar tekrar kullanmak, tüm yumurtaları aynı sepete koymaktan da kötü: Farklı yumurtalar koydukça, sepetin de giderek zayıfladığını hayal edin. Zira yaptığınız şey, her sitedeki hesabın güvenliğini, aralarındaki en kötü güvenliğin seviyesini çekmek.

O sitelerden illa ki bir tanesi two factor authentication kullanmıyordur, illa ki birinin hash fonksiyonu eskimiştir, illa ki birindeki mühendisler patronlara kızgınlardır ve veritabanını sızdırmak için çok da ikna edilmelerine gerek yoktur. Zinciri en zayıf halkası koparır. Ve bir şekilde bilgileriniz "ortamlara" düştüğünde, Internet onu bir daha unutmuyor. Hemen ertesi gün diğer sitelerde denendiği yetmiyormuş gibi, tüm olası varyasyonlarıyla beraber 3 ay veya 3 sene sonra da denenmeye devam ediyor.

 

#9 - Password Managerlar 65 Yaş Altı İçin Birer Zorunluluk

Her sitenin şifre oluşturma ve yenileme politikası farklı olduğu için (ve aralarında Ziraat gibi "illa 6 karakterli şifre olsun" diyen felaketler olduğu için), yukardaki tüm kuralları takip etmenin iki doğal sonucu var:

  1. Bir noktada isyan edip, tüm kuralları ihlal ettiğiniz cahiliye dönemine geri döneceksiniz.
  2. Bir noktada pes edip, 21. yy'da yaşadığınızı farkederek bir password manager kullanmaya başlayacaksınız.

Password Manager: Her şiteye özel, upuzun manyak bir şifre uydurabilen ve bunları sizin yerinize hatırlayan bir sanal kasa. Sizin sadece kasanın ana şifresini hatırlamanız gerekiyor. Desktop uygulaması, browser eklentisi ve telefon uygulaması halinde çalışıyorlar.

"Sahte" Password Manager: Chrome gibi browserların sunduğu "şifre hatırlama" veya autofill özellikleri. Bunlar çok güvenli değiller. XSS gibi veya görünmez formlarla bilgi çalmak gibi "seksi" güvenlik açıklarına değinmeye gerek yok, daha "ilkel" düşünsek de olur: Dalgın bir anınıza denk gelir, biri Google'a benzeyen bir siteye sizi emaille yönlendirerek hesabınızı çalabilir, sonra gider sizin bilgilerinizle Chrome'u açar ve şifrelerinize erişimi olur. Olmasın.

 Chrome'un bu mesajında "Fuck No!" diye üçüncü bir seçenek olmalı.

Chrome'un bu mesajında "Fuck No!" diye üçüncü bir seçenek olmalı.

***

Gerçek password manager'lardan bazıları şunlar:

  • Dashlane
  • Lastpass
  • 1Password
  • Keeper

Karşılaştırmaları burada. Dashlane en yüksek notu alıyor genelde, bense Lastpass kullanıyorum epeydir. Yaklaşık 100 ayrı sitedeki kullanıcı bilgilerimi buradan kontrol ediyorum. Peki bunlar ne kadar güvenli? Tüm yumurtaları aynı sepete koymak değil mi bu?

Kısa cevap: Evet ama yumurtalarımın hiçbiri birbirine dokunmuyor ve Dünya'daki en sağlam sepet bu. Password managerların riski x ise, bunları kullanmamanın yarattığı risk 100x. O yüzden kafayı güvenlikle kırmış bir sürü uzman da bunları kullanıyor. 

Uzun cevap: Çalışma akışı kısaca şöyle:

  1. Bir sitenin giriş sayfasına geldiğinizde Lastpass burada hesabınız olduğunu anlıyor.
     
  2. Halihazırda bir Lastpass session'ı yoksa, önce oraya girmeniz lazım ("bu cihazı 30 gün boyunca hatırla, her seferinde uğraştırma" seçenekleri de var).
     
  3. Ana şifrenizi yazıyorsunuz ama bu şifre cihazınızı terketmiyor. Yani Lastpass sunucularına giderken yolda kaçırılma ihtimali yok.
     
  4. Onun yerine şifre cihazınızda hashleniyor ve Lastpass'e sadece bu hash gidiyor kontrol için. (Önceki yazıdan hatırlayın).
     
  5. Tabii ki yüzlerce kez rehash yapıp, salt eklemişler, yani brute force imkansıza yakın.
     
  6. Hesabınız doğrulanınca, size "parola kasanız" gönderiliyor. Bu şifrelenmiş (encrypted) bir dosya. Anahtarı da sadece sizde. Yani sizin cihazınızda ve hep orada kalıyor.
     
  7. Hesaplarınızda değişiklik yaparsanız, şifre kasası cihazınızda güncelleniyor, yeniden şifrelenip Lastpass sunucularına gönderiliyor. O tarafta bir anahtarı yok. Bunu sunucuya göndermenin mantığı, başka bir cihazdan kasaya erişebilmeniz (cloud-based).
     
  8. Dolayısıyla bir Lastpass çalışanı ne ana şifrenizi, ne de parola kasanızdaki site şifrelerini açıp görebilir.
     
  9. Eğer Internet cafe gibi güvensiz bir yerde olacaksanız, tek seferlik kullanılıp atılan ana şifreler var. Bu sayede keylogger gibi şeylerden endişe etmeye gerek kalmıyor.

***

Bugüne kadar galiba bir tek Lastpass'ta bir güvenlik ihlali yaşandı, o da hashlerin çalınmasıydı. Hatta çalınması bile değil, çalınmaya yeltenilmesiydi. Geçen bölümde gördük, ana şifreniz (master password) yeterince uzun ve özel olduğu sürece, hash'in çalınması da bir sorun değil. Zaten Lastpass saldırıyı hemen farkedip, ne olur ne olmaz diye hem kendi hash fonksiyonlarını değiştirmiş, hem de herkesin şifresini daha önce kullandıkları bir IP'den yenilemelerini istemişti.

Kısacası bu kadar gözönündeki bir hedef için, siciller gayet temiz. Yalnız dikkat edilecek bazı hususlar var:

  • Master password'u asla unutmamanız lazım. Hesabınızı geri kazanmanız çok zor aksi takdirde. Adı üstünde Lastpass: Hatırlamanız gereken son parola.
     
  • Yeni bir ülkeden veya acayip bir IP'den Lastpass'e bağlanmak için ekstra adımlar gerekiyor. Aceleniz olduğunda "nereden bulaştım bu işe" diyebilirsiniz. 
     
  • Başkasının bilgisayarından bir siteye girmem gerekiyorsa, önce web'den veya telefon uygulamasından Lastpass'e bağlanıp, o sitenin şifresini öğrenmem gerekiyor çünkü 25 karakterli saçmasapan bir kod. Eğer sık sık bunu yapacaksanız, o siteler için Lastpass'ten rastgele şifre uydurmasını istemek yerine, kendi şifrenizi kaydedebilirsiniz. Mesela Google şifremi unutmadığım sürece, Lastpass'e gerek olmadan çat diye her bilgisayardan girebilirim. Ama unutursam da (çünkü biraz zor bir şifre olmalı), en azından Lastpass'e girip, şifre kasasına bakarak öğrenebilirim.
     
  • Ekstra güvenlik için, Chrome'daki Lastpass eklentisinin autofill (otomatik şifre, form, kullanıcı adı doldurma) özelliğini kapatın.
     
  • Daha da ekstra güvenlik için, Lastpass'i mutlaka 2FA (two factor authentication) ile birlikte kullanın...ki bilin bakalım bu da bizi nereye getiriyor?
2fa.jpeg

 

#10 - "Two Factor" Kullanmıyorsa Evlenmeyin

Çoğumuz bunu telefona gelen SMS kodlarından tanıyoruz. İşin aslı two-factor authentication (veya multi-factor authentication) bir çok farklı metod içeren geniş bir konu. Hatta SMS kodları bu metodların arasında muhtemelen en güvensizi. Lakin aklınızda kalacak tek bir şey varsa o da şu olsun:

En kötü 2FA, hiç 2FA kullanmamaktan iyidir.


Dünya'nın en mükemmel şifresine de sahip olsanız, insanlık halidir, hesabınız kırılabilir. "İnsanlık hali" diyorum, çünkü bu işler Mr Robot'un çılgın hacking tekniklerinden ziyade, insanların hıyarlıkları sonucu oluyor. Yaklaşık 20 sene önce sabahın köründe bir telefon gelmişti, o uykulu halimde karşımdakinin hikayesine he he diyerek sosyal güvenlik numaram, ehliyetim, vs ne varsa vermiştim. Anca telefonu kapayınca kafama dank etti, "ulan Bilo şerefsizi!" diye çığlık attım. Sonra işin yoksa kırk saat telefonlarda kredi kartlarını, onu bunu iptal et.

Bitmiyor da işin: Taa iki sene sonra herifin teki benim adıma kredi çekmiş, sonra iş başvurusu yapmış bir yerlerde. Muhtemelen kaçak göçmenlere "hizmet veren" birileri benimkisi gibi bir sürü bilgiyi üç kuruşa satın almış bir yerlerden. Kredi tarihçesi alarmı kurduğum için haberim olmuştu tüm bunlardan.

***

Velhasıl, biz gerizekalı olduğumuz sürece (24 saatin 1 dakikasında gerizekalı olmak da yeterli) şifrelerimizin çok akıllı olmaları tek başına yeterli değil. O yüzden 2FA sunan her sitede bu özelliği aktive edin: Bankalar, Google, FB, Amazon vs ve tabii ki Lastpass kasasının kendisi için.

Birinin hem şifrelerime, hem emailime, hem de telefonumun kendisine (ve ona girmek için gereken şifreye / parmak izine) sahip olma ihtimali çok az. Hepsini becermişse zaten beni kaçırmış, parmağımı kesmiş ve bir yerlerde zindana atmıştır, gelin kurtarın. 

Harbi diyorum, kurtarın. 3 gündür bir şey yemiyorum, sabah akşam bu diziyi yazıyorum. Bitince ne olacak acaba? Aha, tam da şimdi bitt

Doğumgünü Çocuğu Bertrand Russell

Doğumgünü Çocuğu Bertrand Russell

Internet Güvenliği 2: Hashing Nedir, Nasıl Hayat Kurtarır

Internet Güvenliği 2: Hashing Nedir, Nasıl Hayat Kurtarır