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

INTEL: Linux, 32 İşlemcili Sunucularda Çok İyi

anonim

INTEL 32 işlemcili Itanium sunucularında yaptığı veritabanı performans testlerinde denediği Linux´un Windows ve Unix ile yarıştığını gördü.

INTEL, Linux'un geniş veritabanlarını işlemedeki performansını ölçmek için yaptığı testlerde saniyede 600.000 hareket (transaction) ile diğerlerine göre genç sayılabilecek bir işletim sisteminin büyük rakiplerinden hiç de aşağı kalır yanı olmadığını açıkladı.

Slackware 12 çıktı

Onur_Yerlikaya

Slackware'in 12 dağıtımı dün gece çıktı. Sunuculara aşırı yüklenme olmasın diye şu anda ftp'de yok diğer yansılara da cd-dvd görüntüleri ( .iso ) yerleştirildikten sonra açılması beklenen Slackware hayranlarına duyurulur.

1.Linux ve Özgür Yazılım Şenliği 16-19 Mayıs 2002

polat

Bu baharda bütün penguenler bir araya geliyor (This spring all the penguins are getting together linux and free software festival). Slogan bu. 16-19 Mayıs'ta Ankara'da görüşmek üzere. Ayrıntılar senlik.linux.org.tr

Acarix: Taşınabilir Türkçe GNU/Linux ve fazlası...

anonim

İstanbul Bilgi Üniversitesi Bilgisayar Bilimleri Bölümü sayfalarını gezerken Acarix isimli bir projeye rastladım.

Acarix, GNU/Linux temelli bir işletim sistemi projesi ve anlaşılan üniversitede de aktif olarak kullanılıyor. Proje hakkındaki detayları cs.bilgi.edu.tr/~mgencer/acarix/ adresinde bulabilir, Acarix'i church.cs.bilgi.edu.tr/acarixdownloads/ adresinden indirebilirsiniz.

KDE 3 Çıktı

tongucyumruk

Özellikle Linux ile yeni tanışanların en çok kullandığı masaüstü ortamı olan KDE'nin 3. sürümü bugün duyuruldu... Yeni eklenen özellikler arasında yeni Print Management programı ve Konqueror'a gelen yeni DHTML desteği dikkat çekiyor. Bunun ddışında diğer KDE programları içinde yenilikler mevcut.