Yazılımın Engin Dünyasında İki Şövalye
Bilgisayar yardımıyla Ortaçağ'a geri dönülebilir mi? İki şövalye bunu umut ediyor: Şövalyeler birdenbire bizim çağımıza aktarılmışlardı. Modern uygarlığın en kayda değer başarılarının inceliklerini yavaş yavaş öğrendikten sonra onlar kendilerine bir C-64 -bu kararlarının altında başka düşünceler de yatmıyor değildi- tedarik ettiler.
Geçenlerde ansızın eski dostum Theodor Mehrwald'a rastladım. Tabii ilk işim onu koruması altında bulunan iki şövalye hakkında sorular sormak oldu. Theodor -şövalyeler ona Merlin diyorlar- bir üniversite profesörü ve Ortaçağ tarihi uzmanıdır. Dostum bana şunları söyledi: “Senin de bildiğin gibi, Hildebrand ve Hadubrand yaklaşık bir ay önce bir C-64 satın aldılar. Birlikte kaldığımız evde o günden bu yana son derece sakin bir yaşam sürmekteyiz: Her iki şövalye gece ve gündüz ekranın karşısına geçip oturuyor.” Bu sözlerden sonra dostum kendi evlerinde akşam yemeğine davet etti beni, ben de bu daveti sevinçle kabul ettim.
Büyük *““Arcanum''un Gizi
Daha evin önündeyken boğuk erkek sesleriyle gümbür gümbür söylenen bir şarkı duydum ve zili çalıp da Theodor (Merlin) beni içeriye aldığında bunun Ortaçağ lied'lerinden birinin anlaşılmaz bir güftesi olduğunun ayırdına vardım. Merlin gözlerinden hayranlık okunan bir bakışla “Bu eski-yüksek Almanca'da yaratılmış ünlü Hildebrandslied'dir ve şövalyeler kusursuz bir biçimde söylüyorlar bunu” diyerek bir açıklamada bulundu. Merlin ayrıca lied'in metninde büyüsel bir güç bulunduğunu ve bu gücün şimdi onlara büyük “Arcanum”u ararken yardımcı olacağını öne sürüyordu. Sözünü ettiği bu büyük şeyin ne olduğunu biraz şaşkınlıkla sorduğum zaman Hadubrand şöyle dedi: “Çok büyük bir giz, bir bakıma bilgelik taşı söz konusu burada. Bu taşı daha benim zamanımda büyücüler boşuna arayıp durmuşlardır. Ama bilgisayar öylesine mucizevi bir aygıt ki, babam da ben de günün birinde özel bir program sayesinde büyük “Arcanum”u bulma ve bunun yardımıyla yeniden kendi çağımıza dönme konusunda iyimserliğimizi yitirmiyoruz. O nedenle ben ve Hildebrand bilgisayar ve yazılımda büyük bir sabırla keşfedilebilecek umulmadık gizlerin bulunduğu umudunu taşıyoruz.” Krallara özgü bir akşam yemeğinden sonra hepimiz bilgisayarın yerleştirilmiş olduğu kütüphaneye geçtik. Merlin her iki kahramanın da bilgisayarla sadece oyun oynamakla kalmayıp son derece tuhaf verileri de idare ettiklerini açıkladı. Hildebrand çok kullandığı programlardan birinin Star Data olduğunu söyleyerek bir monitörü gösterdi. Hildebrand'ın ifadesine göre, burada zaman ve zamanda yolculuklarla ilgili bütün olgular bir araya getirilecekti. Monitöre eğilerek okumaya başladım:
Adı: Saint-Germain Takma adı: M. Rakoczi Ünvanı: Kont İkametgâhı: Bilinmiyor Doğum tarihi: İddia edildiğine göre 1685 (?) Ölüm tarihi: İddiaya göre 27.2.1784 Eckenförde (?) Olgular: 7. ışının üstadı büyücü 1000 yıldan daha yaşlı Francis Bacon'ın yeniden doğuşu (oraya bakınız) Tahmin: Ya zaman yolculuğuna muktedir ya da ölümsüzlüğü ele geçirmiş.
İtiraf etmeliyim ki gördüklerim tüylerimi ürpertmişti. Hadubrand ise şunu açıklıyordu gururla: “Bu türden yaklaşık 200 kartı yan yana dizdik. Gerçi data ile işlem yapmak başlangıçta bizim için bazı sorunlar ortaya çıkarmıştı, ama bu arada işin inceliklerini çok iyi öğrenmekteyiz. En büyük güçlük her karta ne tarzda geçileceğini metin okuyup çıkarmaktı. İşin en başında bu kalıbı (mask) -yani adı, takma adı vb.- hazırladık, sonra da kalıbı < Control + M > ile elde edip tutup iki kişiyi 1 numaralı karta geçirdik. Ardından bunun depolanması işlemini gerçekleştirdik. Şimdi ise kalıbı < Control + H > ile tekrar ortaya çıkardıktan sonra artık sıra ikinci kişinin 2 numaralı karta paketlenmesine gelmişti. Peki ama topu topu tek bir kart mevcutken iki kart nasıl devreye sokulabilirdi? Başka konularda çok ayrıntılı ve okunması kolay olan rehberde bu noktaya değinilmemişti. Ancak daha sonra başlık satırının anlamı bizim için açıklık kazanmış oldu; yani bu satır değişik kartlar topluluğunun tümünü karakterize etmiyordu, her kart kendine özgü bir başlık taşıyordu. Numaralama işlemi, kartın depolanmasından sonra başlığın alfabetik olarak tasnif edilmesi suretiyle program tarafından yapılmaktadır. Bizim bu gerçeğin nihayet farkına varmamız menü-noktası sayesinde oldu. Kartlarımızda istenildiği kadar kavramı, hattâ Joker aracılığıyla (Joker bilinmeyen işaretler için bir yer tutucu anlamına geliyor) kelimelerin ya da birçok benzer kelimenin bölümlerini arayabilmemiz de özellikle hoşumuza gidiyordu. Ayrıca, VE- ve VEYA- bağıntısıyla değişik arama kavramlarını buldurtmak çok yararlı oluyordu. Sözgelimi biraz önce anılan Kont ve Kont'un diğer adlarıyla ilgili bütün kartlar arandığı takdirde, arama yolu olarak şu verilebilmektedir:
Saint-Germain/Bacon/Rakoczi
Burada “/” işareti VEYA bağıntısı anlamına gelmektedir. Gerek “zaman yolculuğu” maddesi gerekse “Bacon”ı içeren bütün kartlar istenildiği takdirde ise bunlar VE bağıntısıyla bulunabilmektedir.
Zaman Yolculuğu Bacon Buradaki “&” işareti VE bağıntısını göstermektedir. Benim bütün bu anlatılanlara aklım yatmıştı ve her iki kahramana bu programın inceliklerine sadece bir aylık bir süre içinde bu denli vakıf olmalarından ötürü hayranlık duyuyordum. Ama Hildebrand şöyle diyordu: “Bu hiç de o kadar zor olmadı; çünkü Star-Data uygulamada son derece güvenlikli, rehberin anlaşılması ise çok kolaydır. Ayrıca biz bu ay daha pek çok şey öğrendik, yani bir metin-işleme aracılığıyla yazı yazmasını ve programlama dili Basic'in esaslarını biliyoruz daha şimdiden.”
Metinlerin Ana-Metin (Mastertext) ile Üstesinden Gelmek
Hildebrand bana bunu kanıtlamak için önce data programını başarıyla tamamladı ve ardından ilk iş olarak yükleyici-programı disketten çağırdıktan sonra programı RUN komutuyla başlatıp metin-işleme ana-metnini yükledi. Bu arada şöyle diyordu: “Bu program aracılığıyla kendine özgü özel aygıt konfigürasyonunun işletilmesi çok kolaydır. Metin-işleminin ilk kez harekete geçirilmesinden önce çalışmalar ilkin bir kuruluş (installation) programı yoluyla sürdürülür ve bu programda yöneltilmiş olan bütün sorular yanıtlandırılır - şimdi kuruluş (installation) tamamlanmıştır. Artık yükleyici program aracılığıyla gerçekleştirilmesi söz konusu olan bir sonraki çalıştırmadan önce yapılacak tek şey satır 90'da REM'in yükleme komutundan önce silinmesidir.” Şövalyeler ancak kısa bir süre önce yazmayı öğrendiklerinden, onların (sert savaş işlerine alışkın) zanaatkâr elleri bir bakıma okunaklı mektuplar yazabilecek konumda değildi henüz. Onlar ilk kez olarak şimdi (metin-işleme sayesinde) tüm dünya ile yazışmaya başladılar. Bunun yanı sıra, belki günün birinde kendi zamanlarının yazısını üretmeleri mümkün olur düşüncesiyle ana-metne ait olan karakter biçimlendiricisi (editor) üzerinde de alıştırmalar yapıyorlardı.
Gerçi
Hildebrand şöyle dedi: “Ana-metnin kullanılması bir yandan oldukça kolay, ama öte yandan da basılı metnin çeşnisini ortaya çıkaran pek çok özelliğe benim alışabilmem için biraz zamana ihtiyacım var. Sözgelimi bir dizi yönlendirme aracılığıyla yazıcıyı her türlü manevraya ayartmak mümkün olmaktadır. Bu da önce < F7 > tuşuna basılmak suretiyle meydana gelmektedir. O zaman metnin ilgili noktasında ters bir S belirmektedir. Bunun ardından da anlamları bir yönlendirme-işaretleri tablosunda belirlenmiş olan bazı işaretlerin girişinin yapılması gerekmektedir. Bu tabloyu menü servisi ve yazıcı üzerinden incelemek ve değiştirmek mümkün olmaktadır. Ayrıca, seri mektuplar yazılabilmektedir. Ama bu konuda belli bir süre alıştırma yapmak zorundayız, çünkü biz data-türleri bağlamından bunun için gerekli olan bilgiden henüz yoksun bulunuyoruz. Sayfa formatlarının, bazı türlerinin, satır aralarının ve dipnotları ile başlıkların formüler menüsü aracılığıyla oldukça basit bir biçimde ayarlanması da ilgi çekici oluyor. Bu menünün her an için < Control + F > tuş kombinasyonuyla yönlendirilmesi mümkündür.”
Hildebrand açıklamasından sonra bir nefes almak istediğinde, ben de bakışlarımı masanın üzerinde gezdirmeye başladım. Bu sırada basımı tamamlanmış bir mektup ilişti gözüme. Ama masanın üstündeki diğer nesnelerle kısmen örtülmüş olduğundan bu mektuptan ancak bazı cümleler okuyabiliyordum: c. amery, kitaplarınızın dikkatimizi çekmesi üzerine (özellikle “hacılar” ve “kral projesi” başlıklı olanları) çok iyi tanıdığınız ortak bir dostumuz (h.g.w.) sizin gizli adresinizi verdi bize. Zaman yolculuğuna ilişkin gizin (büyük arcanum) size yabancı olmayacağını da kesin bir dille ifade etti. İzin verirseniz önce size içinde bulunduğumuz durumu be...” Tüylerim diken diken olmuştu: Acaba C. Amery şu ünlü yazar mıydı? Peki ya H.G.W.? Zaman yolculuğu tema'sı bağlamında ancak H.G. Wells söz konusu olabilirdi. Ama Wells öleli birkaç on yıl geçmişti -yoksa ölmemiş miydi? Merlin beni bu anlı, aynı zamanda da dehşet düşüncelerden uzaklaştırdı:
verici *“Tabif bu iki programın bizce cpey yardımı dokunuyor, ama Hildebrand ve Hadubrand kendi yazılım türlerine çok daha büyük umutlar lar.” Hadubrand onun sözünü kese rek dedi ki: “Programlama dili Ba- — sonra şunu daktilo etmeye başlad: sic ile denemelerimize daha ilk gün- 10 (140) AND 15:POK den başlamıştık ve çok sabır gösterip — 3280, I:PRİNT ;;;;; 3444 sıkı çalışarak bir gün kendi zamanı- GOTO 10 mıza dönmeyi mutlaka başaracağımı- Bunun ardından da RUN komuza tuyla bu küçük programı çalıştırdı. “Çok değişik komutların incelik- — Hadubrand'ın söylediğine göre, noklerini öğrenmek ilkin bize çok güç ge- — talı virgüllerle boş işaretlerin uygun liyordu. Böylece girişimlerimiz kimi — bir kombinasyonu yoluyla çerçeve o zaman aygıtın büsbütün işlememesiy- — şekilde biçimlendirilebilirdi ki, renkli le ve pek çok hata bildirimleriy şeritler neredeyse hareketsiz dururlarnulanıyordu. Ama sonraları daha dı. O bunları söylerken ben de ekratematik çalışmaya başladık: Hildeb- — nın hemen hemen hipnotize edici etrand el kitabını sayfa sayfa inceledi, — kisinin bilincine varıyordum giderek, ben de içinde yeni başlayanlar için — Başımı döndürmüş olan monitörden Basic-kursunun basılı olduğu bütün — kendimi zorla ayırdım, aceleyle ve 64'ler dergilerini tedarik ettim kendi- — özür kelimeleri mırıldanarak veda etme. tim onlara. O günden bu yana yak- Bundan sonra da programlama işi- laşık bir hafta geçti. Bir kaç kez Merni kolayca öğrenebildim. Bu sırada — lin ile telefonda görüştüm. Ama Merise daima bilgi alışverişinde bulun- — lin'in konuşması her defasında büyük duk. Şimdi biz fiilen gece ve gündüz — bir acele içinde olduğu izlenimini vedeney yapmakla uğraşıyoruz, eğer riyordu. Merlin her üçünün de sıkı ve herhangi bir zamanda, geniş kapsam- — yorucu bir deney yapacaklarını açıklı yazışmalarımız sayesinde dönüş so- — ladı. Dün de “gedik açma” aşamarunumuza bir çözüm bulamayacak — sına ulaşmak üzere olduklarını duyolursak, bu durumda sorunu büyüle — muştum kendisinden. Bu gece bizim programı birleştirmek suretiyle çöz- — semtimiz şiddetli bir patlamayla sarmeyi sıldı. Telâşa kapılarak sabah erken- Hadubrand sözlerini hitirdikten — den dostumun evine koştum. Yerde, evin bulunduğu noktada derin bir delik açılmıştı. Kaza sonucu mu olmuştu bu? Her üçünden ise hiç bir iz yoktu ve genel olarak bütün belirtiler dikkate alındığında bir patlama ,2 işaret etmiyordu bunlar. Durum daha çok şöyle bir izlenim bakıyordu: Sanki evin bulunduğu yerde ansızın bir boşluk (vakum) olmuştu ve çevredeki nesneler bu boşluk tarafından emilmişlerdi. Acaba onlar gerçekten de büyü ile bir bilgisayar bilimlerini birleştirip başarmışlar mıydı gerçekleştirmek istediklerini? Fakat kafamı bulandıran bir şeyler var: olup bitenlerden altüstü olmuş bir halde, bugün öğleden sonra öteden beri tanıdığım bir sahafcı dükkanına gittim ve orada dağınık bir zihinle raftaki kitapları karıştırmaya başladım. Eski bir kitap aldım daha sonra: Kitabın baskı tarihi yoktu, ama herhalde birkaç yüzyıl önce yazılmış olmalıydı bu kitap ve Latin dilinde kaleme alınmıştı. Kitabın başlığı Almanca “Zaman” anlamına gelen “Tempus” idi ve Theodorus Mağgis Silva adını taşıyan bir tarafından yazılmıştı. Bu ad isebiraz iyi eodor Mehrwald olarak dilimize çevrilebilirdi.
BİLGİSAYA
Her şey ayın on üçüne rastlayan bir cuma günü başladı. Takvim “dikkatli olun” diyordu. Bugünün uğursuzluğuna inanarak evden dışarı çıkmayıp C-64'ümle uğraşmaya karar vermiştim. Nasıl da yanılmışım! Bilgisayarın normal işlemleri sırasında görüntü ansızın korkunç bir şekilde titremeye başladı ve ekranda şu mesaj belirdi:
DR.DR. STROBE & PAPA HACKER WAS HERE! ALSO STARRING GARFIELD MERHABA! BU GERÇEK BİR VİRÜSTÜR! SERİ NO.: 18
Birdenbire ne olmuştu? Bu bir virüs müydü? Yoksa bilgisayarım mı hastaydı? Şimdi ne yapmalıydım? Bilgisayarı kapatmak bir çözüm olabilir miydi? Gerçekten de bir bilgisayar virüsü belleğe yerleşmişti. Bu bilgisayar virüsleri kendi kendilerine çoğalan, gizlice hafızaya ve bilgi taşıyıcılarına (disket) yerleşen kısa ve zararlı programlardır. Bunlar uzun bir süre bilgisayarın belleğinde sessiz kalırlar, fakat aktif hale geçtiklerinde tam anlamıyla bir kargaşaya neden olurlar. Şimdiye kadar bilinen C-64 virüsleri zararsızdır, yani faal durumdayken bile herhangi bir bilgi kaybı yaratmazlar. Zararsız virüslerin diğer bir türü ise kendi kendine çoğalma özelliği bulunmayanlardır. Bunların en tanınmışı “Spinne” (Örümcek) adlı virüstür. “Spinne” aktif hale geçtiğinde ekranda dolaşan bir örümcek görülür. İlk başta bu görüntü bir çok kişiye oldukça ilginç gelebilir, fakat bir müddet sonra hafızadaki her şey silinir. Bunlar gibi zararsızların yanında bir de Bayrischen Hacker-post'un yaydığı BHP-Virüs türünden çok tehlikeli virüsler vardır. Bunlar genelde iki bölümden oluşur. Çoğalma kısmında, virüs ulaşabileceği tüm bilgi taşıyıcılarına ulaşmaya çalışır.
İlk önce virüs daha evvel bulaşamadığı bir program arar. Eğer bir tane bulabilirse, hemen kendini diskete veya (PC'lerde) Hard Disk'e kaydeder. Burada kurnazca directory ve etkileyeceği program arasında bir yere saklanır. Bilindiği gibi directory, programların disket üzerinde nerede bulunduklarını bilgisayara bildirir. Bu enformasyon directory-pointer'ında kodlanmıştır ve programın başlangıcını gösterir. Virüs, çoğalma işlemleri sırasında hiçbir şey belli etmeden değiştirir ve sağlıklı bir programın başlangıcını kendi üzerine alır. Böylelikle ana program yüklenmek istendiğinde directory ilk önce disket üzerinde virüsün bulunduğu adresi gösterir. Bu şekilde ilk önce virüs bilgisayarın belleğine yerleşir ve ardından esas program yüklenir. Resim 1'de yukarıda anlatılanlar bir şema halinde gösterilmiştir. Virüslerin ikinci kısmı başlar. Burada artık faal duruma geçen virüs bilgileri bir daha geri getirilmeyecek şekilde silebilir, disketi formatlayabilir veya Hard Disk üzerinde kendi amacı doğrultusunda değişiklikler yapabilir. Kısaca bu andan itibaren bir virüs birçok önemli hasar verebilir. Bu hasarlar hemen o an gerçekleşmez! Ama program virüs tarafından öyle değiştirilir ki, siz bir şey kaydederken disket üzerinde bulunan her şeyi farkında olmadan silersiniz. Bunların yanında aktif hale geçmek için belli bir sinyali bekleyen virüsler de vardır. Adeta bir saatli bomba gibi çalışan virüsler “patlamak” için daha önce ayarladıkları bir zamanı (örneğin PC'lerde belli bir tarihte ve belli saatte) veya belirsiz bir zamanı (programın x defa yüklenmesini) beklerler. Fakat bu bekleme sırasında virüsler katiyen boş durmazlar; çeşitli sistemlere bulaşmaya devam ederler. Bazı bilgisayar sistemlerine yukarıda anlatılan türden tehlikeli virüsler bulaşmış olmasına rağmen
BİR TEHLİKE
ANIL GÜLmen, her şey şimdilik normal çalıştığı için kimsenin bundan haberi yoktur, fakat bir gün bomba patlayacaktır. Bu katil programların “virüs” diye adlandırılmalarının sebebi, aynen biyolojik benzerleri gibi davranmalarıdır: Çoğalmaları kontrol edilemez, bazı enformasyonları değiştirirler ve tek başlarına (bilgisayar ve program olmadan) yaşayamazlar. Herhalde en tanınmış C-64 virüsü burada işlevini anlatacağımız BHP virüsüdür. Münih'teki “Bayrische Hacker-post” (kısaca BHP) bilgisayar kulübünün üyeleri 1985 yılında C-64, Atari 800XL dahil olmak üzere tüm bilgisayarlarda virüs yazılabileceğini ileri sürdüklerinde, birçok yerde alayla karşılanmışlardı. Bunun üzerine BHP üyeleri hemen işe koyularak kısa bir süre zarfında tehlikeli virüslerin tüm özelliklerini taşıyan bir program geliştirmeyi başardılar. Oluşturulan bu program ilk başta herhangi bir zarar vermiyordu, fakat bilgisayardan bilgisayara, disketten diskete korkunç bir hızla yayılmaktaydı. Böylelikle oluşturdukları bu virüsle BHP üyeleri amaçlarına ulaşmış
VİRÜSLERDEN
NASIL KURTULABİLİRİM?
Bazı virüsler için öldürücü programlar mevcuttur (Virus-Killer). Bütün virüsler için geçerli genel bir yazılım ne yazık ki yoktur, çünkü bunların her biri farklı özelliklere sahiptir. Az da olsa yazılmış Virus-Killer'ler yeterli derecede güvenilir değildir. Yüzde yüz geçerli tek kurtulma yöntemi disketin tekrar formatlanmasıdır. Bu metodun dezavantajı ise virüsle birlikte disket üzerindeki tüm bilgilerin kaybolmasıdır.
VİRÜSLER NASIL BULAŞIR?
Virüssüz program
Özellikle kaçak kopyalanan Directory programların virüslü olma ihtimali yüksektir. Fakat orijinal programlar da yüzde yüz güvenilir denilemez. Örneğin Atari ST'nin “GFA-Basic 3.0” adlı programına virüs bulaşmıştır ve hazırlanan 10.000 disketin 1.500 tanesi piyasaya sürülmüş durumdadır. Bu gibi durumlarda üretici firma zararı karşılamak zorundadır. Virüsler disketle olduğu gibi modem aracılığıyla da bulaşabilir, fakat siz öncelikle kaynağını bilmediğiniz kopyalanmış programları yüklerken dikkatli olun.
Program programı gösterir
Virüslü program
Directory
Program oluyorlardı. BHP-Virüsü C-64 reset edildikten sonra, yani başlangıç durumuna getirildiğinde bile, hafızadan silinmiyor ve daha sonra yüklenecek programlara bulaşmaya devam ediyordu. Bu beladan kurtulmanın tek yolu ise bilgisayarı açıp kapatmaktı, fakat virüs eğer herhangi bir diskete bulaştıysa burada rahatça gizlenebilmekteydi.
programı gösterir
9 blok uzunluğunda (bulaşmış)
Bir virüs enfeksiyonu modeli: Virüs directory'yi değiştirerek, her program erişimi sırasında kullanıcı tarafından fark edilmeden öncelikle virüsün uyarılmasını sağlar. Programın asıl amacı daha sonra yerine getirilir.
VİRÜS 6000 BİLGİSAYARI MAT ETMİŞTİ
2.11.1988 Çarşamba günü Amerikan bilgisayarları için bir felaket günüydü. Ülkedeki 6.000 bilgisayar bir virüs nedeniyle felç olmuştu. Bunların arasında önemli sistemlerin bilgisayarları da bulunuyordu. Birçok firmanın terminalleri, üniversite ve laboratuvar bilgisayarları çeşitli veri girişlerine ya hiç reaksiyon göstermiyordu ya da tamamen alakasız bilgi çıkışları yapıyordu. Bu virüs US-Navy'nin (bahriye) kumanda merkezinden, Lawrence Livermore Laboratories'den (Amerika'nın atom silahlarını geliştirdiği yer) ve uzak çalışmalarının yürütüldüğü NASA'dan etkilerini esirgememişti. Bu virüsü yaratan kişi New York'taki Cornell Üniversitesi'nde doktora yapmakta olan Robert Morris Jr. adlı öğrenciydi. Robert virüsünü 50.000 bilgisayarı kapsayan ARPANET iletişim
Robert Morris Jr. tek bir virüs ile hemen hemen 6000 bilgisayarı felç etmişti. Uzmanlar, eğer isteseydi çok daha büyük hasarlar verebileceğini söylüyorlar.
ağına yerleştirmişti ve bu şekilde en sıkı korunan bilgisayar sistemlerine bile girip ve buralarda çalışma yapabileceğini kanıtlamak istiyordu. Herhangi bir veri giriş hatası bu virüsün hızla yayılması için yeterli oluyordu. Her bilgisayar kullanıcısı bu şekilde farkında olmadan virüsün tüm ülkeye yayılmasını sağlıyordu. Çoğalma devamlı katlanarak arttığı için büyük bilgisayarların hafızaları bile kısa sürede tükeniyor ve bu da sistem kilitlenmelerine yol açıyordu. Tüm bunların yanında aslında virüs kötü amaçlar doğrultusunda programlanmamıştı, zira kayıtlı olan tüm bilgiler sağlam olarak duruyordu. Cornell Üniversitesi informatik öğretmeni Dean Krafft Spiegel dergisine Robert'in “iyi niyetini” şöyle açıklıyordu: — Onun için daha büyük zararlar vermek çok kolay olurdu. Birkaç ek satır kayıtlı tüm bilgileri silebilirdi.
& |
1 2 Program kodu 7
0 1024 2048 40960 49152 — 53248 57344 65535 1 Zeropage, Stack, vektörler | 2 Ekran 3 Basic yorumlayıcısı 4 Boş bellek alanı 5 G/Ç alanı; virüs burada 6 Kernel/İşletim sistemi 7 Reset koruması G/Ç alanı 5 |
1 | 2 Program kodu 3 | 4 0 1024
2048 ca.4300 20960 49152 53248 — 57344 65535 1 Zeropage, Stack, vektörler 2 Ekran 3 Basic yorumlayıcısı 4 Boş bellek alanı
5 G/Ç alanı; virüs burada
Resim 2: Bu bellek yerleşimini BHP virüsünde görüyorsunuz. Aranan bir programın yüklenmesinden sonra, başlangıçta her şey yolundadır: Program 2300 bayt kaydırılmıştır ve henüz aktif durumda olmayan virüs, Basic'in başlangıcında bulunmaktadır. Aktif durumdaki bir virüste program normal bellek alanındadır ve virüs G/Ç alanının altında yer almaktadır. Reset koruması 32768 ($8000) adresine konmuştur.
VİRÜSLERDEN
NASIL KORUNABİLİRİM?
Gerçekten çok iyi bir korunma yöntemi şu anda mevcut değildir. Kendi bilgisayarınızda formatlanmamış her disket hastalıklı olabilir. Bu nedenle daima kendinize ait disketlerle çalışmaya özen gösterin. Uzun süre kullanmayacağınız disketleri ise başkalarına ödünç vermeyin. Eğer sağlıklı olup olmadığını bilmediğiniz bir disketi yüklemeniz gerekirse işiniz bittikten sonra bilgisayarı sakın resetlemeyin. Bu gibi durumlarda en kesin yöntem bilgisayarı ve çevre birimlerini tamamen kapatıp açmaktır.
BHP-Virüsü aktif konuma geçtiğinde yukarıdaki metin ekrana gelmektedir. En alt satırda ise şu mesajı görebilirsiniz: SERİ NO: kuşak numarası Bu numara virüsün enfeksiyon sayısını bildirir; yani her yeni programa bulaşıldığında bu sayı bir artar. Benim karşılaştığım 18. kuşaktı, yani daha önce 17 kez aktif hale gelmişti. Yukarıda belirtilen metin ekrana geldikten sonra ikinci bir uyarı mesajı ekrana gelinceye kadar rahatlıkla çalışmaya devam edilebilir. Şu anda BHP-virüsünün iki çeşidi mevcuttur: 1. Versiyon: Virüs kendini sadece bir defa belli eder ve bir daha gözükmez. 2. Versiyon: Virüs belirsiz aralıklarla devamlı ekrana gelir. Bunlardan ikincisi çok daha fazla yayıldığı için ilk uyarı mesajı ekranda belirdiğinde hemen bilgisayarınızı kapatmanızı tavsiye ederim, böylelikle en azından hastalığın diğer disketlerinize bulaşmasını önleyebilirsiniz. Şimdi isterseniz bu virüsün yayılma mekanizmasını daha yakından inceleyelim. Virüs faaliyet halindeyken bilgisayarın içinde bazı işletim sistemi alt rutinlerinin adreslerini değiştirir (LOAD, SAVE, Break, NMI, Basic Warmstart). Bu şekilde değiştirilen adreslerin gerçek fonksiyonları tamamen virüsün alt programları tarafından yürütülür ve bilgisayarın bağlı olduğu cihazlarla (Floppy, Printer,...) ancak dolaylı yoldan iletişim sağlanır. Artık virüs bilgisayarımıza hükmetmektedir ve kendi işini rahatlıkla görmektedir. LOAD veya SAVE komudu ile Disk Driver'ınızı kullanmak istediğinizde virüs disket üzerinde hemen boş block arar ve bulduğu ilk yere kendini kaydettikten sonra Resim 1'de görüldüğü gibi ana programla bağlantıyı kurar. Bu iş için harcanan 9 Block directory'de gösterilemez. Görüldüğü gibi yukarıdaki fonksiyon prensibinden hareket eden herkes bir virüs yaratabilir. Bir süre önce yabancı bir bilgisayar dergisi C-64 için bir virüs programlama kursu başlatmıştı. Şimdilik elimizden bu kursun yararlı amaçlar için kullanılmasını ve yeni tehlikeli virüslerin oluşmamasını dilemekten başka bir şey gelmiyor. PC alanında bu iş daha da ileri gitmiştir. Avrupa'da şu anda “Nightmare” adlı bir virüs oluşturma seti piyasada satılmaktadır. Bu set, kullanıcıların virüslerle daha samimi olabilmeleri amacıyla tasarlanmıştır. Yalnız bu Software'in üzerinde şöyle bir uyarı göze çarpmaktadır: “Bu program bir oyuncak değildir” ve bundan başka oluşturulan virüsler için seti satan firma hiçbir sorumluluk kabul etmemektedir. Federal Almanya'da bu iş kanunlarla çok sıkı tutulmuştur. Örneğin hayati önem taşıyan bilgisayarlara (hastane, havaalanı) bulaşabilecek bir virüs yaratmanın cezası beş yıla kadar hapistir. Virüsler ayrıca politik amaçlarla da kullanılmaktadır. Bundan birkaç sene önce Amerika'da Delaware Üniversitesi bilgisayarlarına bir virüs bulaştırılmıştı. Bu virüs üniversiteyi bir Pakistan bankasına 2.000 Dolar yatırmaya zorluyordu. Bu paranın karşılığı olarak okul tahrip edilen bilgileri eski haline getiren bir program alacaktı (Süddeutsche Zeitung, Haziran 1988). Acaba 90'lı yıllarda virüs tehdidi daha da artacak mı? Avrupa'da 1987 ve 1988 yıllarında bu konuyla ilgili herhangi bir resmi kayda rastlanmadı, fakat durum Amerika Birleşik Devletleri'nde çok daha ciddi: Bir öğrencinin yarattığı virüs, NASA ve Savunma Bakanlığı'nınkiler de dahil olmak üzere 6.000 bilgisayarı adeta felç etmişti. C-64 kullanıcıları şu ana kadar sadece BHP-Virüsünün sık sık ekrana gelen uyarı mesajlarından rahatsız olmaktadırlar. Her ne kadar bugüne dek karşılaşmadıysak da teorik olarak C-64'de de bilgileri silen veya değiştiren virüsler yazılabilir.
Virüs kendini G/Ç alanının altındaki $d000 adresine yerleştirmektedir.
Program, çalışabilmesi için Basic başlangıcına (2049) kaydırılır.
Değişen vektörler: LOAD SAVE BREAK RESTORE Basic-Warmstart Reset koruması
Fa
Virüs aktif hale geçiyor.
Program çalışmaya başlıyor.
Resim 3: Normal bir resette BHP-Virüs'ü önce kendini güvence altına alır ($d000'a yerleşir). Bu arada bilgisayarın normal işlevlerini taklit eder. Sistem kontrolleri virüs tarafından yürütülmektedir.
Eğer hastalıklı bir program yüklenirse resim 2'de üst tarafta görülen hafıza modeli oluşur. Eğer LIST komutunu yazarsanız ekrana gelecek satırdan virüsü anlayabilirsiniz:
1987 SYS PEEK
(43) 4 256*PEEK(44) 4 48:
VIRUS
Virüs hafızada aktif konuma geçmeden bu satır gözükmez. RUN ile program çalıştırıldığında SYS komutunun adresi hesaplanır (Eğer Basic başlangıcı 2048'de ise 2097 bulunur) ve makine dilinde yazılmış olan virüs programı devreye girer. Virüsün diğer adımları resim 3'deki diyagramda gösterilmektedir. Bu arada resim 2'de alt kısımda görülen bellek dağıtımı oluşturmaktadır. Virüs kendini
53248'den
PROFESYONELLER İÇİN GEREKLİ
BİLGİLER
($d000) başlayan yere kaydeder. Burada dışarıdan çok zor girilir; Basic V2.0'dan ulaşmak ise imkansızdır. Daha sonra ana program gerçek yerine yerleştirilir. 32768 ($8000) ve sonraki 9 bayt virüs tarafından reset koruması olarak kullanılır (CBM-80 kelimesi $8004'den itibaren yazılır). Unutmayın! Bilgisayarı kapatıp açmak bir virüsün tüm yaşam fonksiyonlarını sona erdirir. Resim 2'nin üst kısmında hastalıklı bir program yüklendikten hemen sonra (RUN edilmeden önce oluşan) bellek dağılımı görülmektedir. İkisi arasındaki tek fark, ana programın aşağı yukarı 2300 bayt ileri kaydırılmasıdır. Kullanılmıyor gibi görünen alanda ise, RUN komutuyla derhal aktif hale geçebilecek olan virüs yer almaktadır.
Modem kullanımı
Ben 15 yaşında adı Korhan olan ve bilgisayarlara ve gelişen bilgisayar teknolojisine çok büyük ilgi duyan bir gencim. Sorunumu açmadan önce biz Türk Gençlerine bilgisayar dünyasını tanıttığınız için bütün Teleteknik personeline sonsuz teşekkürler ederim. Benim C-64 marka bir bilgisayarım var. Sorunuma gelince edindiğim bilgilere göre C-64 ve bir modem kartuşu aracılığıyla başka bilgisayarların hafızasına girmek mümkünmüş. Yalnız bazı kişilerden öğrendiğime göre bu bilgi alışverişi için her iki bilgisayarda da modem olması şartmış ve bu koşul gerçekleşmezse böyle bir bağlantı söz konusu olmazmış. Acaba sadece benim bilgisayarımda bulunan bir modemle modem bulunmayan bir bilgisayardan kendime bilgi aktarabilir miyim? Bu olay gerçekleştirilebilirse buna uygun bir modem çeşidi var mı? Korhan Alşan/ETLİK SAYIN Korhan Alşan,
İki bilgisayarın karşılıklı haberleşebilmeleri için her ikisinin de modeme sa- Modem aracılığı ile farklı marka bilgisayarlarla haberteşmehip olması gerekir.
nizde mümkündür. Elbette ki karşı bilgisayarın modemi olması koşuluyla,
Hangi bilgisayar?
Ben 17 yaşında, lise ikinci sınıf öğrencisiyim. Kendime bilgisayar almak istiyorum. Yakınlarım bana C-64'ü tavsiye ettiler fakat ben AMIGA almak istiyorum. Hiç bilgisayar kullanmamış birine, daha iyi öğrenmesi açısından hangisini tavsiye edersiniz?
Nasıf Ünal/KAYSERİ SAYIN Nasıf Ünal,
Hiç bilgisayar kullanmasını bilmeyen birisi için C-64'ü kullanmak zor olmayacaktır. Ancak AMIGA'da yeni bir bilgisayar meraklısı kısa bir süre sonra rahatlıkla çalışmaya başlayabilir. Bunun kullanımı son derece kolay ve anlaşılır işletim sistemine borçluyuz. Mesela bir oyun oynamak isterseniz, tüm yapmanız gereken, bilgisayarı açıp disketi yerine yerleştirmek olacaktır. Veya bir program yazmak isterseniz, disketinizi takıp karşınıza çıkan disket resmini açar ve BASIC resmini açarak çalışmanıza başlarsınız.
Birkaç Amiga sorusu
Değerli Commodore dergisi yayıncıları ve emeği geçen tüm personele bu güzel dergi için çok teşekkürler. C-64'ten Amiga'ya terfi eğitim bilgisayarcılığımda çok yardımınızı gördüğümü söylemeliyim. İlk sayısından itibaren takip ettiğim derginiz gerçekten biz bilgisayarcılar için mükemmel bir kaynak. Size AMIGA 500 hakkında bazı sorularım ve önerilerim olacak * 500'e harddisk takılabiliyor mu? * AMIGA 500 için extra RAM kartını nereden temin edebilirim? * AMIGA 500 için Cobol ve Pascal derleyicisine ihtiyacım var, nereden ve kaça temin edebilirim? * Benim gibi AMIGA kullanıcılarının en büyük sorunu kaynak yetersizliği. Derginiz sürekli olarak C-64 ve C-128 için BASIC program dökümleri verirken AMIGA için böyle bir uygulama yok. Lütfen AMIGA'ya biraz daha ilgi,
Semih Aydoğan SAYIN Semih Aydoğan,
AMIGA 500 ve diğer AMIGA modellerine hard disk takmak mümkündür. 20MB'lık bir hard disk 20 diskete eşdeğer yer tutarken, program yükleme hızı son derece artacaktır. Ram expansion'ı Teleteknik ya da yetkili satıcılarından temin edebilirsiniz. AMIGA için COBOL mevcut değil. Pascal derleyicisi için çeşitli alternatifler var. Ancak yapacağınız programda AMIGA'nın tüm özelliklerini kullanmak isterseniz, size Pascal'a çok benzeyen fakat daha sonra geliştirilmiş bir dil olan MODULA tavsiye edebiliriz. Bu dil Pascal'dan yola çıkılarak hazırlanmıştır. Pascal ve Modula derleyicilerini Teleteknik ve bayilerinden temin edebilirsiniz. AMIGA'da program hazırlayan arkadaşlarımızın programlarını bekliyoruz.