ocd___security_by_kennsYıllar önce bir blog’umda yazdığım bir yazı dizim baktım ki bütün hack forumlarında yayınlanmış ve herkes “ben yaptım” rolünde koşuşturuyor. Taklitlerden kaçının! Tasarladığım çoğu siteye her gün yüzlere varan saldırılar yapılmıştır fakat bugüne kadar hack yapabilen olmamıştır. Anlayacağınız üzere en iyi korunma yöntemi, saldırı yöntemlerini deneyerek!

Aşağıda açıkladığım yöntemleri deneyerek tasarladığınız sitelerin güvenlik açıklarını bulabilir ve ona göre yama geliştirebilirsiniz. Amacım güvenlik kriterlerini öğretebilmek; Hack öğretmek değil bunu belirtmek isterim.

ÖNEMLİ TCP PORT NUMARALARI VE GÖREVLERİ
7 => echo, Bu porttan sunucuya ne yollarsanız aynen geri yollar.
9 => discard, Dev/Null.
11 => systat, Kullanıcılar hakkında bilgiler verir.
13 => dCahil teamime, Tarih ve zaman bilgisi. Bilgisayarın nerede olduğu bulunabilir.
15 => netstat, Network ile ilgili bilgiler.
19 => chargen, Sistemde kullanılan ASCII karakterler.
21 => ftp, Bildi iniz ftp portu.
23 => telnet, Telnet portu.
25 => smtp, Smtp (Simple Mail Transfer Protocol) Server portu.
37 => time, Zaman.
39 => rlp, Resource Location.
43 => whois, Host hakkında bilgiler.
53 => dns, Domain name server.
79 => finger, Kullanıcılar hakkında bilgi.
80 => http, Web sunucu.
110 => pop, Gelen mail.
119 => nntp, News Group.
443 => shttp, Güvenli web sunucu.
Bize gerekli olacak önemli portlar bunlar bu yüzden size liste hazırladım. Şimdi asıl işimize geçelim. İzinsiz gişirim (Hack) yaparken bize elbette bazı programlar lazım olacak bunları sizlerle kısa açıklamalar yaparak paylaşacağım.

İlk olarak http://www.insecure.org/nmap adresinden NMAP programını indielim.Sitede programın windows ve Linux için ayrı versiyonları mevcut size uygun olanını listeden seçip download edebilirsiniz.Bu program bizi port tarama derdinden kurtaran harika bir programdır.Mantığını açıklamak gerekirse şöyle diyebilirim: Hostun veri giriş çıkışı yaptığı, sık kullanılan portları ve bu portlar üzerinde veri giriş çıkışı yapan programların bir listesini bize sıralayan bir programdır.Biz bu portlar üzerinde çalışan bir programın açığını kullanıp sisteme sızabiliriz.

Eğer hostun kullandığı sistem Windows ise Administrator, Linux ise Root olabiliriz.Administrator ve Root bir sistemdeki en yetkili kişidir.
İkinci programımız ise NESSUS. Bu programın kullanımı zordur. Kullandıkça tecrübe kazanırsınız.Programın çalışma mantı ı şöyle: NASL (Nessus Attack Scripting Language) dili ile özel script saldırıları yapmaya yarar.Bize önemli güvenlik açıklarını bularak gösterir.Programı; http://www.oxid.it adresinden indirebilirsiniz.
Üçüncü programımız da çoğunuzun adını duyduğu Md5Cracker adlı Md5 crack programı.Bu programla kriptolu şifreleri (Md5-base 64) çözebiliriz. Bu tip şifreler sıklıkla forum database lerinde bulunur örneğin “aeH19a85ZlokBN68A6d51mmT5e808aa2w03aVkuz4 ” şeklindeki bir md5 şifreyi çözebiliriz. Md5 şifrleme phpbb, vbulletin, phpnuke tarzı forum ve portalların database inde user tablosu içindeki listede kullanıcı adına karşılık gelen criptolu şifredir.John dışında daha pek çok md5 cracker mevcut fakat en ünlüsü ve hızlısı bu olduğu için bunu seçtim.Md5Crack kırdığı şifreleri Programı kurdu unuz dizinde “pass.txt” adında birmetin dosyası oluşturur. Şifreleri bu dosyadan alabilirsiniz.Yada ekrandan görebilirsiniz.Fakat bu işlem saatleri alıyor bunu da belirteyim.Yani sabırlı olmanız şart.Program linki aşağıda.

Md5Cracker Programı : http://rapidshare.com/files/167942315/md5.rar.html (şifre yoktur)

security_by_lukeroberts

Bunların dışında önemli bir yöntem olarak siteye ftp, telnet, ssh (shell) gibi yollarla bağlanmayı deneyerek sistemin kullandı ı programları öğrenmektir.Arkadaşlar sizlere önemli bir tavsiyem kesinlikle denemekten kaçınmamanız deneme yanılma yöntemiyle ö renilen her şey çok daha kalıcı oluyor.43 saat süren hack deneyimlerim oldu.Şunuda unutmayın hiç bir sistem %100 güvenli de ildir, mutlaka bir açık mevcuttur. İşte o açığı bulmak bizim görevimiz. Bu arada kendi güvenli iniz için sabit bir ip numarası kullanmaktan kaçının.Unutmayın ki ip adresi sizin açık bir kimli inizdir. Sürekli de işen yada size ait olmayan ip adresleri kullanın. Bunun için ise Proxy dediğimiz sistemler vardır. www.atomintersoft.com bunlardan birisi. Sizde Google da proxy aratarak bulabilirsiniz. Bunu dışında sürekli ip Steganos Internet Anonymous programı yada Permeo Security Driver programını kullanabilirsiniz.

Host hakkında detaylı bilgi alabileceğimiz diğer yöntemler ise bir dos komutu olan ve hepimizin makinelerinde bulunan küçük programcıklar yani: finger ve tracert.

FINGER => Bize ilgili host üzerindeki kullanıcıları ve izin verilmişse bu kullanıcıların host üzerindeki özelliklerini verir.Tabiki bunu yapmak için öncelikle bilgi almak istediğimiz hosta 79. porttan yani finger portundan telnet bağlantısı yapıyoruz tabi açıksa. Bunun içinde Çalıştıra “telnet” yazıyoruz, bağlan kısmına “host adını” bağlantı türü kısmınada “79” yazıyoruz.

TRACERT => Bu komut ise bize hosta gönderdi imiz paketin kaç yol geçerek hosta ulaştığı hakkında bilgi verir ve routerları listeler.Buraya kadar yaptı ımız ön çalışma hostun haritalanması ve gerkli bilgilerin toplanmasıydı. Bundan sonrası sabır isteyen kısım.

Gelin şimdi sanal bir saldırı yapalım:

Örnek olarak http://www.abcdefg.com diye bir site olduğunu varsayalım. Şimdi site hakkında bilgi toplamak için www.whois.sc sitesine kayıt olalım. Daha sonra Domain Explorer bölümüne geçelim http://www.adbdefg.com yazalım. Karşımıza bazı bilgiler çıktı, bunlar host bilgileri. Bize lazım olanlar: Reverse ip, Server type, Ip adress, Name server, ICAAN Registrar. Bu bilgileri alarak bir kenara not edelim. Şimdi kısaca üstteki bilgilerin anlamlarını açıklayayım.

REVERSE IP => Bu seçenek server üzerinde çalışan diğer siteleride gösterir fakat whois.sc bize sadece 3 site görme hakkı vermektedir. Eğer silver üye olursanız tüm siteleri görebilirsiniz. Bu seçenek bizim için önemlidir çünkü; server üzerinde hacklemek istedi imiz http://www.abcdefg.com sitesi üzerinde açık yok diyelim, fakat server üzerinde çalışan başka bir sitede açık bulduk ve sitenin açığı çok, bu sitenin ftp sine erişip gerekli kodları atabilirsek serveri komple ele geçirebiliriz!!!!! Yani root yada administrator olabiliriz.
SERVER TYPE => Server tipi bizim baz aldığımız nokta olmalıdır. Mesela http://www.abcdefg.com sitesi için server tipi Apache / 1.3.31(Unix). Burdan anlayaca ınız şey: Server 80. porttan Apache 1.3.31 http serveri çalıştırıyor. Ayrıca PHP / 4.3.5 kullanıyor. Bunlar Daemon dedi imiz arka planda çalışıp serverin asıl aktivitesini yerine getiren yapılardır. İşte Exploitler yardımıyla server üzerinde kullanılan daemon veya http serverin bir açığından içeri sızabiliriz. Şimdi adı bu kadar çok geçmişken Exploitler hakkında bilgiler vermek istiyorum: Exploitler sistemin açığı üzerine yazılmış kodlardır. İçerik olarak include ve define edilmiş değişik kod kümeleri barındırırlar.Bu kodlar bizim uzun uzun u raşmamıza gerek bırakmadan bir şekilde servera gerekli komutları verdirererek çalışırlar. Exploitler root ve local olmak üzere ikiye ayrılır.

NAME SERVER => Burda yazan adres http://www.abcdefg.com için host sağlayan sitedir. Bu adrese girerek server hakkında daha çok bilgiye ulaşabiliriz. Çünkü ; çoğu host firması sitelerinde, kullandıkları makinenin özelliklerini ve üzerinde kurulu olan işletim sistemlerini, php versiyonlarını falan açıklarlar.

ICAAN REGISTRAR => Domainin kayıt edildiği site. Registrarı yani domain bilgilerini incelediğimizde bizim için önemli olan Administrative Contact yani domainin kayıtlı olduğu mail adresidir. Birde domainin kayıt edildiği registered through bölümündeki adrestir. Yani http://www.abcdefg.com domaini Registered through bölümünde yazan adres vasıtasıyla alınmış demektir. Şimdi bu bilgileri örneğin Administrative Contact bölümündeki maili hacklersek domaini ele geçirebiliriz. Sonrada domaini kendi hostumuza yönlendiririz.Yani firmaya mail atarak yada erişim paneli var ise panelden şifrenin yeniden maile gönderilmesini isteyerek admin şifresini ele geçirebiliriz. Zaten domain bizim olmuş olur artık.

hack-siyahport

Şimdi uygulama kısmına geçelim:

NMAP ı açıp nmap http://www.abcdefg.com yazdık. Nmap ısS şeklinde bir komut verebilmemiz için sitede bir firewall olmaması gerekir. Bu arada serverin tam olarak ne olduğunuda anlamış olduk: Redhat / Gnu Linux i386 üzerinde Apache 1.3.31(Unix) Web Server. Çıkan listedeki open yazan portlar açık, closed yazan portlar ise kapalıdır. Sistemde açık bir port yakalarsak hemen telnet ip adresi ve port numarası şeklinde bir dos komutu veriyoruz. Daha sonra telnet bizi serverda bir yere atar burdan sonra duruma göre hareket ederiz. Mesela bash shell’e düşersek ID mize bakıp ona göre hareket ederiz. Root olmuşsak bu porta birisi daha önce erişmiş ve kullanıma açmış demektir.Ama local user isek local root exploitler ile sistemde root olmamız gerekiyor.

Listedeki portlarla devam edelim: Bu portlar üzerinde çalışan programlardan herhangi biri üzerinde bulduğumuz bir açık bizim sisteme girmemizi sağlar. Sisteme girdikten sonra root da olabiliriz. Peki bu programların açığını nerden bilece iz diye sordunuz sanırım İşte bunun için açık olan portlardan birinin exploitini bulup derleyeceğiz. Sonrada exploit yardımıyla sisteme sızmaya çalışacağız. Bundan sonrasında ise buldu umuz exploitin türüne göre ya root yada local kullanıcı oluruz. Eğer root olursak serveri istediğimiz gibi yönetiriz. Ama local isek yani shell düşersek şunları yapabiliriz:
İlk olarak id yazarak kullanıcı durumumuzu öğreniriz. Genellikle apache yazar. Sonrada sistem yetkilerimize bakarız. Neler yapabiliyoruz, sisteme dosya yükleyebiliyormuyuz? Bunları hep deneriz. E er sisteme dosya çekebiliyorsak ve gcc compilerda çalışıyorsa o zaman uname yazarak kernel çekirdek versiyonunu ö reniriz ve buna göre local root exploit ararız. Local root exploiti bulabilirsek sisteme çeker ve gcc ile derleriz. Daha sonra ise şunları yazarak root oluruz: ./exploit_adı . bunlarıda yapamıyorsak etc/passwd ve etc/shadow dizinlerine erişip erişemediğimizi kontrol ederiz. Bunların dışında mesela http://www.abcdefg.com sitesinin dizinini bulup içerisine index.html dosyası çekilebiliyormu diye deneyebiliriz. Eğer bunu başarırsak bu iş zaten bitmiştir, yani ilgili siteye index attık demektir. Ama root olduktan sonra serverda istediğimiz her şeyi yapabiliriz.