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

New York Linux Expo´dan izlenimler (Güncellendi)

oktay

Bu haberi New York Javits Center Fuar Merkezi'nde şu anda 3. günü sürmekte olan Linux World Expo 2003'den yazıyorum.

GNUstep live CD

yuxel

Freasmeat'deki çoğu projeye el ayak olmuş, Debian'ın ve çiftçinin dostu Gürkan (tarzeau) Şengün'ün yeni uğraşı; GNUstep live CD. Neredeyse tüm programların GNUstep projesinden geldiği bu Morphix tabanlı live CD içinde,Blender, MPlayer gibi programlar; NetHack, Jump n Bump gibi oyunlar da mevcut. Farklı bir deneyim isteyenler, sabit diske de kurulabilen bu dağıtımı deneyebilirler. Bu da ekran görüntüsü
Download : iso / md5sum

Reiser4 Gümbür Gümbür Geliyor

Soulblighter

Slackware kullananlar bilir ReiserFS dosya sistemini. (Gentoo, Lindows ve SuSE de kullanılıyor sanırım) ReiserFS, sağladığı performans ile kendini kanıtlamış bir dosya sistemi. Hans Reiser tarafından yazılan ReiserFS dosya sisteminin yeni sürümü olan Reiser4, yakında çıkıyor.

Linux çekirdeğinin 2.6 sürümü ile birlikte gündeme gelen Reiser4, ReiserFS'in bir üst sürümü veya güncellenmiş hali değil. Tamamen yeni bir dosya sistemi. Sağladığı özellikler gerçekten heyecan verici...

Linux Foundation Bireysel Üye Alımına Başladı

javamorg

Linux Foundation, Eylül ayından itibaren bireysel üyelik sistemini devreye soktu.

Yeni bir dağıtım: Hadron

purak

Hadron Gentoo tabanlı, binary ve taşınabilir bir GNU/Linux dağıtımı oluşturma projesidir. Kendine has bir paket/modül yönetim sistemi vardır. Asıl geliştirilme amacı, USB belleklerinizde çalışma ortamınızı taşımanız olmasına rağmen; CDROM ya da sabit disk üzerinden de kolaylıkla çalışabilir.