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

Linux for Playstation I & II, bu sefer tamamı bedava ve açık!

larweda

Sony'nin Linux`lu Playstation II kutusunu çıkaracağını duyurmasının ardından PS üzerinde Linux çalıştırabilmek için sabırsızlıkla bekleyenler için bu sefer tamamı açık kodlu olan ve bedava olan bir alternatif var: Çek bir firma olan Blokman Trading`in Runix'i. Playstation 1 için 2.4 Linux çekirdeğinin alfa sürümünü piyasaya süren Blokman Trading, temmuz ayında çekirdeğin beta sürümünü, ekim ayında da kararlı bir sürümünü çıkaracağını duyurdu. Playstation II için de bir çekirdek yazıldığı söyleniyor, ancak PS2 için verilen bir tarih yok.
Sony, Linux for Playstation II`den sadece 1000 adet üreteceğini ve sadece Japon pazarında piyasaya süreceğini duyurmuştu.

Türkiye´de Linux - Son Durumlar

FZ

Brezilya´daki son gelişmeleri bir önceki haberimizde okudunuz. ebola arkadaşımızın haklı talebi üzerine bir bakalım bakalım memleketimizdeki GNU/Linux´un kamuda kullanımına dair son durumlar neler.

Internet üzerinde varolan web sitelerinin teknik altyapısı konusunda bilgi veren netcraft.com isimli web sitesi bilgilerine göre Türkiye’de toplam 482 tane gov.tr uzantılı alan adı bulunuyor. Bu web sitelerinin büyük bir çoğunluğu yerel yönetimler tarafından hazırlanmış. Bu siteler arasında valilikler, belediyeler ve hastanelere ilişkin web siteleri yer alıyor. Bunun yanında bakanlıklar, Başbakanlık, Cumhurbaskanlığı ve bunlara bağlı kurum ve kuruluşlara ilişkin web siteleri de gov.tr uzantılı siteler arasında listeleniyor. Netcraft.com üzerinde yapılan araştırmalara göre Türkiye’deki kamu web sitelerinin %30’unda Linux işletim sistemi çalışmakta.

2038 Yılı Problemi

raistlinthewiz

Unix sistemlerde ki 2038 yılı problemi üzerine bir yazı:
http://mail.baskent.edu.tr/~20194562/y2k38.txt


Not: Yazıyı yazma amacım tamamen konunun ilginç gelmesi ve konu üzerinde daha fazla bilgi sunmak içindir. Y2K'daki gibi felaket tellallığı değildir.

Not2: Yinede gömülü (embedded) gömülü sistemlerde sorun yaşanabilir

Editörün Notu: Bu problem 2001'de 1 Ocak 1970'den bu yana (Unix'in doğumgünü) saniye sayısı 1 Milyarı vurduğunda da yaşanmış, Digitürk hizmeti o gece patlamıştı mesela ;)

Distrowatch.com Türkçe!

anonim

Linux dağıtımları paket karşılaştırma ve haber sitesi Distrowatch sitesi dil desteklerinin arasına Türkçe'yi de katmış!
Bir de haberleri Türkçe alabilseydik, tadından yenmezdi...

Gelişmiş Klavyeler için GNU/Linux Desteği

FZ

Paraya kıyıp üzerinde bir sürü ekstra tuş bulunan bir Multimedia ve Internet destekli klavye aldınız. Veya süper ergonomik bir Logitech klavyeniz var. Haliyle üzerindeki ekstra tuşları kullanarak GNU/Linux ortamında kolayca CD'ye, xmms'e, Internet tarayıcısına falan müdahale etmek istiyorsunuz. Peki bunu nasıl yapacaksınız? Tabii ki Multimedia ve Internet Klavyeler: LinEAK Projesi başlıklı yazıyı okuyarak ;-)