mICQ - Bir Garip Hikaye

0
m1a2
mICQ talihsiz bir programdır. Matthew D. Smith tarafından yazılan program, bildigim kadarıyla GNU/Linux'un ilk ICQ istemcisidir. Matthew D. Smith'in 2001`de bir trafik kazasında vefat etmesi mICQ'nun sonu anlamına geliyordu. Fakat programın sadık kullanıcıları buna müsaade etmedi ve yeni bir geliştirici: Rüdiger Kuhlmann proje'nin sorumluluğunu alarak mICQ'yu kaldığı yerden geliştirmeye devam etti.
(ICQ protokolünün yenilenmesi böyle bir gelişmeyi daha da önemli kılıyor.) Her şey iyiye giderken programın Debian paketinden sorumlu olan Martin Loschwitz'in (aka madkiss) debian-devel listesine gönderdiği 13 Şubat tarihli bir mesajla mICQ`nun makus talihi bir kez daha tescillendi. Madkiss son derece tuhaf bir durumu raporluyordu. Programda şöyle bir `obfuscated code´ parçası var:
const char *parts[] = {
"

eX0282nZlv$qf#vpjmd#wkf#nJ@R#sb`hbdf#sqlujgfg#az",
"#Gfajbm-#Pjm`f#wkf#Gfajbm#nbjmwbjmfq#jp#f{wqfnfoz#",
"vm`llsfqbwjuf/#zlv$qf#bguj`fg#wl#vpf#wkf#afwwfq#rv",
"bojwz#sb`hbdf#eqln#nj`r-lqd-#Pjnsoz#bgg#wkf#eloolt",
"jmd#ojmf#wl#zlvq#,fw`,bsw,plvq`fp-ojpw#wl#wqb`h#pw",
"baof#ufqpjlmp#le#nJ@R9eX3n
gfa#kwws9,,ttt-nj`r-lqd",
",gfajbm#pwbaof#nbjm
eX0282nWl#wqb`h#@UP#pmbspklwp/",
"#bgg9eX3n
gfa#kwws9,,ttt-nj`r-lqd,gfajbm#wfpwjmd#n",
"bjm
eX0282nPlvq`f#sb`hbdfp#nbz#af#qfwqjfufg#pjnjob",
"qoz-eX3n

"
};
Bu kod sadece Debian'a özel olarak yaklaşık şunu üretiyor:
    long Feb11th = 1045000000;
    if (strcmp(me, "madkiss") == 0 && time(NULL) > Feb11th) {
		printf("
You're using the mICQ package provided by Debian.  Since the
Debian maintainer is extremely uncooperative, you're adviced to use the better
quality package from micq.org. Simply add the following line to your
/etc/apt/sources.list to track stable versions of mICQ:
deb http://www.micq.org/debian stable main
To track CVS snapshots, add:
deb http://www.micq.org/debian testing main
Source packages may be retrieved similarly.");
		exit(99);
    }
Yani program `madkiss´ tarafından hazırlanan bir Debian paketinden çıkmışsa kullanıcıyı uyararak sonlanıyor: "Debian tarafından hazırlanmış paketle gelen bir mICQ versiyonu kullanıyorsunuz. Debian geliştiricisi, işbirliğinden olağanüstü uzak bir kişi olduğundan, micq.org'dan temin edeceğiniz daha kaliteli bir paketi kullanmanız salık verilir..."

Madkiss paketlediği programın kendisiyle kafa geçmesini affedemezdi :) Nitekim mesajında, mICQ'nun Debian dağıtımından çıkarılmasını ve normalde özgür olmayan programlar için kullanılan `paketlemesi mümkün değil´ etiketiyle damgalanmasını talep ediyordu.

Tahmin edileceği gibi kıyamet koptu. Çok sayıda Debian geliştiricisi olaya tepki göstererek bunun dağıtıma girmiş bir `trojan´ olduğunu ve upstream author Rüdiger´in güvenilmez birisi olarak ifşa edilmesi gerektiğini belirtti. (Tartışmalar için thread`i takip ediniz.)
`Bu adamın bir dahaki sefere rm -rf *´ yapmayacağını nereden bilelim?`

`mICQ`yu root olarak güvenli şekilde çalıştırabilir misiniz artık?´


Tartışmaya katılanlardan bir kısmı ise `hırsızın hiç mi suçu yok?´ vaziyetini alarak Rüdiger´e tepki göstermek yerine bu arkadaşı böyle bir davranışa sevkeden asıl unsura yani madkiss´in paket geliştiriciliğinde gösterdiği olumsuz tavra dikkat çekiyor. Mesela bir tanesi (mplayer geliştiricisi) `paketlemesi mümkün değil´ talebinin mICQ icin değil madkiss icin geçerli olduğunu belirtmekte :)

Sonuca gelince... Dağıtım yöneticisi Anthony Towns (aka aj) olaya soğukkanlılıkla el attı. İlgili kodu trojan'dan ziyade `paskalya yumurtası´ olarak değerlendiren Towns, mICQ`nun diskalifiye edilmesindense, madkiss´in paket sorumluluğunu bırakmasının yeterli bir tepki olacağı yönünde görüş bildirdi. Rüdiger`in `obfuscated code´u kaynaktan çıkarmasıyla sorun şimdilik halledilmiş gözüküyor. Tabii Rüdiger`in davranışını cracker´lık olarak yorumlayan Debian geliştiricilerinin vicdanında mICQ Debian'daki ömrünü doldurmuş durumda :) İflah olmaz bir konsol düşkünü olarak ickle'ı terkedip mICQ`ya geçiş planları yapan bendeniz ise planlarımı kesinlikle ertelemedim. Bu kararımın Rüdiger'in savunmasıyla da bir ilgisi yok.

Kıssadan hisse: Siz siz olun, değil Redhat veya bunu baz alan dağıtımlar, çok güvendiğiniz bir dağıtımı kullanırken dahi root olarak IRC ve/veya ICQ seansları icra etmeyin ;)

Görüşler

0
SHiBuMi
Bu olay open-source uygulamaların da tek başına kaynak kodlarının açık olmasının güvenli olmaları için yeterli olmadığına güzel bir örnek olmuş. Sonuç olarak bu paskalya yumurtası kullanıcıya çıktı verdiğinden kolay bulunabilir, peki bizden habersiz home klasörümüzdeki dosyaları internetteki belirsiz bir noktaya gönderen benzer bir kod da rahatlıkla tespit edilebilir mi? Sanmam.
0
conan
> peki bizden habersiz home klasörümüzdeki dosyaları internetteki belirsiz bir noktaya gönderen benzer bir kod da rahatlıkla tespit edilebilir mi?

Onu da microsoft`a sormak lazim...

http://www.theregister.co.uk/content/4/24152.html
http://www.hevanet.com/peace/microsoft.htm
http://www.wired.com/news/technology/0,1282,21577,00.html
http://www.wired.com/news/business/0,1367,21490,00.html
http://techupdate.zdnet.com/techupdate/stories/main/0,14179,2814881,00.html
vs...vs...
0
conan
blizzard'a da sorabiliriz tabii ki :P
http://www.cdmag.com/articles/011/112/blizzard_sued.html
0
Maverick
Saçma. Olay zaten tespit edilmis, ne gibi bir yetersizlikten bahsediyorsunuz?
Son kullanici sadece indirdigi paketlerin md5 sum`larini kontrol ederek virus, trojan ve arka kapilara karsi windows`dakine göre onlarca kat daha güvenli sayilabilir bence..
0
FZ
Tüm pratikler bir yana açık kaynak kodlu bir yazılımı incelemek, kaynak kodu ile gelmeyen bir yazılımı incelemeye kıyasla daha kolay değil mi? Yani bu teorik bir şey. Tabii ki bir programı incelemek belli bir uzmanlık, bilgi ve deneyim gerektiren bir iştir ancak açık kaynak kodlu yazılımlar `reverse engineering´ gerektirmediklerinden ötürü incelenmeye kapalı yazılımlara kıyasla çok daha `açık´ değil midirler?

Burada sanırım çok basit bir mantık hatası söz konusu, matematikteki gerek ve yeter şart durumu gibi. Yani kaynak kodun açık ve hemen erişilebilir olması güvenlik için elbette ki yeter şart değildir ancak doğrudan analiz ve olası şüpheli durumların tespiti için gerek şarttır.

Güvenliği ön planda tutan bir kurum hangisini tercih eder: içini görüp inceleyebileceği bir yazılımı mı yoksa içini görmekte kendisine kök söktürecek kadar kapalı ve binary halde kendisine sunulmuş bir yazılımı mı?

Yani kısaca demem o ki, neyi tartışıyoruz ki? Bazı şeyler yeterince `açık´ değil mi?
0
Maverick
>... Tabii ki bir programı incelemek belli bir uzmanlık, bilgi ve deneyim gerektiren bir iştir ...

Bu işi çoğu paket için zaten kullandığınız dağıtım üstleniyor.
0
anonim
Valla bu yazının dediğin şeye güzel bir örnek oluşturup oluşturmadığını
bilemeyeceğim ama kesin bir şey var ki senin şu skolastik yorumun `ak deseler
de kara desem, öküzün altında buzağı arasam` tekerlemesine güzel bir örnek
olmuş :) (Bu terkibin bütün hakları bana aittir, kaynağını aramayın).

En önemli prensipleri `kullanıcıya karşı şeffaflık` ve `sadece özgür yazılım` olan bir dağıtım da senin güvenlik endişelerini karşılamıyorsa -ve tabii amaç buysa- durum vahim demektir. Bak adamlar herşeyi açık açık tartışmışlar. Üstelik bir ilginç öykü babında naklettiğim bu olayda tarafların tamamı safiyane Debian geliştiricisi (mICQ programcısı da buna dahil, ev sayfasını incelenecek olursa bu görülebilir) ve tartışılan basit bir kişisel gıcıklık mevzuu olmasına rağmen arkadaşların bir kısmı bu paskalya yumurtasını Debian`ın ilkeleri bağlamında fazlasıyla ciddiye almışlar.

--
m1a2
0
SHiBuMi
Biri kalkmış open-source uygulamasının içine hem de o paketin güvenliğinden sorumlu olan kişiyle dalga geçen bir not bırakmış, paketçi de bunu bir güzel paketleyip cümle aleme dağıtmış. FZ'nin dediği gibi, bence de durum oldukça 'açık'.
0
redial
m$ Excell''in icinden ''doom'' ciktigi gunleri cabuk unuttuk sanirim :)

Ve bunun sadece bizim gorebildigimiz oldugunu ve cok sik unutuyor olmaliyiz...

Sadece mICQ degil, baska paketlerde de benzer ve hatta daha ciddi problemler olabilir, ama bunu tutupta, aha size open mantigina baglamak pekte mantik barindirmayan bir tutum...

0
redial
Bir ustteki mesaji yanlislikla (acemilikle aslinda) kendisinden bir onceki yorumun cevap zincirine eklemem gerekiyordu, ozurdilerim :)
0
FZ
Meraklısına Not: İstiklal Caddesi´ndeki Robinson Crusoe kitabevinde sadece Apple Mac üzerindeki programlardaki gizli şirinlikleri (Easter Egg - Paskalya Yumurtası) anlatan küçük ve şirin bir kitap vardı. Hala orada mıdır, satılmış mıdır bilemem. Güzel bir kitaptı ve epey şaşırtıcı. Meğer millet ne kadar hevesli imiş programın içine, program ile alakasız şeyler gömmeye :)

Buradan yola çıkarak optimizasyon ile ilgili bir kitaba şöyle bir satır ekleyebilir miyiz:

Adım 12312 - Programdaki tüm paskalya yumurtalarını çıkarın.
0
Nightwalker
Olayı kimse bakın bakın open source ne kadarda güvensizmiş. Şeklinde yorumlamıyor. Bu olay open-source uygulamaların da tek başına kaynak kodlarının açık olmasının güvenli olmaları için yeterli olmadığına güzel bir örnek olmuş. cümlesinde anlatılmak istenen open source kullanınıyorum öyle ise güvendeyim mantığının yanlış oluşudur. Yani bu olayın açık kod kapalı kod rekabeti ile bir ilgisi yok. Sadece güvenlik süreçlerinin her ortamda uygulanması gerektiğini gösteriyor.
0
SHiBuMi
Budur.
Görüş belirtmek için giriş yapın...

İlgili Yazılar

Yeni Zelanda Seçimler için Seçimini Yaptı: Debian GNU/Linux ve PostgreSQL

FZ

Yeni Zelanda Seçim Kayıt Merkezi bilgi işlem altyapısını değiştirdi ve Debian GNU/Linux tabanlı sunucular üzerinde çalışan PostgreSQL çözümünde karar kıldı.

Catalyst IT danışmanlığında gerçekleştirilen çözüm Visual Basic ve Oracle ile çalışan eski sistemin yerine geçti.

Woody için Güvenlik Desteği Sona Eriyor

tongucyumruk

Sarge kod adlı Debian GNU/Linux 3.1'in duyurulmasının üzerinden bir yıl geçmesiyle birlikte bir önceki sürüm olan Woody için güvenlik desteğinin kesileceği duyuruldu. Debian projesinin güvenlik politikası geçmiş sürümlerin yeni sürümlerin duyurulmasından itibaren bir yıl daha desteklenmesini öngörüyor. Bu politika dahilinde Sarge'ın duyurulmasından beri güvenlik güncellemeleri yapılmaya devam edilen Woody sürümü için güvenlik desteği 30 Haziran 2006 itibariyle kesilecek. Eğer hala güncellememiş olan varsa, sistemlerinizi Sarge'a geçirmek için hazırlıklara başlasanız iyi olur.

Debian OpenSSL PRNG Hatası ve Güncelleme Paketi

caNavar

Debian OpenSSL paketindeki md_rand.c dosyasında hata Luciano Bello tarafından 13 Mayıs 2008 tarihinde duyuruldu ve hata 2006'dan bu yana oluşturulmuş tüm SSL ve SSH anahtarlarını etkiliyor. Sonuç olarak kriptolanmış anahtarlar tahmin edilebiliyor.

Debian İçin Google SoC 2007 Projeleri

FZ

Son haberlere göre Debian projesi yöneticiliğinde Google'ın Summer of Code etkinliğinde çeşitli projeler geliştirilecek.

Detayların ilgili wiki sayfasından takip edilebileceği Debian SoC etkinliğinde veri yönetimi, QEMU işlevselliği, güvenlik, BitTorrent gibi konularla ilgili 9 farklı yazılım projesi yer alıyor.

TrX Debian GNU/Linux

zahter

TrX Debian GNU/Linux tabanlı ve tam Türkçe destekli bir sistem kurulumu projesidir. Bu paket doğrudan CD-ROM'dan "boot" edilebilecektir. Kullanıcı eğer isterse konfigürasyon bilgilerini diskete kaydedebileceği gibi paketi kalıcı olarak harddiske de kurabilecektir. Proje ekibi alt projelerde çalışacak ve koordinasyonla ilgilenebilecek programcıları/yöneticileri aramaktadır.

(FZ tarafından Türkçe'ye çevrildi).