4 Ağustos 2011

Alias, linux işletim sistemlerinde kendi girdiğiniz kelimeyle  komut satırında istediğiniz komutu çalıştırmanıza yarıyan oldukça hoş bir linux komutudur. Kendi komutunuzu oluşturmanıza izin veriyor.Mesela hergün girmeniz gereken uzunca bir komut var ama bunu her gün yazmak istemiyorsunuz.Bunu yazacagınız tek kelime ve ardından enter ile halledebilirsiniz.Yine aynı işlemi fonksiyon yazarak da gerçekleştirebilirsiniz. Örneklerle konuya açıklamaya ve daha sonra güvenlik tarafında nasıl kullanılabileceğine değineceğim

Program Kurulumu:

Herseferinde program kurmak için sudo apt-get install programadi şeklinde bir komut yazmak yerine
 kur programadi şeklinde bir komut girmek isteyebilirsiniz.Bunun için şöyle bir alias tanımlayabilirsiniz.


Şimdi snort kurmak istiyorsanız gireceğiniz komut aşağıdaki gibi:


















Aynı işlemi shell fonksiyon yazarak oluşturalım:






Browser ile gezinme:
Networkpentest.net web sitesine girmek istiyorsunuz,komut satırından "pentest" demeniz yeterli olacaktır.Bunun için yazılacak alias aşağıdaki gibidir.



Şimdi siteye gitmek istiyorsanız yapacağınız şu:


Sonuç browserda istediğiniz sayfa açılacaktır.


Şimdi aynı işlemi bir shell fonksiyonu oluşturarak yapalım;





SYN Flood Tesbiti:
Biz olaya güvenlik tarafından yaklaşalım.Syn flood saldırısı alıp almadığınızı test etmek için "netstat -ant | grep SYN_RECV"  komutunun yerine komut satırına "saldırıvarmı"  yazıp sonuçlarını görebilirsiniz.


Bundan sonra komut satırında saldirivarmi  yazıp sonuçlarını görebilirsiniz.Bizde herhangi bir Syn flood atağı olmadığı için sonuç temizdir :) Aksi halde birçok SYN_RECV paketi ile karşılacaktık.




Şimdi aynı komutumuzu bu sefer shell fonksiyon yazarak oluşturalım:






Syn Trafik Kaydı:
Şimdi de saldırı anında paket analizi için kullanabileceğimiz küçük bir örnek olan,sunucumuz üzerindeki tüm gelen giden SYN paketlerini tcpdump ile yakalayıp networkpentest dosyasına kaydeden komutu alias ile  oluşturalım,alias'ın ismine de synyakala diyelim.
Şimdi de komutu koşturalım;
Aynı  işlemi şimdi shell fonksiyonu yazarak oluşturalım:







NOT:
tcp[13]=2 Syn paketlerini yakalayabilmek için kullandık diğer paketler için şunlar kullanılabilir.
tcp[13]=1 ==>>  Fin için
tcp[13]=4 == >> Rst için
tcp[13]=8 ==>>  Psh için
tcp[13]=16 ==>>Ack için
tcp[13]=32 ==>>Urg için
tcp[13]=18 ==>> SYN + ACK
tcp[13]=6 ==>>   SYN + RST   kullanılabilir.

HTTP GET Flood Tesbiti:
Http GET flood saldırısı aldığımızı düşünelim.Sistemimize gelen http get isteklerini ve hangi hosttan geldiğini  tesbit eden  bir alias oluşturup httpgetyakala ismi ile çağıralım.



Sonuçlarına bakalım:












Aynı komutumuzu bir shell fonksiyon yazarak çagıralım:






Tüm sisteminiz üzerindeki mevcut oluşturulmuş alias'ları görebilmek için alias -p komutu aşağıdaki gibi girilebilir.









İstediğiniz herhangi bir mevcut alias'ı silmek için unalias isim şeklinde bir komut koşturulabilir.



Görüleceği gibi aşağıda saldirivarmi aliasımız artık yok.







İşin Alias kısmı oldukça kolay ve kullanışlı.Shell function kısmı ise programlama dilleri seviyesinde derinleştirilebilir.Komplex uygulamalar oluşturulabilir.Ben yüzeysel olarak konu için onemli kısmı üzerinde durdum.
Shell fonksiyon oluşturma işlemlerini bir text editörü aracılığı ile açılan bir dosyada da yazabiliriz.Daha sonra yazdıgımız scrip ile aynı dizinde olmak şartı ile ./komut şeklinde çalıştırıp çıktıyı görebiliriz.Bizim komutlarımız bash script üzerinde yorumlanmaktadır.Diğer programlama dilleri(Pyhton,perl,awk v.s) scriptlerimizi de bu şekilde çalıştırabiliriz.


Bu komut oluşturma işlemleri,nerede işimize yarıyabilir?Özellikle saldırı alınan durumlarda, zaman bizim için oldukça kıymetli olacaktır. Gerekli tetkikleri, alınacak network paket kayıtları veya aktif edilecek snort imzaları vs. bir çok işlem için bize zaman kazandırabilecektir. Ayrıca komut satırından girilecek tüm komutları türkçeleştirebilirsiniz.Veya yapılması tehlikeli olan remove komutları vs.(rm -rf) şeklinde yanlışlıkla silinebilecek komutlar girildiğinde bunlar rm -i şeklinde icra edilmesi ve yapılacak işlem için bize onay verdirilmesi sağlanabilir.Bundan sonrası hayal gücünüze kalmış :)




0 yorum:

Yorum Gönder

Her türlü eleştiri,yorum,ekleme ve düzeltmeye yönelik fikirlerinizi paylaşabilirsiniz.Hakaret içeren yorumlar filtrelenmektedir.

Makalelerin kötüye kullanım kullanıcının sorumluluğundadır. | networkpentest.net. Blogger tarafından desteklenmektedir.