[ad_1]
Bir yazılım paketinde istediğiniz bir özelliğin eksik olmasından dolayı hiç hayal kırıklığına uğradınız mı? En iyi senaryoda, yazılım açık kaynak olacaktır ve sadece kodu değiştirip yeniden oluşturabilirsiniz. Ancak çoğu durumda yazılım kapalı kaynaktır. Bu durumuda [Faster than lime], denetleyicileri desteklemeyen bir SNES öykünücüsü (Snes9X) buldu. Yani biraz Rust ile, DLL enjeksiyonu yoluyla öykünücüye enjekte edilebilecek bazı kodlar yazdı.
Tekniği gösteren harika bir öğretici. kullanan bir Rust projesi oluşturarak başlar. DLL-Şırınga sandık (bağımlılık yönetiminin paslı versiyonu). Bu sandık, bir DLL dosyasının bir hedef sürece enjekte edilmesiyle ilgili ağır işlerin çoğunu yapıyor. Yolculuğun geri kalanı, Windows belgelerini gözden geçirmek ve özellikleri uygulamak için mükemmel bir süreçtir. DLL sadece denetleyiciyi okur ve ardından programa doğru girişi gönderir. Sonunda, [Faster than lime] harika bir enjekte edilmiş DLL’ye sahip ve bir enjeksiyon ortamında Rust hakkında bilgi edinmek ve hata ayıklamak için harika zaman geçiriyoruz!
En son DLL enjeksiyonunu ele aldığımızdan bu yana bir süre geçti ve sürecin nasıl geliştiğini görmek güzel. Aradan sonra video.
[ad_2]
Kaynak : https://hackaday.com/2022/07/11/injecting-a-bit-of-rust-via-dll/