.. | ||
blobrunner.md | ||
README.md |
{% hint style="success" %}
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Eğitim AWS Kırmızı Takım Uzmanı (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Eğitim GCP Kırmızı Takım Uzmanı (GRTE)
HackTricks'i Destekleyin
- abonelik planlarını kontrol edin!
- 💬 Discord grubuna veya telegram grubuna katılın ya da Twitter'da 🐦 @hacktricks_live'ı takip edin.**
- Hacking ipuçlarını paylaşmak için HackTricks ve HackTricks Cloud github reposuna PR gönderin.
Wasm Decompilation and Wat Compilation Guide
WebAssembly alanında, decompiling ve compiling için araçlar geliştiriciler için gereklidir. Bu kılavuz, Wasm (WebAssembly binary) ve Wat (WebAssembly text) dosyalarını işlemek için bazı çevrimiçi kaynaklar ve yazılımlar tanıtmaktadır.
Online Tools
- Wasm'ı Wat'a decompile etmek için Wabt'nin wasm2wat demo aracı kullanışlıdır.
- Wat'ı tekrar Wasm'a compile etmek için Wabt'nin wat2wasm demo amaca hizmet eder.
- Başka bir decompilation seçeneği web-wasmdec adresinde bulunabilir.
Software Solutions
- Daha sağlam bir çözüm için, PNF Software tarafından JEB geniş özellikler sunmaktadır.
- Açık kaynak projesi wasmdec de decompilation görevleri için mevcuttur.
.Net Decompilation Resources
.Net bileşenlerini decompile etmek için şu araçlar kullanılabilir:
- ILSpy, ayrıca Visual Studio Code için bir eklenti sunarak çapraz platform kullanımına olanak tanır.
- decompilation, modification ve recompilation ile ilgili görevler için dnSpy şiddetle tavsiye edilir. Bir yönteme sağ tıklamak ve Modify Method seçeneğini seçmek, kod değişikliklerine olanak tanır.
- JetBrains'in dotPeek .Net bileşenlerini decompile etmek için başka bir alternatiftir.
DNSpy ile Hata Ayıklama ve Günlükleme Geliştirme
DNSpy Günlükleme
DNSpy kullanarak bir dosyaya bilgi kaydetmek için aşağıdaki .Net kod parçasını ekleyin:
%%%cpp using System.IO; path = "C:\inetpub\temp\MyTest2.txt"; File.AppendAllText(path, "Şifre: " + password + "\n"); %%%
DNSpy Hata Ayıklama
DNSpy ile etkili bir hata ayıklama için, hata ayıklamayı engelleyebilecek optimizasyonların devre dışı bırakılmasını sağlamak için Assembly attributes ayarlarını ayarlamak üzere bir dizi adım önerilmektedir. Bu süreç, DebuggableAttribute
ayarlarını değiştirmeyi, bileşeni yeniden derlemeyi ve değişiklikleri kaydetmeyi içerir.
Ayrıca, IIS tarafından çalıştırılan bir .Net uygulamasını hata ayıklamak için iisreset /noforce
komutunu çalıştırmak IIS'i yeniden başlatır. DNSpy'ı hata ayıklama için IIS sürecine eklemek için, DNSpy içinde w3wp.exe sürecini seçip hata ayıklama oturumunu başlatmak talimatları verilmektedir.
Hata ayıklama sırasında yüklü modüllerin kapsamlı bir görünümü için, DNSpy'deki Modules penceresine erişmek ve ardından tüm modülleri açmak ve bileşenleri daha kolay gezinme ve hata ayıklama için sıralamak önerilmektedir.
Bu kılavuz, WebAssembly ve .Net decompilation'ın özünü kapsar ve geliştiricilerin bu görevleri kolayca geçmelerine bir yol sunar.
Java Decompiler
Java bytecode'unu decompile etmek için bu araçlar çok yardımcı olabilir:
DLL'leri Hata Ayıklama
IDA Kullanarak
- Rundll32, 64-bit ve 32-bit sürümleri için belirli yollar üzerinden yüklenir.
- Windbg, kütüphane yükleme/boşaltma sırasında askıya alma seçeneği ile hata ayıklayıcı olarak seçilir.
- Çalıştırma parametreleri DLL yolu ve fonksiyon adını içerir. Bu yapılandırma, her DLL'nin yüklenmesi sırasında yürütmeyi durdurur.
x64dbg/x32dbg Kullanarak
- IDA'ya benzer şekilde, rundll32 komut satırı değişiklikleri ile DLL ve fonksiyonu belirtmek için yüklenir.
- DLL girişinde kırılma ayarları ayarlanır, böylece istenen DLL giriş noktasında kesme noktası ayarlanabilir.
Görseller
- Yürütme durdurma noktaları ve yapılandırmalar ekran görüntüleri ile gösterilmektedir.
ARM & MIPS
- Emülasyon için, arm_now yararlı bir kaynaktır.
Shellcodes
Hata Ayıklama Teknikleri
- Blobrunner ve jmp2it, shellcode'ları bellekte tahsis etmek ve bunları Ida veya x64dbg ile hata ayıklamak için araçlardır.
- Blobrunner sürümleri
- jmp2it derlenmiş versiyon
- Cutter, GUI tabanlı shellcode emülasyonu ve incelemesi sunarak, shellcode'un dosya olarak işlenmesi ile doğrudan shellcode'un işlenmesi arasındaki farkları vurgular.
Deobfuscation ve Analiz
-
scdbg, shellcode fonksiyonları ve deobfuscation yetenekleri hakkında bilgiler sağlar. %%%bash scdbg.exe -f shellcode # Temel bilgi scdbg.exe -f shellcode -r # Analiz raporu scdbg.exe -f shellcode -i -r # Etkileşimli kancalar scdbg.exe -f shellcode -d # Çözülmüş shellcode'u dök scdbg.exe -f shellcode /findsc # Başlangıç ofsetini bul scdbg.exe -f shellcode /foff 0x0000004D # Ofsetten çalıştır %%%
-
Shellcode'u ayrıştırmak için CyberChef: CyberChef tarifi
Movfuscator
- Tüm talimatları
mov
ile değiştiren bir obfuscator. - Yararlı kaynaklar arasında YouTube açıklaması ve PDF slaytlar bulunmaktadır.
- demovfuscator, movfuscator'ın obfuscation'ını tersine çevirebilir,
libcapstone-dev
velibz3-dev
gibi bağımlılıklar gerektirir ve keystone yüklenmelidir.
Delphi
- Delphi ikili dosyaları için IDR önerilmektedir.
Courses
- https://github.com/0xZ0F/Z0FCourse_ReverseEngineering
- https://github.com/malrev/ABD
Binary deobfuscation
{% hint style="success" %}
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Eğitim AWS Kırmızı Takım Uzmanı (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Eğitim GCP Kırmızı Takım Uzmanı (GRTE)
HackTricks'i Destekleyin
- abonelik planlarını kontrol edin!
- 💬 Discord grubuna veya telegram grubuna katılın ya da Twitter'da 🐦 @hacktricks_live'ı takip edin.**
- Hacking ipuçlarını paylaşmak için HackTricks ve HackTricks Cloud github reposuna PR gönderin.