Ankara
0 (312) 276 75 93
info@billgatesweb.com

Java Araçları – Blog Yazma – Web Tasarımı Yapımı – Web Tasarımı YouTube Videosu Yapımı – Web Sitesi Tasarlama Fiyatları

Web Danışmanlık Hizmeti, Seo Hizmeti Al, Mobile Uygulama Yaptır, Back Link Satın Al, Blog Yazdırmak İstiyorum, Makale YAZDIRMA siteleri, Parayla makale YAZDIRMA, Seo makale fiyatları, Sayfa başı yazı yazma ücreti, İngilizce makale yazdırma, Akademik makale YAZDIRMA, Makale Fiyatları 2022, Makale yazma, Blog Yazdırma, Akademik Danışmanlık, Tercüme Danışmanlık & 0 (312) 276 75 93

Java Araçları – Blog Yazma – Web Tasarımı Yapımı – Web Tasarımı YouTube Videosu Yapımı – Web Sitesi Tasarlama Fiyatları

 Java Komut Dosyası – Blog Yazma – Web Tasarımı Yapımı – Web Tasarımı YouTube Videosu Yapımı – Web Sitesi Tasarlama Fiyatlarıv

Java Araçları

Hiçbir güvenilir araç, ikili düzeltme ekini güvenli bir şekilde yapamaz. Marjinal başarı ile bulabildiğim ve kullanabildiğim tek iyi yardımcı program, Execution kodlama grubunun bir üyesi tarafından gösterişli Death adıyla yazılmış bir Function Changer’dı. Şu anda barındırılan Yürütme grubunun Web sitesinden indirilebilir.

Yardımcı programın arkasındaki fikir, gereksinimlerimize mükemmel bir şekilde uyuyor. İşlev Değiştirici, bir Win32 DLL dosyasından dışa aktarılan bir işlevi başka bir DLL dosyasından dışa aktarılan bir işlevle değiştirir. Değiştirme işlevi, yığının durumunu korumak için aynı sayıda parametreye ve aynı arama stiline sahip olmalıdır.

OSMemoryInfo.dll dosyasının getPhysicalTotal() yöntemini, her zaman 10 değerini döndürecek şekilde sabit kodlanmış başka bir DLL’den alınan bir saplamayla yamalamak için bu yardımcı programı kullanacağız. Liste, yamanın kaynak kodunu gösterir.

Düzeltmeyi içeren DLL OSMemoryInfoPatch.dll olarak adlandırılır ve bu kitap için önceden oluşturulmuştur. Bir C derleyicisi kurmanız ve derleme betiğini bunun için güncellemeniz koşuluyla, CovertJava/bin/build_native.bat betiği kullanılarak yeniden oluşturulabilir. OSMemoryInfo.dll dosyasının yedek bir kopyasını oluşturun ve İşlev Değiştirici’yi çalıştırın.

İşlev Değiştirici Kullanıcı Arabiriminde, Yama Yapılacak DLL olarak OSMemoryInfo.dll’yi belirtin ve değiştirilecek işlev olarak Java_covertjava_nativecode_ OSMemoryInfo_getPhysicalTotal@8’i (liste kutusundaki ikinci öğe) seçin. OSMemoryInfoPatch.dll’yi Değiştirici DLL olarak belirtin ve değiştirilecek işlev olarak Java_covertjava_ nativecode_OSMemoryInfo_getPhysicalTotal@8’i seçin.

İşlevi Değiştir düğmesine tıklayın ve yardımcı programın herhangi bir hata bildirmediğinden emin olun. Şimdi Java uygulamasını çalıştırmayı deneyin ve yamanın işe yarayıp yaramadığını görün. Geçerli JDK’nın 1.2 veya 1.3 olduğundan emin olun ve CovertJava/bin/OSMemoryInfo.bat’ı çalıştırın. Makinemde aşağıdaki çıktıyı aldım.

Java yerel yöntemi, makinemdeki toplam fiziksel belleğin gerçek değeri olan 535121920’yi yazdırmak yerine artık 10 değerini döndürüyor. Yama işe yaradı, hadi arkasındaki sihri inceleyelim. İşlev Değiştirici, yöntemin orijinal kodu üzerine önyükleme kodu yazarak ve değiştirme prosedürüne bir çağrı ekleyerek çalışır.


Java SE nedir
Java indir
Java JRE Nedir
Java açılımı
Java EE Nedir
Java kullanım alanları
Java Nedir
Java download


Özgün işlev kodunun başlangıcında yazılan önyükleme kodu, bir LoadLibrary() API çağrısı kullanarak yama DLL’sini yükler ve GetProcAddress() kullanarak değiştirme işlevini bulur. Bu, Win32 platformunda bir DLL dosyasını dinamik olarak yüklemenin standart bir yoludur. Değiştirme işlevi yerleştirildikten sonra, kontrol ona bir JMP komutu aracılığıyla aktarılır. Önyükleme kayışının montaj kodu gösterilir.

Denetim bir JMP yönergesi aracılığıyla aktarıldığından, değiştirme yordamı önyükleme koduna geri dönmek yerine doğrudan arayana geri döner. Kodun analizi, İşlev Değiştirici tasarımının sınırlamalarını anlamamızı sağlar. Önyükleme kodunun boyutu, yama DLL’sinin uzunluğuna ve işlev adına bağlıdır, bu nedenle yaklaşım çok küçük yerel işlevler için çalışmaz. Önyükleme kodu orijinal kodu geçersiz kıldığından, orijinal işlev de çağrılamaz.

İşlev Değiştirici ile ilgili başka bir sorun da, yama JDK 1.4.2 altında çalışırken JVM’yi çökertmesi. Montaj kodunun geçerli olmasına ve yamalanmış DLL’nin C programları tarafından sorunsuz bir şekilde yüklenebilmesine rağmen, JVM’nin dahili durumuna müdahale ediyor gibi görünüyor.

İşlev Değiştirici, düzeltme ekini kolaylaştırır, ancak yardımcı program güvenilir değildir. Bu nedenle, yamayı manuel olarak uygulamak ve yüklemek için güçlü bir kitaplık kullanmanın alternatif bir yaklaşımına da bakacağız.

Microsoft Detours Kitaplığını Kullanarak Manuel Yama Uygulaması

Detours, ikili düzeyde PE dosyalarıyla çalışmaya ve çalışma zamanında işlevleri yakalamaya yönelik bir Microsoft kitaplığıdır. C programlarında kullanılabilecek sağlam ve iyi yazılmış bir çerçevedir.

Detours kitaplığının ana özellikleri şunlardır:

  • Yürütme zamanında işlev engelleme—İşlevler çalışma zamanında diskte değil bellekte yakalanır. Bu, belirli lisans sözleşmesi kısıtlamalarının üstesinden gelmeye de yardımcı olabilecek daha temiz bir yaklaşımdır.
  • Orijinal fonksiyon çağırma—Detours, yamalı fonksiyonun kodunu korur. İşlev Değiştirici’den farklı olarak Sapmalar kitaplığı, yol koduyla geçersiz kılmadan önce orijinal işlev kodundaki makine talimatlarını tramplen adı verilen bir varlığa kaydeder. Bu, orijinal işlev etrafında işlem öncesi ve sonrası mantığa izin verir.
  • Sapmanın az yer kaplaması—Yoldan sapma, yalnızca 4 bayt gerektiren ve bu nedenle çok kısa işlevler için de çalışan yama mantığına bir JMP olarak uygulanır.
  • DLL ekleme için içe aktarma tablosu düzenleme—Detours, yürütülebilir bir PE’nin içe aktarma tablosunu düzenlemek için işlevler sağlar.
  • Bu, bir hedef işlev için dolambaçlı yol olarak bir düzeltme eki uygulayan ve yükleyen bir DLL eklemek için kullanışlıdır. İçe aktarma değişiklikleri diskteki bir dosyaya da kaydedilir.
  • Temiz üst düzey C API—Kitaplık iyi tasarlanmış ve kullanımı oldukça kolaydır. Yine de Win32 mimarisinin anlaşılmasını gerektirir, ancak montaj kodlamasını gereksiz kılar. Düzeltme eki ve sapma, C işlevleri olarak kodlanmıştır ve durdurma yalnızca birkaç satır kodla kurulur.

Detours kitaplığı indirilebilir. İyi dokümantasyon ve birçok örnekle birlikte gelir ve bu kitap Java merkezli olduğundan, C kodu yazmak için zaman harcamayacağız. Liste, bir Win32 Uyku işlevini yamalayan ve bir programın uykuda geçirdiği toplam süreyi ölçen bir örnekten birkaç önemli alıntıyı da gösterir.

Listelemedeki kod, Sleep() işlevi için TimedSleep() adlı bir sapma (yama) kurar. Orijinal Sleep() işlevi, UntimedSleep() adı verilen tramplen aracılığıyla hala çağrılabilir. Sapmaları bir JNI işlevi için kullanmak üzere, hedef işlevle aynı imzaya sahip bir değiştirme işlevinin yazılması ve bir DLL içine yerleştirilmesi de gerekir.

Bu DLL’nin DllMain() işlevi, DetourFunctionWithTrampoline(); daha sonra DLL’nin yamalanan JNI işlevini içeren DLL veya EXE’ye ilk aktarma olarak eklenmesi de gerekir.


Web sitelerinizi, arama motorlarında en yukarı getirmek adına sizlere 3 adet paket öneriyoruz. Bu paketler sayesinde web siteleriniz aramalarda 1 yıl içerisinde en yukarıya tırmanacaktır. 

1) Backlink Paketi  50 $ (Yıllık Ücret)
2) Hızlandırma Paketi 300 $ (Yıllık Ücret)
3) Kelime Yönlendirme Paketi 150 $ (Aylık Ücret)


 

 

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

× Bize Whatsapp'tan Ulaşın