güvenlik etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
güvenlik etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

13 Haziran 2021 Pazar

Halkın parasıyla oluşturulan yazılımlar halkın malı olmalı

Avrupa Özgür Yazılım Vakfı uzun zamandır yürüttüğü bir kampanya ile "Vergi verenlerin parasıyla üretilen yazılımlar Özgür Yazılım olarak yayınlanmalı"[1] diyor. Uzun yıllardır kamuda çalıştığım için bu hedefin çok uzağında olduğumuzu biliyorum. Bizde neredeyse her kurum ihtiyacı olan yazılımları çoğunlukla kaynak kodunu almadan, kimseyle paylaşamayacağı, kendisi üzerinde bir geliştirme yapamayacağı şekilde alıyor veya yazdırıyor. Böyle olunca aynı sorunu her kurumun yeniden çözdürmesi, lisans bedeli ödemesi, üzerinde geliştirme yapamaması gibi olumsuz durumlar oluyor. Bunu yapanlar özel şirketler olduğunda bile özgür yazılımları kullanmalarını teklif ederken kamu kurumlarının bizim vergilerimizi böyle harcamamaları konusunda bir bilinç oluşturulmalıyız. Kurumların yöneticileri bilişim dünyasından o kadar habersizler ki ortada böyle bir sorun olduğunun bile farkında olmuyorlar çoğunlukla. Eğer iyi anlatılırsa halkın vergilerinin verimli kullanılması konusuna hiçbir yöneticinin ayak dirememesi gerekir.

Bu hafta Ankara Büyükşehir Belediye Başkanı Mansur Yavaş'ın duyurduğu "Lezzet Ankara" uygulamasının bir özgür yazılım olarak lisanslanmasının yukarıda bahsettiğim kampanyanın yaygınlaşması için önemli bir adım olabileceğini düşünüyorum. Elbette bunun için ikna edilmesi gereken kişi başkentin belediye başkanı değil onun bilişim alanıyla ilgili görevlendirdiği kişiler olmalı. Bu yazıyı hem onları hem de ilgilenen diğer yetkilileri göz önünde tutarak ayrıntılandırmak istiyorum.

Kamu kurumları ister kendi personellerine geliştirme yaptırsınlar, isterse dışarıdan alım yapsınlar çok basit birkaç noktaya dikkat ederek halkın vergilerinin çok daha verimli kullanılmasını sağlayabilirler. Burada akıllara gelebilecek konuların üzerinden geçelim.

Yazılımınızı özgür yazılım yapınca kontrolü kaybetmeyeceksiniz

Özgür yazılımların kaynak kodları açık oluyor, kurum çalışanları dışından da destek verenler olabiliyor dediğimizde sanki her gönderilen kod yazılıma dahil edilmek zorundaymış gibi algılandığı oluyor. Durum böyle değil elbette. Yazılımı özgür yazılım olarak lisanslayınca dışarıdan kod katkısını nasıl alacağınızı yine kurum olarak belirliyorsunuz elbete. İsteyen (lisans şartlarına uyarak) sizin kodunuzu kullanabiliyor ama siz uygun bulduğunuz kodları projenize dahil ediyorsunuz. Tedirgin olacak bir şey yok aksine geliştiriciler harcayacakları emeğe değeceğini düşünürlerse kendi kadronuzla hayal bile demeyeceğiniz büyüklükte işler yapabilirsiniz.

Özgür yazılımlar güvenlik tehlikesi anlamına gelmez

Bu konuda uzunca yazdığım için tekrarlamak istemiyorum ama özet olarak şunu söyleyeyim "bir algoritmayı gizleyerek onu daha güvenli hale getiremezsiniz"[2]. Güvenlik sürekli ilgilenmeniz gereken bir konu olacaktır. Yazılımınızı özgür yazılım lisansıyla lisanslayıp kaynak kodlarını açtığınızda elbette kodlardaki hataları düzeltmek ve iyileştirmeler yapmak için bakanlar olduğu gibi saldırganlar da olacaktır ama yazılımı geliştirmek isteyenlerin sayısının saldırganlardan fazla olduğuna ve pek az güvenlik açığının yazılımın koduna bakarak tespit edildiğine güveniyoruz. Sizi kandırmayalım, kaynak kodlar açılınca güvenlik sorunu kaybolmayacak.

Yazılımınızın kaynak kodunu hemen açmanızı beklemiyoruz

İster kurum içinde geliştirilsin isterse dışarıya yazdırılmış olsun en başından itibaren kodlar başkalarının da göreceği şekilde düşünülerek yazılmadıysa içinde bazı kirli çözümler içeriyordur. Sadece tek bir noktada kullanılacak diye planlandığından özelleştirmeye uygun halde değildir. Bazı servislere erişimde kullanılan gizli bilgiler kaynak kod içine yazılmış olabilir. Bunların kaynak kod açılmadan önce temizlenmesi ve özelleştirilmeye uygun hale getirilmesi gerekir. Bu emek isteyen bir iştir ama bir başka kamu kurumunun baştan yazması, yazdırması düşünülünce maliyetinin ne kadar önemsiz olacağını hesaplamak kolay olacaktır. Elinizdeki kaynak kodların açılması için tecrübeli yazılım firmalarından destek alarak işe başlayabilirsiniz. Bundan sonra bunu bir kurum kültürü haline getirirsiniz ve ilave desteğe ihtiyacınız kalmaz.

Yazılımın kaynak kodunu herkesin göreceği bir hale getirmenin faydaları saymakla bitmeyecektir. Bir yazılım güvenliği firmasından alacağınız danışmanlık size kullanıcı verilerini nasıl saklamanız gerektiği konusunda da yol gösterecektir örneğin. Yazılımınız kullandığı algoritmayı iyi gerçekleştirmiştir ama kullanılan algoritma güvenli değildir belki. Önceden yazılmış olanları siz düzeltirsiniz, bundan sonra yazılacak olanlara da hepimiz bakarız.

Bundan sonra her yazılımın kaynak kodunu da satın almalısınız

Yazılımları eğer kurum içinde geliştirmiyor da dışarıdan alıyor veya ihtiyacınıza göre yazdırıyorsanız şartnamelerinize yazılımın kaynak koduyla birlikte teslim edilmesi gerektiğini mutlaka yazmalısınız. Halkın vergileriyle oluşturulan bir ürün mutlaka halkın malı olmalıdır. Sadece kaynak kodların verilmesini değil bir özgür yazılım lisansıyla lisanslanmasını da şartlarınız arasına koymalısınız. Bunu yapmazsanız aldığınız kaynak kodları paylaşamayacağınız gibi geliştirme dahi yapamayabilirsiniz.

Bu süreç elinizdeki yazılımlar için bedava olmayacak

Mevcut yazılımların kaynak kodlarının açılması sürecinde elbette bir maliyet olacaktır ama bu asla yazılımın yeniden yazılması kadar olmayacaktır. hem zaten hedefiniz hiç para harcamamak değil vergilerimizin verimli harcanması olmalıdır.

Yazılımların kaynak kodlarını açmak yazılım firmalarına zarar vermez

Merak etmeyin bütün kamu kurumları teker teker muhasebe yazılımı lisansı satın almayacak diye yazılım firmalarına zarar vermiş olmazsınız. Yazılım çözümlerine her zaman ihtiyaç olacaktır, firmalar gerekli inovasyonu geliştireceklerdir. Zaten bir firma kendisi yazılım geliştirmiyor, sadece yurtdışı bir firmanın ürününün lisansını satıyorsa ona yazılım firması bile dememek gerekir. Onlar başlarının çaresine baksınlar, bu kamunun sorunu değildir.

Herkesin dilindeki yerlilik, millilik sorununu çözmüş olacaksınız

Bu konuda da önceden uzunca yazmıştım[3] ama yazılımları özgür yazılım yaparak geliştirmenin ülkemizde yapılmasına, bizim üreten bir ülke olmamıza katkı sağlamış olacaksınız. Geliştirme yapabilmek için dışa bağımlı olmayacağız. Sadece bunlar bile yazılımları özgür yazılım yapmanız için yeterliyken bir de onları kamunun vergileriyle ürettiğinizi ve başka şansınızın olmadığını hesaba katmalısınız.

Vergi verenlerin parasıyla üretilen yazılımlar Özgür Yazılım olarak yayınlanmalıdır!

16 Mayıs 2017 Salı

Özgür yazılım penceresinden WannaCry

Birkaç gündür neredeyse bütün haberlerde bir fidye yazılımı olan WannaCry hakkında okuyoruz. Microsoft'un bütün işletim sistemlerini etkileyen bir samba açığından faydalanan bu yazılım kullanıcıların bilgisayarlarındaki dosyaları şifreledikten sonra 300$ ödeme yapmaları halinde bu durumdan kurtulabileceklerini anlatan bir mesaj gösteriyor. İşin teknik kısmı hakkında çokça yazılıp çizildiğinden bu yazıda başka bir konudan; özgür yazılımın yaşananlara nasıl bakması gerektiğinden bahsetmek istiyorum. Sadece Microsoft'un işletim sistemlerini etkileyen bu büyük açığı bir avantajmış gibi kullanmadan önce aşağıdaki konularda düşünmemiz gerekiyor.


Neden özgür yazılım kullanılsın istiyoruz?

Biz özgür yazılımları daha güvenli oldukları, daha hızlı oldukları veya daha özelleştirilebilir oldukları için mi kullanıyoruz? Toplam sahip olma maliyetleri daha düşük diye mi özel mülk yazılımlar yerine özgür yazılımları tercih ediyoruz? Özgür yazılımlar bu saydığım avantajlara hatta daha fazlasına sahip oldukları halde sahipli yazılımlar karşısındaki gerçek üstünlükleri bunlar değil elbette. Özgür yazılımları herkesin istediği amaçlar için çalıştıramadığı, programın nasıl çalışabildiğini anlayamadığı, ihtiyacına uygun şekilde değiştiremediği, elindeki yazılımı dağıtmasının önünde kısıtlamaları olan sahipli yazılımlarla karşılaştırmaya buradan başlamamamız gerekir. Eğer temel argümanımız hız, güvenlik, ucuzluk olursa yarın sahipli bir yazılım bu konularda öne geçtiğinde söyleyecek sözümüz kalmaz. Kendimizi kandırmayalım bazıları hali hazırda bu konuların bazılarında daha ilerideler ama biz yine de özgür yazılımları kullanma taraftarıyız. İnsanların özgürce kullanıp, dağıtamadığı yazılımları özgür yazılımlarla kıyaslamaya başlamadan önce onların minimum insani ihtiyaçları karşılamaları gerekir [1]. İnsanlara, şirketlere, kamuya neden özgür yazılımlar kullanmaları gerektiğini doğru argümanlarla açıklamak çok önemli [2].

Özgür yazılım kullanılsaydı benzer bir durumla karşılaşılamaz mıydı?

Elbette karşılaşılabilirdi. Hatta karşılaşıldı da. GNU/Linux ve *BSD'lerde en çok kullanılan kabuk olan bash'in bu hatayla karşılaştırılabilecek büyüklükte bir hatası olan shellshock ancak 25 yıl sonra farkedilebildi. Bash'in kaynak kodları bu süre boyunca hepimizin gözlerinin önündeydi hem de. Bu yazdıklarımdan elbette kaynak kodların erişilebilir olmasının güvenlikle ilgili olumlu etkisinin olmayacağı anlamı çıkartılmamalıdır [3]. Bugün yaygın olarak kullanılan bir özgür yazılıma eklenen kodlara dünyanın her köşesinden geliştiriciler, geliştirici adayları ve meraklılar bakıyor. Kaynak kodlarını göremediğimiz bir yazılıma bir arka kapı kolaylıkla eklenebilirken aynı şeyi bir özgür yazılıma yapmak (imkansız demeyeyim ama) çok çok zordur. Durum böyle olmasına rağmen özgür yazılımlarda güvenlik sorunu hiç olmaz dememek gerekir, çünkü yaşadığımız örnekler var. Bugün wannacry sadece Windows'ta yaşanıyor siz GNU/Linux kullanın dersek yarın shellshock benzeri bir durumda söyleyecek sözümüz kalmaz. Bizim temel argümanımız özgürlük olmalıdır ve bu GNU/Linux kullanın demek için yeterlidir.

Microsoft'un neredeyse kimsenin kullanmadığı samba-v1'e hala destek veriyor olması görülmedik bir şey midir?

Geriye uyumluluk bütün yazılımların ciddi sorunlardan biri durumunda maalesef. Eski sürümlere destek verildiğinde böyle şeyler olabilirken desteğin kesilmesi de başka sorunlara yol açabiliyor bazen. Windows10'a bile samba-v1.0 desteğini vermesi elbette Microsoft'un kabahati ama bu hiç yapılmayan bir yanlış da değil. Neredeyse her yerde TLS 1.2 kullanılırken SSL'in eski sürümlerine verilen desteğin suistimal edilmesi yüzünden yaşadığımız şeyler üzerinden çok da uzun zaman geçmedi. Microsoft zamanında Windows'lardan bu desteği kaldırabilirdi ve bu onu daha iyi bir işletim sistemi yapmazdı. Bizim windows ve diğer sahipli işletim sistemlerini kullanmayın dememizin arkasında yatan şey onların tasarım ve planlama hataları değil özgür olmamalarıdır.

Microsoft Windows XP kullanıcılarına bir şey borçlu mu?

Microsoft'un Windows XP'yi piyasaya sürüş tarihi 2001. Elimizi vicdanımıza koyup konuşalım hangi işletim sistemine 16 yıl destek veriliyor? Dört yıl önce XP desteği artık sona erdi diye de yazdılar. XP çıktığı tarihte piyasada olan Debian 2.2 veya Redhat 6.2 için destek alamadığından şikayetçi kimse var mı? Aradan geçen bunca yılda kamunun kaynaklarını bir özgür işletim sistemine geçişte kullanmamış ve hala Windows XP kullandıran yöneticiler kusura bakmasınlar ama suçun önemli bir kısmı onları üzerinde. 

WannaCry'dan etkilenenler elbette sadece XP kullanıcıları değil bütün Windows sürümlerinin kullanıcıları oldu ama tahmin edilenin çok üzerinde XP kullanıcısı olduğu da görülmüş oldu. Bir kurumun yöneticisi arka planda ne yaptığını bilmediği, en temel insani ilkelere uygun olmayan bir işletim sistemini kullandırıyorsa suçu Microsoft'a atamaz bence.

GNU/Linux veya BSD'ler Windows'un alternatifi mi?

Özgür yazılımdan, özgür işletim sistemlerinden sanki Windows'un alternatifiymiş gibi bahsetmeyi kabul edilemez buluyorum. Bu konuda daha önce çokça yazdığım için tekrarlamak yerine aşağıya bağlantılarını bırakıyorum. [4], [5], [6]

7 Mayıs 2017 Pazar

SSH sunucusuna nasıl güveniyoruz?

SSH ve HTTPS bir çok yönden benzeyen protokoller. Daha önce HTTPS hakkında yazdığım için benzer şeyleri tekrar etmek yerine SSH'ın temel bir farkından bahsetmek istiyorum.

Bir SSH bağlantısı için istemci ve sunucu önce selamlaşıyor, ardından sunucu sertifikasını gönderiyor, istemci sertifikayı onayladıktan sonra sertifika içindeki açık anahtarla bir oturum anahtarı oluşturuluyor ve iletişim bu anahtarla şifrelenerek yapılıyor. HTTPS ile olan bu benzerliğin en önemli farkı sertifikayı onaylama kısmı oluyor. HTTPS için kullanılan sertifikalar çoğunlukla güvenilen Sertifika Otoriteleri (CAs) aracılığı ile üretildiğinden tarayıcılarımız sertifikaları onaylamak için onları kolaylıkla kullanabiliyor. SSH için kullanılan sertifikalar ise hemen hemen her zaman sunucu tarafında kendinden imzalı bir şekilde üretiliyor. SSH bağlantısının bütün güvenliği bu sertifikanın güvenilir olması üzerine kurulu olduğundan istemcinin bu sertifikayı bir şekilde onaylaması gerekiyor. SSH istemcilerinin sertifikaları onaylamak için farklı seçenekleri var:

Sunucu anahtarının parmak izinin kontrolü

Bir SSH sunucusuna bağlanmak için ilk isteği yaptığımızda aşağıdaki gibi bir durumla karşılaşıyoruz.


Bu aşamada eğer sunucu anahtarının parmak izini bilmiyorsak onaylayabileceğimiz bir şey de yok demektir. İlk aşamada "8iz5L6iZxKJ6YONmad4oMbC+m/+vI9vx5C5f+qTTGDc" gibi bir ifadenin ezberlenmesi imkansız gibi görünse de yapılamaz değil ama oldukça zor olduğunu kabul edelim.

Randomart kullanmak

Sunucunun anahtarının parmak izi yerine ondan üretilmiş bir konsol görselini akılda tutmak daha kolay bir seçenek. Eğer ssh'ı "-o VisualHostKey=yes" parametresiyle kullanırsak aşağıdaki gibi bir görsel görüp onu onaylayabiliriz:


Hem sunucu anahtarının parmak izi hem de ondan oluşturulan bu görsel tek yönlü fonksiyonlar kullanılarak üretildiklerinden tamamen aynısı değil de çok küçük (mesela tek karakterlik) bir farkla üretilemezler. Yani tamamını hatırlamasak bile genel olarak aklımızda tutarak bile sertifikayı onaylayabiliriz aslında.

DNS kullanarak

Sunucu anahtarının parmak izinin doğruluğunu bizim yerimize onaylayabilecek bir mekanizma olması işimizi çok kolaylaşmaz mıydı? Sertifikaları kendimiz oluşturduğumuz için bir CA'dan yardım alamıyoruz ama SSH bağlantısını makine adıyla yapıyorsak mecburen kullanmak zorunda olduğumuz DNS sunucuları burada imdadımıza yetişiyor. Makine adına karşılık gelen IP adresini nasıl DNS sunucusuna sorabiliyorsak aynı şekilde sunucu anahtarının parmak izini de sorabiliriz. Bu işlemi de "-o VerifyHostKeyDNS=yes" parametresiyle yapıyoruz. Eğer sunucumuzla ilgili böyle bir DNS kaydı girilmişse aşağıdaki gibi bir cevap alırız sunucudan:


DNS sunucusuna eklenecek tek satırlık bir girdi ile kullanıcılarımıza bu imkanı sunabilecekken neden kullanılmıyor bilemiyorum doğrusu. Belki bu yazıyı okuduktan sonra siz kullanırsınız ;)

Bu yöntemi kullanırken DNS sorgularının güvenilir bir yöntemle gönderilip alınmadığını aklımızdan çıkarmamamız gerekir. DNSSEC ve DNSCrypt çok daha yaygın kullanılması gereken protokoller ama maalesef neredeyse hiç kullanılmıyorlar. 

6 Mayıs 2017 Cumartesi

HTTPS nasıl çalışıyor?

HTTPS kullandığımızda internet trafiğimizin şifrelendiğini biliyoruz. Gizlilik, mahremiyet gibi bizim için çok önemli olan konularda güvendiğimiz bu protokolün nasıl çalıştığını kısaca açıklamak istiyorum.

Aslında HTTPS standart HTTP protokolünün TLS şifrelemesi ile kaplanması anlamına geliyor. Gönderip aldığınız veriyi araya giren birinin anlam çıkaramayacağı şekilde şifrelediği için değiştirilmesinin de önüne geçer. Bu sayede HTTPS kullanarak gönderdiğimiz kullanıcı adı ve parolamız, kredi kartı bilgilerimiz ve hatta ulaştığımız sayfanın adresi (https://en.wikipedia.org/wiki/HTTPS gibi) trafiğimizi dinleyenlerce görülemez. HTTPS ile temelde iki ana hedef gerçekleştirilir:

  • Ulaştığımız adresin gerçekte ulaşmaya çalıştığımız adres olduğundan emin olunması,
  • Sunucu ve istemci arasındaki trafiğin sadece bu iki taraf tarafından çözümlenebilecek şekilde şifrelenmesi.

Bu hedeflere ulaşabilmek için ilk yapılacak şey TLS bağlantısının kurulmasıdır. HTTP için kullandığımız istemci (çoğu durumda tarayıcımız) TLS bağlantısının kurulması için de aracılık eder. Taraflar aralarında aşağıdaki gibi anlaşırlar:

  • İstemci sunucuya bir "client hello" mesajı gönderir. Bu mesajda istemcinin desteklediği protokolün sürümü ve tercih ettiği kriptografik algoritmaların listesi bulunur.
  • İlk mesajı alan sunucu istemciye bir "server hello" mesajı gönderir. Bu mesajda ise istemciden aldığı listeden seçilen kriptografik algoritma ve oturum ID'si bulunur. Sunucu ayrıca sayısal sertifikasını da gönderir. Sunucunun istemciyi doğrulaması gereken durumlarda bir de "client certificate request" mesajı gönderilir ama biz bunun gerekmediğini varsayacağız.
  • Bu aşamadan sonrasına devam edilebilmesi için istemcinin sunucu sertifikasını onaylaması gerekir. Bir sunucu sertifikası aşağıdaki bilgileri içerir:
    • Sertifikanın sahibi,
    • Sertifikanın geçerli olduğu alan veya makine adı,
    • Sunucunun açık anahtarı,
    • Sertifikanın geçerli olduğu tarih aralığı,
    • Sertifikanın sayısal imzası.
  • Bu sertifika eğer istemcinin güvendiği bir Sertifika Otoritesi (CA) tarafından üretilmişse veya bu aşamada istemci sertifikayı güvenli bulursa sertifikanın onaylanması adımı geçilmiş olur. Aksi durumda iletişime devam edilmez. Tarayıcılarımızın bizi "bağlantı güvenli değil" diyerek uyardığı sayfaları gördüğümüz nokta burası oluyor.
  • Henüz sunucu ve istemci arasında yapılmasını planladığımız trafiğin başlamadığını unutmadan devam edelim. Bulunduğumuz durumda istemci sunucudan aldığı sertifikaya güvenebileceğini doğruladı ama sunucunun bu sertifikanın gerçek sahibi olduğunu henüz doğrulamış değil. Sunucu bu sertifikayı kendisiyle iletişime geçen herkese gönderdiği için bu sertifikayı ele geçişmiş herhangi bir taraf bizi yanıltıyor olabileceğinden bunu da doğrulaması gerekiyor. Bunun doğrulaması da sertifika içinde bulunan sunucunun açık anahtarıyla gerçekleştiriliyor. İstemci bu açık anahtarı kullanarak sunucuya bir veri gönderdiğinde ancak sunucu o açık anahtarla ilişkili gizli anahtara sahipse veriyi deşifreleyebilecektir. 
  • Artık istemci ve sunucu bu açık anahtarı ve bir anahtar değişim algoritmasını kullanarak oturum boyunca verileri şifreli gönderip almak için bir ortak anahtar oluşturabilirler [1].
  • Simetrik şifrelemede kullanılacak anahtar oluşturulduktan sonra istemci sunucuya bir "finished" mesajını bu anahtarla şifreleyerek gönderir. Bu noktadan sonra taraflar aralarında simetrik şifreleme algoritmalarından birini kullanırlar.
  • Mesajı alan sunucu da aynı anahtarla şifreleyerek "finished" mesajını istemciye iletir. Böylece her iki taraf da şifrelemede kullanacakları bir ortak anahtar üzerinde anlaşmış ve birbirlerini doğrulamış olurlar.
Bu kadar uğraşının sonunda hala istemci sunucuya bir http get isteği bile göndermiş değil. Sadece istemci ve sunucu arasında güvenli bir tünel oluşturuldu. Bu aşamadan sonra taraflar arasındaki iletişim standart HTTP'de olduğu gibi yapılacaktır ama arada gidip gelen bütün veri şifrelendiği için HTTP'de olduğu gibi üçüncü taraflara değil verinin görünmesi, ulaştığımız adresin bile görünmesi mümkün olmayacaktır.

[1] https://www.nyucel.com/2019/07/guvensiz-kanaldan-anahtar-degisimi.html

29 Nisan 2017 Cumartesi

Kaynak kodun açık olması güvenliği nasıl etkiler?

Özgür yazılımla yeni tanışmış olanların aklına ilk gelen sorulardan biri kaynak kodun açık olmasının bir güvenlik sorunu oluşturup oluşturmayacağı oluyor. Madem programın kaynak kodu ortada saldırganlar bunu saldırı için de kullanabilirler, bu da olumlu bir şey değil diye düşünüyor büyük kalabalıklar. Güvenlikle ilgili neredeyse bütün yazılımların kaynak kodlarının açık olması, kullandığımız bütün şifreleme araçlarının kodlarının ortada olması içinizi rahatlatmıyorsa birlikte bakalım durum gerçekten böyle mi?

Algoritmayı gizleyerek güvenlik sağlanamaz

Kriptografi dersinin başlangıcında anlatılan konu budur: bir algoritmayı gizleyerek onu daha güvenli hale getiremezsiniz. Konuyla ilgisi yok ama gizlenmesi gereken şey algoritma değil anahtar olmalıdır. Eğer güvenlik için tek dayanağınız algoritmanın gizliliği olursa o sızdırıldığında (saklanmak istenen her şey bir gün sızdırılacaktır) algoritmanın yenilenmesi gerekecektir. Bunun ne kadar büyük maliyetli bir iş olacağı düşünülünce açıklıktan başka alternatif olmadığı da görülecektir.

Hatasız yazılım olmaz!

Yazdığınız programın kaynak kodunu ister açın isterseniz kapalı tutun mutlaka hatalar/açıklar içerecektir. Yazılımı tek başınıza sizin yazmış olmanız veya bir grupla geliştirmiş olmanız bu gerçeği değiştirmeyecektir. Ne kadar kalabalık bir geliştirici topluluğunuz olursa hatalar da o kadar azalacaktır. Benzer şekilde test için projeye ayırabileceğiniz kaynak da hataların azaltılmasına olumlu katkıda bulunacaktır. Projenizin kaynak kodlarını geliştirici ekipten başka kimsenin görmesine izin vermezseniz bütün bu yük sizin üzerinizde olacaktır. Halbuki projenizi bir özgür yazılım veya açık kaynak lisansıyla lisanslarsanız kaynak kodlarınıza başkaları da bakıp hataları size bildirebilecek veya daha da iyisini yapıp iyileştirmeleri size gönderebilecektir. Eğer benim projeme kim bakacak diyorsanız kendi endişenizi kendiniz ortadan kaldırmışsınız demektir ama projenizi dışarıdan katkı almaya uygun bir şekilde lisanslarsanız projeye ayıracağınız bütçe ile bedelini ödeyemeyeceğiniz geliştiricilere ve testçilere kavuşabilirsiniz.

Özgür yazılımlara daha çok göz bakar

Yazılımın geliştiricisi değil de kullanıcısı iseniz daha çok kişi tarafından ortaklaşa geliştiriliyor olması ve daha fazla test edilmiş olması sizin için daha az hata barındıran bir yazılım anlamına gelecektir. Neden bir şirketin çalıştırabileceği sınırlı sayıda yazılım geliştiriciye güvenebilirken dünyanın dört bir tarafına dağılmış çok daha büyük kalabalıklara güvenmeyeceksiniz? Hangi şirket bir tarayıcı yaklaşık 5000 kişinin kod göndermesine, yani yazılımın kodlarını okumasına kaynak ayırabilir? Bunu ancak özgür yazılımın gücü sağlayabilir.

Yazılımların hataları çoğunlukla kod okuyarak bulunmaz

Bir projenin kaynak kodlarını okuyup hatasını bulmak tahmin edilenden çok daha zor bir iştir. Elbette yazılımların hataları, açıkları kodları da okunarak tespit edilebilir ama yukarıdaki örneğe bakarsanız yaklaşık 16 milyon satırlık bir projede bunun pek kolay bir iş olmayacağını tahmin edebilirsiniz. Peki yazılımların açıkları nasıl bulunuyor? Belirli koşullar altındaki davranışlarına bakılarak elbette. Neredeyse bütün GNU/Linux dağıtımlarının varsayılan olarak kullandığı kabuk olan bash'in 1989'dan bu yana içerdiği bir hata ancak 2014'de görülebildi. Eğer kodu okuyup açığı tespit etmek sanıldığı kadar kolay olsaydı bu 25 yıldan kısa sürerdi herhalde.

Özgür yazılımların açıkları çok hızlı kapatılabilir

Özgür yazılımlar kullanıcılarına yazılım üzerinde değişiklik yapma ve bu değişikliği dağıtma hakkı verdiklerinden bir yazılım için geçerli bir hata veya açık bulunduğunda onu mutlaka geliştiricinin düzeltmesi gerekmez. Yazılımın geliştiricisini veya ait olduğu firmayı beklemek zorunda kalmazsınız özgür yazılım kullanırken.

Yazılımın kaynak kodlarının açık olması elbette yukarıda saydığım avantajlar için yeterli değildir. Eğer kullanıcılar yazılımı istedikleri gibi çalıştıramıyorsa, değiştiremiyorsa, dağıtamıyorsa veya değiştirdiği halini dağıtamıyorsa yazılım bu getirilerden mahrum kalacaktır. Yani sadece kaynak kodun açık olmasından sihirli bir iyileştirme beklememek gerekir. Bu avantajları bize sağlayan şey özgür yazılımdır.

4 Nisan 2017 Salı

Üniversiteler eposta bayrağını nasıl kaybetti?

Üniversitelerin bilgi işlem daire başkanlıkları çoğunlukla kısıtlı personelle ama çok büyük özveriyle çalışan birimleridir. İşler yolunda giderken, yani internet bağlantısında bir problem olmadığında, ne yaptıkları pek anlaşılmaz ama en küçük kesintide hatırlanırlar. Üniversitelerin verdiği servisler çoğunlukla bu özverili personelin öğrenme isteğinden ve merakından kaynaklanır. Amirlerinin çoğunlukla adını bile duymadıkları servisleri kendi kurumlarında etkinleştirmek için hiç karşılığını almadıkları fazla mesailer harcarlar. ULAKBİM'in bilgi işlem personellerini bir araya getirdiği etkinliklerde heyecanla servisleri nasıl ayağa kaldırdığını anlatan çok sunum dinlemiş biri olarak yazıyorum bunları.

On yıl kadar önce neredeyse bütün üniversiteler diğer bütün servisleri gibi kendi eposta servislerini de kendi sunucularında tutarlardı. Zaten çok kısıtlı kaynaklarla çalışan bilgi işlem daire başkanlıkları çoğunlukla GNU/Linux kullanarak verirdi bu hizmeti. Kendi yetişmiş personeli olmasa bile civardaki üniversitelerdeki meslektaşlarından destek alarak bir kere kurulunca kuruma yetecek bir düzen kurulmuş olurdu.

Yukarıdaki cümleler hep geçmiş zamanlı çünkü bugün tablo çok büyük ölçüde değişmiş durumda. Aşağıda ayrıntılarını okuyacağınız gibi üniversiteler bu servisi büyük oranda artık kendileri vermiyorlar. Bir servisi vermek demek onun ayakta durması ve geliştirilmesi sırasında öğrenilecek şeylerle personelin kendisini geliştirmesi de demek olduğundan bilgi işlem daire başkanlıkları bu görevi başkalarına teslim ederken kendilerini de çok şeyden mahrum bırakıyorlar. Durum gerçekten bahsettiğim kadar vahim mi birlikte bakalım.


Bugün itibariyle Yüksek Öğretim Kurulu Başkanlığının bilgilerine göre 183 üniversitemiz var.
  • Bunların 7 tanesinin ya alan adı bile belli değil ya da henüz eposta servisi vermiyor. 
  • 51 üniversite personelinin elektronik postalarını Google'a devretmiş durumda. DNS sunucularına girilen bir kayıtla bütün eposta yönetimi işini Google'a teslim ederek bir odadan diğerine gönderilen epostanın kendi kampüslerindeki sunucuya değil California'ya gidip geri dönmesine neden olmuş durumdalar. Mesafeyi gözünüzde daha iyi canlandırabilmeniz için Mardin'den gönderilen bir epostanın gidip geldiği yolun bir ekran görüntüsü koyuyorum. Bu bağlantı için ödenen bedeli hepimizin vergileriyle yaptığımızı hatırlatmama eminim gerek yoktur.

  • 38 üniversite Microsoft'un çevrimiçi Outlook servisini kullanıyor. Bunu yapan üniversiteler de yine epostaları üzerindeki bütün kontrolü kaybetmiş durumdalar. Aşağıdaki ekran görüntüsü de Şırnak'tan gönderilen epostaların iletim merkezini gösteriyor.

  • 1 üniversite epostalarını Yandex'e, 1'i de Superonline'a teslim etmiş durumda.
  • Epostalarını bulut servislerine vermemiş üniversitelerden 29 tanesi Microsoft işletim sistemleri kullanarak bu servisi kendisi işletiyor.
  • 1 üniversite IBM AIX kullanırken, 2 üniversite de Oracle ile eposta servisini ayakta tutuyor.
  • 4 üniversite eposta servisini FreeBSD/OpenBSD kullanarak kendi sunucularında barındırıyor.
  • Sadece 49 üniversite bu servisi bir GNU/Linux dağıtımı kullanarak sürdürüyor. Bunların 18'inin sayfasından zimbra kullandıkları açıkça görülebiliyor.
Üniversitelerin özgür yazılımlar kullanarak kolayca yönetebilecekleri bu servisi yurtdışındaki bulut servislerine (başkasının bilgisayarına) teslim etmelerinin nedenlerini ve bunun yol açtığı şeyleri de bir sonraki yazıya bırakmadan önce bu bilgilere nasıl ulaştığımı yazayım kısaca: YÖK'ün sayfasından üniversitelerin alan adlarını öğrendikten sonra bir çok alternatifin arasından mxtoolbox'tan eposta sunucusu kaydını sorgulamak için 'MX Lookup' seçeneği kullanılabilir. Bununla google ve MS outlook kullananlar hemen görülebilirken kalanlar için üniversite sayfalarına girip 'eposta' bağlantılarını takip etmek yeterli olacaktır.

28 Şubat 2017 Salı

Son kullanıcı için özgür yazılım neden önemli? -2-

Meraklısı için bu serinin ilk yazısı burada.

Neredeyse herkesin evinde üzerinde kamera ve mikrofon bulunan, internete bağlanabilen televizyonların olduğu bir dönemdeyiz. Mikrofonlar sayesinde televizyonları kumanda kullanmadan yönetmek mümkün olabilirken, kameralarla görüntülü görüşmeler dev ekranlardan gerçekleştirilebiliyor. Hayatı kolaylaştıran gelişmeler gibi görünen bu "olanaklar" bazılarımıza birer 1984 sahnesi gibi görünse de yaşantımızın birer parçası oldular bile.

Üzerinde internete bağlanabilen ve uygulamalar kurulabilen bir işletim sistemi bulunan, kamera ve mikrofonu kontrol edebilen televizyonların aslında birer bilgisayar olduğu gerçeği son kullanıcının genellikle gözünden kaçıyor. Bu televizyonların işletim sistemleri ve üzerinde koşan yazılımlar da çoğunlukla sahipli, kapalı kaynak kodlu yazılımlar oluyor. Bir kaç örnekle bu yazılımların özgür yazılım olup olmamasının son kullanıcıyı nasıl etkilediğine bakalım.



Yaklaşık iki yıl önce Samsung televizyonların kullanıcıların seslerini kaydetmesiyle ilgili yazılar okumuştuk. Samsung bunun bir güvenlik sızıntısı değil bir özellik olduğunu ve kapatılabildiğini söylese de ses kaydetmeyi kontrol eden yazılım da kapalı kaynak kodlu bir yazılım olduğundan kaydetme işlemini gerçekten kapatıp kapatmadığının tek garantisi Samsung firması elbette. Bu televizyonlardaki yazılımlar özgür yazılım olsaydı kullanıcılar sadece Samsung'a güvenmek yerine onun kodlarına bakabilecek binlerce yazılım geliştiriciye güvenebileceklerdi.

Daha bugün çıkan bir haberde de internete bağlanabilen oyuncak ayıların sahiplerinin diğer bilgilerinin yanı sıra kaydettikleri seslerin de ele geçirildiği yazıyordu.

Kullandığımız diğer cihazlar da üzerinde sesli komutlara cevap veren bir çok ajan çalıştırıyor. Amazon tabletlerde Alexa, Apple üründe bulunan Siri bunların en yaygın örnekleri. Her iki uygulamanın da sesleri dinleyip ona cevap verme özellikleri kapatılabiliyor. Elbette gerçekten kapattıklarına inanırsanız. Bu ürünler de kapalı kaynak kodlu olduklarından kapandı denilen özelliklerin gerçekten kapandığına inanmak için tek dayanağınız karşınıza çıkan kapandı mesajı. Apple da, Amazon da garantisi benim diyor. Televizyonun satın alındığı yer böyle dese; yani bozulursa bana getir, marka garantisi yok ama garantisi benim dese onu almayacak insanlar dünyanın bir ucundaki şirketlere güvenip bu cihazları kullanıyorlar.

Bahsettiğim cihazlar üzerinde koşan yazılımlar özgür yazılım olsaydı elbette onları satın alanların çok büyük çoğunluğu o yazılımların kaynak kodunu açıp bakamayacaktı ama zaten ihtiyacımız olan da bu değil. Yazılım özgür olduğunda (hatta açık kaynak kodlu olduğunda bile) üretici haricindeki insanların kontrolüne açık olacağından güvenebileceğimiz çok geniş bir kitle olacaktır. Böyle olduğunda ise ne evinizdeki televizyon sizden habersiz sesinizi kaydedebilir ne de tabletiniz artık seni dinlemiyorum dediğinde açık kalmaya devam edebilir.

Elbette yine de güvenlik açıkları olacaktır ama bunları farketme ve düzeltme konusundaki tek umudumuz bir ticari firma olmaktan çıkacaktır. Ayrıca yukarıda bahsedilenlerin güvenlik açığı değil kasıtlı yapılan şeyler olduğunu aklımızdan çıkartmayalım.

Özgür yazılım konuya sadece mahremiyeti açısından yaklaşan son kullanıcılar için bile bu derece önemli.

24 Şubat 2017 Cuma

SHA1'in kırılması ne anlama geliyor?

İnternette güvenlik, gizlilik, bütünlük gibi konular çoğunlukla bizim üzerinde pek düşünmediğimiz ve kullandığımız yazılımlar tarafından halledilen konular arasında yer alıyor. Örneğin internette bankacılık işlemi yaparken bağlandığımız sunucu gerçekten bağlanmak istediğimiz sunucu mu, gönderip aldığımız verileri araya giren birileri ele geçirip ondan bir anlam çıkartabiliyor mu diye düşünmüyoruz. Bu işlemleri tarayıcımız bizim yerimize yapıyor. O da verilerin şifrelenmesi ve sunucuların doğrulanması gibi işlemleri kriptografik protokolleri kullanarak gerçekleştiriyor. Benzer şekilde kullandığınız programlar güncellemeleri indirdikten sonra onların bozulmadan indiğini kontrol etmek için benzer kriptografik araçları arka planda çalıştırıyorlar.

Kriptografinin diğer kullanım alanlarının yanı sıra veri bütünlüğünün kontrol edilmesi de hepimiz için büyük önem taşıyor. Bu işlem için dosya içeriklerini kontrol etmek yerine onların tek yönlü fonksiyonlar kullanılarak özetleri çıkartılıyor ve bu özetler karşılaştırılarak dosyalar bozulmaya uğramış mı veya araya giren biri tarafından değiştirilmiş mi anlaşılabiliyor. Tek yönlü fonksiyonlar derken de her x için f(x)'in benzersiz bir şekilde ve kolayca hesaplanabildiği ama f(x) değeri verildiğinde ona karşılık gelen x değerinin hesaplanamadığı (ya da hesaplanması çok uzun süren) fonksiyonları kastediyoruz. Elbette her dosya için benzersiz bir özet üretme işinin de sınırları var. Ne kadar uzun özet üretilirse özetlerin benzersiz olması o kadar mümkün hale geliyor ama bu da (diğer konuları işin içine katmadan söylemek gerekirse) özet alma ve onu doğrulama işleminin süresini uzatıyor.

Farklı uzunluklarda özetler üreten md5, sha1, sha256 ve sha512 gibi algoritmalar mevcut. Bunların bir dosya için ürettikleri özetlere şöyle örnekler vermek mümkün. Bu adresteki pdf dosyasını indirip siz de aynı sonuçları üretebilirsiniz.

MD5SUM: ee4aa52b139d925f8d8884402b0a750c
SHA1SUM: 38762cf7f55934b34d179ae6a4c80cadccbb7f0a
SHA256SUM: 2bb787a73e37352f92383abe7e2902936d1059ad9f1ba6daaa9c1e58ee6970d0
SHA512SUM: 3c19b2cbcf72f7f5b252ea31677b8f2323d6119e49bcc0fb55931d00132385f1e749bb24cbd68c04ac826ae8421802825d3587fe185abf709669bb9693f6b416

Özetlerin boyutlarındaki farklılık dikkatinizi çekmiş olmalı. Bu özetlerle yapılmaya çalışılan şeyin farklı dosyalar için farklı (benzersiz) özetler üretmek olduğunu yukarıda söylemiştim. MD5 bu yazıda bahsi geçen algoritmalar arasında en kısa özeti üreten algoritma olduğundan farklı iki dosyanın özetlerinin çakışması olasılığı en yüksek olan algoritma da aynı zamanda. İlk akla gelen şey madem en uzun özet sha512 ile üretilebiliyor her yerde o kullanılsın şeklinde olsa da bir dosyanın md5 özetini almakla sha512 özetini almak arasında süre olarak gerçekten çok büyük farklar var. Küçük dosyalarda özet çıkartma süresi farkedilemeyecek kadar yakın olsa da dosya boyutu büyüdükçe (hatta disk kalıplarının özetlerinin alındığı düşünüldüğünde) aradaki fark çok büyük oluyor.

SHA1 için 2005 yılından bu yana saldırılar yapılabildiği bilinse de http://shattered.it/ adresinde anlatılan tipte güçlü bir saldırı imkanı olmadığı düşünülerek hala çok yaygın olarak kullanılıyordu. Sayfaya girdiğinizde görebileceğiniz gibi sha1 özetleri aynı olacak şekilde birbirinden farklı iki pdf dosyası üretilmiş ve bunun başka dosyalar için de nasıl gerçeklenebileceği konusunda ayrıntılı bilgiler verilmiş durumda. Burada ilgi çekebilecek noktalardan biri de aynı sha1 özetine sahip iki dosyanın md5 özetlerinin hala farklı olması. Hem md5, hem de sha1 özeti aynı olacak şekilde farklı dosyalar üretmek elbette bambaşka bir konu.

SHA1 dosya bütünlüğünün kontrolü yanı sıra yazılım depolarının ve güncellemelerinin kontrolünden tutun da kredi kartı bilgilerinin transferine kadar pek çok konuda çok yaygın olarak kullanıldığından yazılım geliştiricileri ve sistem yöneticilerini ilgilendiren çok önemli gelişme bu. Yukarıda da gördüğümüz gibi sha1'i kullanmayacak olsak da alternatifsiz değiliz; kullanabileceğimiz başka algoritmalar var. Olmasaydı bile yenilerini yazmak imkanı her zaman mevcut.

Son kullanıcıların ise kullandıkları yazılımları güncel tutmaktan başka yapabilecekleri bir şey yok.

Düzenleme: Yazıda yaptığım ifade hatalarını düzeltmeme yardımcı olan Kadir Altan'a teşekkür ederim.

15 Şubat 2013 Cuma

Saldırı analizi için bir çerçeve: NfQuery

Bazı projeler üzerinde çok çalışıldığını ama duyurmak için neredeyse hiçbir şey yapılmadığını görüyorum. Geliştirciler yaptıkları işlerinden bahsetmeyi de bir tür belgeleme olarak gördüklerinden projelerini duyurmak için pek az çaba gösteriyorlar. Elbette bu kendi bilecekleri bir iş ama geliştirilen proje kişisel kullanım için olmadığında bundan haberdar olmak bazen mümkün olmayabiliyor.

Geliştiricilerinin hepsi arkadaşlarım ve öğrencilerim olan NfQuery'den bahsetmek istiyorum biraz. GEANT3 projesi çerçevesinde ULAKBİM ekibinden, her işin üstesinden gelebilen, Murat Soysal, Emre Yüce ve Serdar Yiğit tarafından geliştirilmesine başlanan bir yazılım NfQuery. Şimdiki geliştiricileri ise öğrencilerim Serhat Rıfat Demircan ve Ahmet Can Kepenek. Serhat ve Ahmet yaz stajlarını ULAKBİM'de yaptıktan sonra bitirme projeleri olarak benim danışmanlığımda NfQuery'yi geliştirmeye devam ediyorlar.

NfQuery sorgu sunucusu ULAKBİM'de ve ona bağlı eklentiler İtalya'da GARR'da ve Çek Cumhuriyetinde CESNET'te çalışıyor. Yapılan çalışma bu yıl Hollanda'da TNC2013 Konferansında sunulacak.

Yurt dışı akademik ağlarda çok ilgi gören NfQuery, NfSen ve NfDump araçları ve bu araçların güçlü özellikleri üzerine inşa edilmiş, çoklu alan ortamlarında güvenlik uyarıları veren bir sistem.  Nfdump netflow verisini toplayan ve analiz eden araçlardan oluşuyor. Nfsen Nfdump araçlarını web arayüzü ile kullanmak ve netflow verisini grafiklerle göstermek üzere geliştirildi. Tutulan flow verisi Nfsen filtreleri ve eklentiler ile analiz edilebiliyor. Flow verisi üzerindeki anormallikleri algılayan ve tehditleri tespit eden bir çok Nfsen eklentisi mevcut. Aşağıda NfQuery’nin bileşenlerinin bir şeması var.



Çoklu alan ağlarında omurga seviyesindeki tüm akış verisinin toplanıp analiz edilmesi etkili olmayacağından NfQuery tehditleri algılamak için yeni bir yaklaşım getirerek bir sorgu sunucusuna bağlı her bir organizasyonun veya alanın Nfsen eklentisinde kullanılacak faydalı sorgular üretiyor (her sorgu bir Nfsen filtresi). Sorgular plugin vasıtası ile sorgu sunucusundan alınarak toplanmış akış verisi üzerinde çalıştırılıyor. Bu çalıştırmalar sonucunda Nfsen eklentisi tehdit ve atak bilgisini elde ediyor ve atak bilgisini sorgu sunucusuna yolluyor. Oluşturulan olay raporunda tehditi hangi sorgunun tespit ettiği, etkilenen alanlar ve istatistik bilgileri yer alıyor. Eklenti bu olay raporunu otomatik olarak oluşturarak sorgu sunucusuna yolluyor. Sorgu sunucusu da gelen olay raporuna göre uyarılar oluşturularak bu uyarılar ilgili alanlar ile ilişkilendiriliyor.

NfQuery hakkında ayrıntılı bilgiyi bu adreste bulmak mümkün. İçinde olduğumuz her şey gibi NfQuery de bir özgür yazılım, kodları burada. Her özgür yazılım projesinde olduğu gibi katkıcılar memnuniyetle karşılanıyorlar.

Son iki yıldır Akademik Bilişim Konferansı öncesinde python kursu veren Ahmet ve Serhat eminim bundan sonra da yapacakları işlerle özgür yazılım camiasının aktif birer üyesi olarak kendilerinden sonra gelen arkadaşlarına örnek olmaya devam edecekler.

1 Aralık 2012 Cumartesi

Akademik Bilişim 2013 Konferans öncesi kursları

Her yıl olduğu gibi bu yıl da Akademik Bilişim Konferansı öncesinde 4 gün süren kurslar düzenlenecek. Konferans öncesinde, 19-22 ocak tarihlerinde 4 gün bir çok konuda yoğun,makine başında kurslar var. Kurslar üniversite ve kamu çalışanlarını hedeflemekle birlikte her yurttaşa açıktır ve ücretsizdir. Kursiyerler ve konferans katılımcıları üniversite yurtlarında makul ücretlerle kalabilecekler. Kursiyerlere mümkünse kendi bilgisayarlarını getirmelerini ve hazırlıklı gelmelerini öneriyoruz.

Kurs listesi şöyle:

  • Linux'a Giriş
  • Güvenlik
  • PostgreSQL
  • Python
  • Android
  • Sanallaştırma
  • Bilimsel Hesaplama
  • PHP'ye Giriş
  • E-posta Sistemleri
  • Clojure-Lisp
  • Ağ Yönetimi
  • Yazılım için özgür araçlar
  • LibreOffice/OpenOffice
Kurs kayıtları 15 Aralıkta açılacaktır.

30 Mart 2010 Salı

OpenSSL 1.0.0


11 yıldan uzun süren bir geliştirme süresi sonunda OpenSSL'in 1.0.0 sürümü duyuruldu. 1998'deki ilk sürümü de 0.9.1c olan OpenSSL bazı kısıtlamalarla ticari ve ticari olmayan amaçlar için (iki farklı lisans ile) kullanılabiliyor. FSF'nin de kullanılmasında bir sakınca görmediğini (debian hariç pek az kimse ilgilense de) yazmakta fayda var.

Kararlı sürümünü uzun sürede çıkaran yazılım denildiğinde aklımıza eskiden Wine geliyordu, artık OpenSSL de var. Resmi geliştirici sayısının 11 olduğunu düşününce küçük bir ekiple verilecek desteğin bile ne kadar anlamlı olacağı görülebilir. Sonradan "önceden söylemiştik" diye link verebilmek için buraya not düşeyim.

Henüz resmi yansılar arasında listelenmese bile (az önce yazdım yansı olmak için) bir OpenSSL yansısı da şurada var.

23 Mart 2010 Salı

Hay ananızın kızlık soyadını

Aynı apartmanda başka bir daireye taşındığımdan ev telefonumu ve adsl bağlantımı naklettirmeye gittim bugün. Bu kadar basit bir işi telefonla veya internetten yapamıyor oluşum yeterince saçma iken bir de nüfus kağıdınızın fotokopisini istiyorlar bu talepte bulunduğunuzda. Hatta daha saçması karşınızda oturan eleman ananızın kızlık soyadını soruyor size. Onu da elindeki forma yazıp yine masasının üzerine bırakıyor. Sizden de bu formu gören herkesin iyi niyetli olacağına inanmanızı bekliyorlar. Sanki kimliğimi görmeleri ya da kendi telefon numaramdan yapacağım aramaya güvenmeleri daha manalı değilmiş gibi (internetten adsl kullanıcı adı ve parolamla yapacağım başvurudan çoktan vazgeçtim zaten).

Birinin çıkıp bu akıllılara simetrik şifreleme yapıldığında kullandığınız anahtarın gizliliğinin en kritik nokta olduğunu söylemesi lazım.

12 Kasım 2008 Çarşamba

Buna rağmen devam edelim mi?


Herkes ssl sertifikasını gidip VeriSign'dan alsın demiyorum ama en azından sertifikayı oluştururken kurumun bilgileri doğru verilse, sertifika süresi 3,5 sene geçmemiş olsa daha iyi olmaz mı?

Şimdi sayfanın linkini versem kötü adam ben olurum. En iyisi cesareti olanlar devam etsin diyeyim.

Yazan, Yöneten ve Oynayan aynı kişiyse o tiyatroya gitmeyin

Elbette her genelleme gibi bunun da bazı istisnaları var ama istisna olmadan genelleme zaten yapılamaz.   Oldukça uzun zamandır yerli ve yab...