Bugün size Xori adında bir otomatik derleme ve statik analiz aracı tanıtacağım.Araştırmacıların çoğu bu aracı PE32, 32+ ve Shellcode denetlemek ve analiz etmek için kullanabilir.
Destek yapısı
i386
x86-64
dosya formatı
PE, PE +
Düz metin kabuk kodu
Araç işlevi
1. Yığın belleğini yönetin;
2. Hafif simülasyon: tüm yolları numaralandırın (kayıtlar, yığınlar ve bazı talimatlar);
3. Tam simülasyon: yalnızca kod yolunu izleyin (yavaş performans);
4. TEBPEB yapısını simüle edin;
5. Bellek adresini referans alan dizeyi görüntüleyin;
6. FLIRT stil imzasını kullanın;
7. Ofset adresindeki fonksiyon referansını tanımlayın.
Araca bağlı bileşenler
rustc 1.27.0
pas yükleme-macOS ve Linux dağıtımı
curl https://sh.rustup.rs -sSf | sh
pas yükleme pencereleri
pas araç seti indirme bağlantısı: [rustup.exe]
Bu araç, rust's compiler-rustc, rust package manager-cargo ve rut ortamı için diğer yardımcı programları yükleyecektir.
Pas bağımlılıklarını yükleyin
Aşağıdaki şekilde gösterilen durumla karşılaşırsanız, bunun nedeni Visual Studio için Derleme Araçları'nın yüklenmemiş olmasıdır [Çözüm]:
1. Komut istemlerini izleyin ve yukarıdaki bağlantıya tıklayın veya doğrudan [burayı] tıklayın;
2. rustup-init.exe'yi iptal edin;
3. Tarayıcıya geri dönün, aşağı kaydırın, "Visual Studio 2017 için Araçlar" sekmesine tıklayın ve "Visual Studio 2017 için Oluşturma Araçları" nı indirin;
4. İndirilen yürütülebilir dosyayı çalıştırın;
"Visual C ++ oluşturma araçları" nı seçin ve kur'a tıklayın. Kurulum tamamlandıktan sonra, yükleyiciyi kapatın:
Pas alet zincirini yükleyin
Rustup.exe'yi çalıştırın ve aşağıdaki çıktıyı göreceksiniz:
Başarılı bir kurulumdan sonra, rust compiler-rustc, rust package manager-cargo ve diğer yardımcı programların kurulu olduğunu göreceksiniz. Yollar "C: \ Users \% username% \. Cargo" ve "C: \ Users \% username% \. Rustu" şeklindedir.
Xori kurulumu ve konfigürasyonu
Xori kodunu indirin ve oluşturun:
git klon https://github.com/endgameinc/xori.git
cd xori
kargo inşa etmek
Xori.json yapılandırma dosyasını oluşturun:
cpxori.json.example xori.json
Sembol dosyası oluştur (isteğe bağlı):
Kendi sembol dosyanızı oluşturmak istiyorsanız, dll dizinini ayarlamanız gerekir.
"function_symbol32": "./ src / analysis / symbols / generated_user_syswow64.json",
"function_symbol64": "./ src / analysis / symbols / generated_user_system32.json",
"symbol_server": {
"dll_folder32": "./ dlls / 32bit",
"dll_folder64": "./ dlls / 64bit"
Function_symbol dosyasının üzerine yazmak için pesymbols çalıştırın:
./target/release/pesymbols
Takım çalışıyor
./target/release/xori-f test.exe
Tüm testleri çalıştırın
kargo testi
Tarayıcı GUI'si
Araç gereksinimleri
Nodejs
İplik
İnşaat
cd gui
npm yükleme
Çalıştırmak
Bir terminalde:
cd gui
düğüm src / server.js
Başka bir terminalde:
cd gui
npm başlangıcı
Tarayıcının varsayılan adresi http: // localhost: 3000 / ve arka uç API dinleme adresi http: // localhost: 5000 / şeklindedir.
proje adresi
Xori: [GitHub Portalı]
* Referans kaynağı: gildasio, FB editörü Alpha_h4ck derlemesi, lütfen yeniden yazdırmanın FreeBuf.COM'dan olduğunu belirtin Bugün size Xori adında otomatik bir derleme ve statik analiz aracı sunacağım, araştırmacıların çoğu bu aracı kullanarak , 32+ ve denetim analizi için Shellcode.
Destek yapısı
i386
x86-64
dosya formatı
PE, PE +
Düz metin kabuk kodu
Araç işlevi
1. Yığın belleğini yönetin;
2. Hafif simülasyon: tüm yolları numaralandırın (kayıtlar, yığınlar ve bazı talimatlar);
3. Tam simülasyon: yalnızca kod yolunu izleyin (yavaş performans);
4. TEBPEB yapısını simüle edin;
5. Bellek adresini referans alan dizeyi görüntüleyin;
6. FLIRT stil imzasını kullanın;
7. Ofset adresindeki fonksiyon referansını tanımlayın.
Araca bağlı bileşenler
rustc 1.27.0
pas yükleme-macOS ve Linux dağıtımı
curl https://sh.rustup.rs -sSf | sh
pas yükleme pencereleri
pas araç seti indirme bağlantısı: [rustup.exe]
Bu araç, rust's compiler-rustc, rust package manager-cargo ve rut ortamı için diğer yardımcı programları yükleyecektir.
Pas bağımlılıklarını yükleyin
Aşağıdaki şekilde gösterilen durumla karşılaşırsanız, bunun nedeni Visual Studio için Derleme Araçları'nın yüklenmemiş olmasıdır [Çözüm]:
1. Komut istemlerini izleyin ve yukarıdaki bağlantıya tıklayın veya doğrudan [burayı] tıklayın;
2. rustup-init.exe'yi iptal edin;
3. Tarayıcıya geri dönün, aşağı kaydırın, "Visual Studio 2017 için Araçlar" sekmesine tıklayın ve "Visual Studio 2017 için Oluşturma Araçları" nı indirin;
4. İndirilen yürütülebilir dosyayı çalıştırın;
"Visual C ++ oluşturma araçları" nı seçin ve kur'a tıklayın. Kurulum tamamlandıktan sonra, yükleyiciyi kapatın:
Pas alet zincirini yükleyin
Rustup.exe'yi çalıştırın ve aşağıdaki çıktıyı göreceksiniz:
Başarılı bir kurulumdan sonra, rust compiler-rustc, rust package manager-cargo ve diğer yardımcı programların kurulu olduğunu göreceksiniz. Yollar "C: \ Users \% username% \. Cargo" ve "C: \ Users \% username% \. Rustu" şeklindedir.
Xori kurulumu ve konfigürasyonu
Xori kodunu indirin ve oluşturun:
git klon https://github.com/endgameinc/xori.git
cd xori
kargo inşa etmek
Xori.json yapılandırma dosyasını oluşturun:
cpxori.json.example xori.json
Sembol dosyası oluştur (isteğe bağlı):
Kendi sembol dosyanızı oluşturmak istiyorsanız, dll dizinini ayarlamanız gerekir.
"function_symbol32": "./ src / analysis / symbols / generated_user_syswow64.json",
"function_symbol64": "./ src / analysis / symbols / generated_user_system32.json",
"symbol_server": {
"dll_folder32": "./ dlls / 32bit",
"dll_folder64": "./ dlls / 64bit"
Function_symbol dosyasının üzerine yazmak için pesymbols çalıştırın:
./target/release/pesymbols
Takım çalışıyor
./target/release/xori-f test.exe
Tüm testleri çalıştırın
kargo testi
Tarayıcı GUI'si
Araç gereksinimleri
Nodejs
İplik
İnşaat
cd gui
npm yükleme
Çalıştırmak
Bir terminalde:
cd gui
düğüm src / server.js
Başka bir terminalde:
cd gui
npm başlangıcı
Tarayıcının varsayılan adresi http: // localhost: 3000 / ve arka uç API dinleme adresi http: // localhost: 5000 / şeklindedir.
proje adresi
Xori: [https://github.com/endgameinc/xori]
* Referans kaynağı: gildasio, FB editörü Alpha_h4ck tarafından derlenmiştir, FreeBuf.COM'dan yeniden üretilmiştir