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

Slackware 10.2 Duyuruldu

GolgeHan

Unix'e en çok benzeyen Linux işletim sistemi Slackware'in 10.2 sürümü duyuruldu. Çekirdek 2.4.31, fakat kurulumda açılış esnasında SCSI ,RAID, SATA desteği olan test26.s ile sistemi kurabilirsiniz. Masaüstü ortamı olarak Kde 3.4.2 ve XFce 4.2.2 dağıtımla birlikte sunulmakta.

Ayrıntılı bilgi için: http://www.slackware.com/announce/10.2.php

Yılın Penguenleri Ödülleri için aday gösterme süreci başladı

dfisek

Linux Kullanıcılari Derneği, her yıl olduğu gibi Yılın Penguenleri Ödulleri'ni veriyor. Geçen yıl olduğu gibi 6 kategoride verilecek olan ödüller, sizlerin göstereceğiniz adaylar arasından dernek üyeleri tarafından yapılacak oylama ile belirlenecek. [ Ayrıntılı Bilgi ]
Editörün notu: Şimdiden güzide editörümüz Emre "FZ" Sevinç, En Çalışkan Penguen, Fazlamesai.net televizyon programı da En İyi Basılı/Görsel İçerik Çalışması kategorilerinde aday gösterilmişler.

Novell+RedHat+Sun = Masaüstü Linux

yuxel

Gizli haber alma örgütü Slashdot'a göre Novell, Redhat ve Sun, bir Linux masaüstü için güçlerini birleştirmiş. Ancak hangi masaüstü ortamının seçileceği tartışma konusu. Tartışma, Ximian'ı, Gnome'u elinde bulunduran Novell'ın, SuSE'yi de bünyesine kattıktan sonra en büyük sponsorlarından birisi SuSE olan KDE'nin durumu ve SuSE gibi KDE'yi en iyi taşıyan dağıtımlardan birisinin Gnome'a daha fazla ağırlık vermesi ile ilgili.

ODTÜ Bilgisayar Topluluğu IX. Geleneksel Programlama Yarışması

hayalci

ODTÜ Bilgisayar Topluluğu'nun düzenlediği Geleneksel Programlama Yarışması'nın dokuzuncusu için ön elemeler başladı. Finali 30 Nisan 2006'da yapılacak olan yarışmanın ön eleme sorularına ve yarışmayla ilgili detaylara http://yarisma.cclub.metu.edu.tr adresinden erişilebilir. Son cevap gönderme tarihi 20 Nisan 2006 olan ön eleme sorularının puanlandırılmasıyla seçilecek olan finalistler, 30 Nisan 2006 tarihinde ODTÜ Bilgisayar Mühendisliği Bölümü'nde yapılacak olan finale katılmaya hak kazanacaklar. Ayrıca finallerden bağımsız olarak özel ödüllü bir soru da tüm yarışmacılar tarafından cevaplanabilir. Finalde dereceye giren ve özel ödüllü sorudan en yüksek puan alan yarışmacılara finalle aynı gün düzenlenecek olan törende ödülleri verilecektir. Dünyadaki benzerleri arasında (IOI, ACM, Tübitak) Linux platformunda düzenlenmiş yarışmaların ilki olma ayrıcalığına sahip olan yarışmaya, bilgisayar bilimine ilgi duyan ve gönül veren tüm üniversite lisans öğrencileri davetlidir.

One linux to rule them all?

conan

Birkaç zamandır yapılan spekülasyonların sonucunda 4 tane büyük linux dağıtıcısı bir çatı altında standartlaşma yönünde gideceklerini açıkladılar. UnitedLinux adı altında başlatılan bu çalışmanın başını Caldera, SuSE, TurboLinux ve Conectiva çekiyorlar.

Caldera'nın CEO'su Ransom Love'un yaptığı açıklamaya göre bu kararın altında yatan neden bir Linux dağıtımında çalışan bir programın başka birinde çalışmaması. (Nasil oluyorsa?) Ransom bahsetmese de asıl nedenin finansal olduğu söylentileri de dolaşmıyor değil.