Ghidra 11.3 Yayınlanan: Yeni Özellikler, Performans Geliştirmeleri, Hata Düzeltmeleri


NSA’nın Araştırma Müdürlüğü, açık kaynaklı bir yazılım tersine mühendislik (SRE) çerçevesi olan Ghidra’nın 11.3 versiyonunu yayınladı. Kullanıcıların Windows, MacOS ve Linux dahil olmak üzere birden fazla platformda derlenmiş kodu incelemelerini ve incelemelerini sağlayan gelişmiş analiz araçları sunar.

Kılavuz 11.3

Ghidra 11.3, önceki sürümlerden gelen proje verileriyle tamamen geriye doğru uyumludur. Bununla birlikte, 11.3’te oluşturulan veya değiştirilen programlar ve veri türü arşivleri Ghidra’nın önceki sürümleriyle uyumlu olmayacaktır.

Visual Studio Kodu

Ghidra 11.3, vscodeprojectscript.java Ghidrascript’in (11.2’de tanıtıldığı) kod farsörü aracındaki iki yeni eylemle değiştirir:

  • Araçlar → VSCODE MODÜL Projesi Oluştur… – Hata ayıklama için başlatıcılar ve Ghidra uzantısı olarak dışa aktarma için bir mezun görevi de dahil olmak üzere, Ghidra Uzatma Geliştirme (eklentiler, analizörler, yükleyiciler vb.) İçin bir İskelet modülü olan bir Visual Studio Kodu Proje klasörü kurar.
  • Visual Studio kodu ile komut dosyasını düzenleyin (Script Manager’da) – Ghidra’nın Kullanıcı Ayarları Dizini’nde otomatik olarak oluşturulan bir VS kod çalışma alanında seçilen bir komut dosyası açar ve otomatik tamamlama ve navigasyon gibi özelliklerle Eclipse modern bir alternatif sunar.

Ghidra, VS kod yüklemenizi otomatik olarak bulmaya çalışır, ancak gerekirse bunu üzerinden yapılandırabilirsiniz Düzenle → Araç Seçenekleri → Visual Studio Kodu Entegrasyonu.

Pyghidra

Başlangıçta Pyhidra olarak Savunma Siber Suç Merkezi (DC3) tarafından geliştirilen Pyghidra Python Kütüphanesi, JPYPE aracılığıyla yerel bir Cpython 3 tercümanı içindeki Ghidra API’sına doğrudan erişim sağlar. Belirli bir örnek üzerinde analiz ayarlamak ve yerel olarak ghidra komut dosyalarını yürütmek için uygun araçlar sunar. Ayrıca Pyghidra, Cpython 3 desteğini doğrudan Ghidra GUI’ye entegre eden bir Ghidra eklentisi içerir.

Emülatör

Yeni Ghidra sürümü, dinamik analiz için performansı artırmak için tasarlanmış, tam zamanında (JIT) hızlandırılmış bir P-kod emülatörü sunuyor. Henüz UI’ye entegre olmasa da, JITPCodeemulator, mevcut PCodeemulator için yakın bir düşüş olarak komut dosyası ve eklenti geliştirme için kullanılabilir. Bu özellik, emülasyon hızını artırır, bu da kodu daha verimli bir şekilde analiz etmek ve yürütmek isteyen gelişmiş kullanıcılar için değerli bir araç haline getirir. Bununla birlikte, bu erken bir uygulama olduğundan, geliştiriciler potansiyel hatalar beklemeli ve kullanım ve entegrasyon detayları için Javadoc’a başvurmalıdır.

Hata ayıklayıcı

Ghidra 11.3, Legacy In-VM ve GADP başlatıcılarını ve konektörlerini kaldırarak tracermi tabanlı uygulamalarla değiştirerek hata ayıklama altyapısını kolaylaştırıyor. Bu temizliğin yanı sıra, bu eski konektörler için destekleyici kod ve API da ortadan kaldırılmıştır.

Ek olarak, sürüm çekirdek seviyesi hata ayıklama özelliklerinde bir adım ileriye işaret ediyor-Ghidra’nın LLDB konnektörü artık macOS çekirdeği hata ayıklamasını desteklerken, DBGENG konnektörü EXDI üzerinden çalışan bir Windows çekirdeğini hata ayıklayarak Ghidra’nın düşük seviyeli sistem analizi için yardımcısını genişletebilir.

İşlev grafiği

Yeni sürüm, işlev grafiğine birkaç geliştirme getirerek kod gezinme ve görselleştirmeyi daha verimli hale getiriyor. Yeni bir “Akış şeması” Düzen seçeneği, kontrol akışını analiz etmek için alternatif bir yol sunarak fonksiyon yapılarının organizasyonunu geliştirir. Kullanıcılar artık daha esnek bir çalışma alanına izin vererek uydu görünüm konumunu özelleştirebilir. Yeni bir kısayol (Ctrl + Alan), tam olarak yakınlaştırılmış veya dışa çıkma seçeneği ile listeleme görünümü ve işlev grafiği arasında hızlı geçiş sağlar ve ters mühendislik için daha pürüzsüz ve daha sezgisel bir iş akışı sağlar.

Kaynak Dosya Bilgileri

Ghidra 11.3, bir programın SourceFileManager kullanılarak kaynak dosyasını ve satır bilgilerinin entegre edilmesine izin vererek kaynak kodu eşlemesini geliştirir. Cüce, PDB ve GO analizörleri artık bu verileri otomatik olarak kaydeder ve kullanıcılar ayrıca kaynak bilgilerini programlı olarak ekleyebilir ve SourCemping Script kategorisinde örnek komut dosyalarıyla. Bu bilgiler, “Kaynak Harita” listeleme alanında veya SourceFilestablePlugin aracılığıyla görüntülenebilir. Pencere → Kaynak Dosyalar ve Dönüşümler Kod tarayıcısında.

Yeni “Kaynak görüntüle…” Eylem, kullanıcıların Eclipse veya Visual Studio kodundaki doğru satırda açılan kaynak dosyalarını açmasına izin verir, bu da yapılandırılabilir. “Kaynak dosyalar ve dönüşümler” Araç seçeneği. SourceFilestablePlugin ayrıca, kullanıcıların tercih ettikleri düzenleyiciye başlatmadan önce depolanan kaynak dosya yollarını değiştirmelerine ve hata ayıklama ve tersine mühendislik için iş akışını geliştirmelerine olanak tanır.

İşlemciler

Yeni sürüm, bu talimatlar için doğru anlambilim sağlayarak EVEX talimat yazma ve okuyarak maskeleme yazma ve okuyarak X86 AVX-512 desteğini geliştirir. TI_MSP430 ayrışması, işlemcinin derleyici spesifikasyonlarındaki güncellemeler yoluyla geliştirmeler görür ve analiz doğruluğunu artırır. Ayrıca, ARM VFPV2 talimat işleme düzeltildi ve önceki sökme sorunlarını çözdü.

String çevirisi ve metin araması

Ghidra 11.3, yeni bir libretranslate seçeneği ile String çevirisi desteğini genişleterek kullanıcıların artan gizlilik için kendi kendine barındırılan bir çeviri hizmetinden yararlanmalarını sağlar. Bu eklenti varsayılan olarak devre dışı bırakılır ve Dosya → Yapılandır. Ek olarak, Ghidra artık en son ayrışma sonuçlarını dinamik olarak dahil eden tüm ayrıştırılmış işlevlerde tam metin aramasını desteklemektedir. Bu özellik, aracılığıyla erişilebilir Arama → Ayrıştırılmış Metin…kod analizini geliştirir, ancak ikili karmaşıklığına bağlı olarak zaman alabilir.

Ghidra 11.3 GitHub’da mevcuttur.

Okumalı:




Source link