Linux Kernel Fonksiyonlarını 'Hook'lamak

0
anonim
Linux çekirdeğindeki bir fonksiyonun işleyişini ona zarar vermeden değiştirmek istediğimizi düşünelim. Kaynak kodları değiştirir tekrar derleriz ancak bu yazıda daha farklı bir yöntem izleyecegiz ve hafızadaki kernel'a tamamen geçici bir yama yapacağız.

Bunu, 90ların başlarında MS-DOS virüslerinin çok sevdiği bir tekniği Linux'a uyarlayarak gerçekleştireceğiz.

Hooklamak istediğimiz fonksiyonun başına jmp hook instruction'ını yazdığımızı düşünelim. Gelen her çağrı bize yönlendirilecektir fakat üzerine yazdığımız bölgeyi kullanılamaz hale getirmiş oluruz. Üzerine yazdığımız bölüm kadar yeri yedekleyelebiliriz.

Linux çekirdeğinde 'kernel export'ları nasıl 'hook'lanacağı üzerine olan bu yazıyı ve ilgili kaynak kodları http://blog.int6.net/media/kit.tar.gz adresinden edinebilirsiniz.

Görüşler

0
auselen
Ben de strace'in reklamını yapayım.

Daha önce kullanmayanlar için kısa açıklama; linux'ta sistem çağrılarını gözlemlemenizi sağlayan bir program.

Örneğin komut satırında "strace ls" derseniz, ls komutun hangi sistem komutlarını çağırdığını görürsünüz.

Bundan da güzeli, sistemin bu uygulamayı çalıştırmadan önce neler yaptığını, mesela hangi sistem kitaplıklarını açtığını görürsünüz.

Sistemde çalışmayan bir uygulama olduğunda oldukça yararlı olduğunu söyleyebilirim.

http://en.wikipedia.org/wiki/Strace
http://sourceforge.net/projects/strace
0
Tarık
reklama ne hacet, tepe tepe kullanıyoruz. bende bir bağlantı atayım da tam olsun :) ayrıca aynı yerden şunu da yiyebilmekteyiz.
0
Tarık
ayrıca hdd ye indirilip yazıcı çıktısı alınası...
0
FZ
Bu tür yazıların devamını bekliyoruz ;-)
0
realist
Tüm FM yazıları böyle olsun, beni aşsın, afallatsın. Nasıl yapıldığını anlamam için cilt cilt okumam gereksin.
0
FZ
Ve sonra FM sadece tek bir konu üzerinde 100 cilt kitap okuyup 15 yıldır çalışan birkaç uzmanın uğrak noktası olsun diğer herkes seyirci kalsın ve bir süre sonra onlar da sıkılıp, pek bir şey anlamayıp gitsinler :-p
0
mos
ben de bu bakış aşısından yanayım :)
0
anonim
Ben anladım sanırsam.

önce o büyük düğmeye basıyoduk deilmi?...
Görüş belirtmek için giriş yapın...

İlgili Yazılar

İdeal taşınabilir Linux sistem

sundance

Gittiğiniz her yere götürmek istediğiniz bir Linux sisteminiz olsun mu istiyorsunuz? Fakat avuçiçi bilgisayarlar size ara geçiş cihazları gibi mi geliyor? İlla klavyesi olsun mu diyorsunuz?

Son olarak aranızda Sinclair'ın klavyesini özleyenler var mı? İşte huzurlarınızda Sharp Zaurus SL-C3100. 300 gram ağırlığında, harddiski var...

Linux Counter: Hala sayılmadınız mı???

conan

Off! Çok zaman olmuş birşeyler yazmayalı! Neden bu kadar tembelleştim acaba? :P Neyse şu tembelliğime "Linux Counter" sitesi konusunda birşeyler yazarak son vermeyi deneyeyim! :)

Linux Counter adından da anlaşılacağı üzere dünya üzerinde linux kullanıcılarını ve linux kullanan bilgisayarları saymayı amaç edinmiş bir site.

10 Milyona Suse 7.1-batan geminin malları

sundance

PC Net bu ay, bilişim sektörümüzden bazı firmaların da desteği ile özel bir sayı çıkardı. Büyük gazete bayilerinde halen bulabileceğiniz bu sayı SUSE Professional 7.1 sürümünü ve Türkçe bir installasyon ekini içeriyor.

\r\r\r \r\r\r Hem böyle bir harekete destek vermek hem de sizlere kılavuzluk etmek için alıp inceledik...

Microsoft Windows: Insecure by Design

DJENGIN

Washington Post´ta yayınlanan “Microsoft Windows: Insecure by Design” başlıklı makalesinde Pegoraro, alternatif işletim sistemleri Mac OS X ve Linux’un daha korumalı olduğunu belirtirken Microsoft firmasının virüs koruma stratejilerini eleştiriyor. Kısa bir süre önce dünya çapında milyonlarca kullanıcı So.Big virüsü saldırısını yaşadı. E-posta kutuları şişerken internet trafiği yavaşladı, anonim e-postalar kutuları doldurdu.

Linux Source Code`unu dinleyin!

raistlinthewiz

Free Radio Linux, Linux 2.4.18 source codeunu broadcast ediyor! 4,141,432 satır içeren kodun okunması 593.89 gün sürecek. Evet hemen siz de kodu dinlemeye başlayın! http://radioqualia.va.com.au/freeradiolinux/