Soru:
ELF ikili dosyalarını görselleştirme
user1743
2014-08-02 12:59:07 UTC
view on stackexchange narkive permalink

Geçenlerde Sergey Bratus ve Greg Conti'nin Voyage of the Reverser: A Visual Study of Binary Species adlı eski bir konuşmasını gördüm.

Beslenen ikili dosyaların görsel temsillerini görmek için kullanılabilecek açık kaynak / ücretsiz araçlar var mı (konuşmada gösterilene benzer)?


konuşma:

Windows PE visualization

Documents Format Files

Yedi yanıtlar:
Greg Conti
2014-08-02 17:58:27 UTC
view on stackexchange narkive permalink

Konuşma için kullandığımız binviz, burada mevcuttur: binviz_0.zip.

Bazı makaleler burada:

Ayrıca daha eski bir Black Hat var Sergey ile bir Idid'e ek olarak konuş:

Kullanmadım bir süre sonra, ancak binviz Visual C # (VS2005 veya belki VS2008) ile yazılmıştır. .Zip, proje (kaynak) dosyasıdır, bu nedenle görsel stüdyoya yüklenmeli ve çalıştırılmalıdır. Ayrıca ... /binviz_0.44bw/binviz_0.01/bin/Debug/ içinde derlenmiş bir .exe vardır. Sadece çift tıklayıp bir Windows makinesinde çalıştırabilmelisiniz. XP altında geliştirdim, buthave onu Windows 7 altında kullandığından beri az çok aynı şekilde çalıştı. (Fareyle üzerine gelme olayı davranışı biraz farklı, ancak yine de kullanılabilir).

Binviz'in bir araştırma prototipi olduğunu unutmayın. ve bir hatası var ... küçük dosyaları sevmiyor. 10M boyutunda bir şey dener ve oradan aşağı doğru çalışır. Huysuzlaşmaya başladığı yerin yaklaşık 500 bin olduğunu düşünüyorum.

Tepkiniz için teşekkürler! 2008 makalenizde platformdan bağımsız sürümlerden "gelecekteki çalışma" olarak bahsediyorsunuz (s. 8). Bunu daha fazla devam ettirebildiniz mi, yoksa indirme hala standart "güncel" sürüm mü?
Rasgele ikili dosyaların otomatik eşlemesini dahil etmeye çalışmanın bir varyant yolunu izledim. [ikili haritalama belgesine bakın] (http://www.rumint.org/gregconti/publications/dfrws_2010-301.pdf) ve platformdan bağımsız sürümü daha fazla keşfedemedi. Yani evet, bu "güncel" versiyon.
@GregConti Bu yazılım makaleler veya kitaplar gibi metinlerdeki yazma kalıplarını tanıyacak mı?
Dominik Antal
2014-08-03 04:13:47 UTC
view on stackexchange narkive permalink

cantor.dust

Bu proje, geleneksel hex düzenleyicinin köklü bir evrimi olan etkileşimli bir ikili görselleştirme aracıdır. Tersine mühendisler ve adli tıp uzmanları, ikili bilgileri görsel bir soyutlamaya çevirerek, saniyeler içinde rastgele verileri dağlarda inceleyebilir. Daha önce görülmemiş komut setleri ve veri formatları bile, görsel parmak izleriyle kolayca bulunabilir ve anlaşılabilir.

cantor.dust example 1

Maalesef geliştirme durdu , en azından yakın zamanda bu proje hakkında herhangi bir haber almadım.

Binwalk

enter image description here devttys0, binwalk'ta benzer bir görselleştirme uyguladı.

Vix / Biteye

GNU / Linux için tasarlanmış grafiksel (SDL tabanlı) onaltılık döküm aracı. Bitlerinin oluşturduğu desenleri görmenizi sağlar.

Github

GUI

binglide

Binglide, görsel bir tersine mühendislik aracıdır. Dosyada bulunan farklı veri türlerine hızlı bir genel bakış sunmak için tasarlanmıştır. Bu araç belirli bir dosya formatını bilmez, her şey veriler üzerinde çalışan aynı analiz kullanılarak yapılır. Bu, başlıklar eksik veya bozuk olsa veya dosya biçimi bilinmese bile işe yarayacağı anlamına gelir.

enter image description here

senseye

Senseye, statik dosyalardan ve çökme dökümlerinden canlı veri akışlarına ve uygulama dinamik hafızasına kadar her şeyi izlemek, analiz etmek ve görselleştirmek için bir araçtır.Her veri penceresi size farklı görünümler (örn. uç nokta) ve istatistiksel araçlar (örn. histogram) ve sensörün verileri nasıl örneklemesi, paketlemesi ve aktarması gerektiğine dair bazı kontroller.

Senseye

binvis.io

ikili verileri görselleştirmek için tarayıcı tabanlı bir araç.

binvis.io ile şunları yapabilirsiniz:

İkili verileri görsel olarak keşfedin. İnce yapısal bilgileri seçmek için küme baytları Sezgisel olarak veriler arasında gezinmek ve veri seçmek için basit tarama düzenini kullanın. Bir entropi de dahil olmak üzere bir dizi yararlı bayt renk eşlemesi arasında geçiş yapın. Sıkıştırılmış veya şifrelenmiş bölümleri seçmenizi sağlayan görselleştirici. Analiz için veri bölümlerini dışa aktarın

http://corte.si/posts/binvis/announce/index.html

===

BinVis

Keyfi verileri görselleştirmek için Qt tabanlı bir araç. BinVis'in şu yetenekleri vardır:

Büyük miktarda ikili veriyi görselleştirme (birkaç TiB). Zaman (normal çizim) ve uzayda (bayt grafiği) görselleştirme ) etki alanları Dosyaların bölümlerini görselleştirin ve görselleştirilmiş verilerdeki güçlü desenleri vurgulamak için dosyanın her bir bölümünün ne tür veri içerdiğini görmek için dosyanın "Adımla" ilgili bölümlerini daraltın "Tersine çizim" ve çeşitli s Performans nedenleriyle yoğun iş parçacığı kullanımı 1GiB dosyası ve 100TiB dosyasını görselleştirmek için aynı miktarda bellek kullanılarak, oldukça statik bellek kullanımı http://trippler.no/wpcms/?page_id=20 http : //trippler.no/wpcms/wp-content/uploads/2014/06/Screenshot_2015-08-09_19-52-30.png

PortEx

Kötü amaçlı yazılım analizi ve PE malformasyon sağlamlığına özel bir odaklanma ile Portable Executable dosyalarını analiz etmek için Java kitaplığı

Veles

İkili görselleştirme çerçevesi. Veles visualization

JamalS
2014-08-02 14:36:42 UTC
view on stackexchange narkive permalink

Konuşmada kullandığım veri görselleştirme aracı, Google Code 'da bulunan BinVis aracıyla aynı olmasa da hemen hemen aynı görünüyor. Bazı özelliklerin ekran görüntüsü:

enter image description here

Not: Yukarıdakiler eski bir sürümdür çünkü en son sürümü bilgisayarıma yükleyemedim ; daha fazlası için Google kod sitesine bakın.

Evet, bu onun işi ve bence cantor.dust açık kaynak olarak görünmediği sürece mevcut olan her şey
Mevcut sürümün http://binvis.googlecode.com/svn/trunk/binviz_0.01/bin/Release/app.publish/Application%20Files/binviz_0.01_1_0_0_1/ adresinde yalnızca .exe.deploy adını değiştirerek mevcut olduğu görülüyor. .exe'ye
usr2564301
2014-08-02 15:57:39 UTC
view on stackexchange narkive permalink

Bunlar, kaynak verilerden alınan grafik dökümlerdir. Bunu kapsamlı kullanıyorum, kendi yazdığım bir onaltılık okuyucu ile - bu, "verileri" hızlı bir şekilde bulmanın harika bir yoludur ( .text ile arasındaki farka bakın. veri ) ve daha büyük yapılar (genellikle aynı ofsetler üzerinde tekrar eden veya benzer veriler içerir).

En üstteki resimler gri tonlamalı bilgi olarak dökülmüş ham verileri gösterir: her bayt bir piksel olarak değerlendirilir. Muhtemelen, yazar kolaylık sağlamak için gri tonlamayı seçti. Tam bir zıt renkler yelpazesini tercih ederim, bu nedenle "aynı" ve "benzer" verilerin uzun alanları daha kolay anlaşılabilir.

Alt tarafa yakın tek renkli bloklar ( .rsrc ) simgeler ve diğer grafiklerdir. Yatay olarak uzatılmış görünüyorlar çünkü bayt başına bir piksel olarak görüntüleniyorlar ve aslında 16, 24 veya 32 bpp'lik görüntüler.

(Tüm üst tarafın .text ! Yürütülebilir kod rastgele pikseller olarak görünür, ancak bu görüntüdeki ilk 1/3 ün daha az yoğun. Muhtemelen MZ ve PE Yürütülebilir Başlığıdır; bunlar çok sayıda sıfır içerir. alttaki 1/3, .text 'in bir parçasıdır ve büyük olasılıkla, 0xFF baytını çok fazla içeren Sanal Çağrı tablosudur.)

Alttaki görüntülerde, her bayt tek renkli ikili formatta görüntülenir: her bayt 8 ardışık piksel olarak gösterilir. Geleneksel olarak, bunlar en önemli bit ilk olarak görüntülenir. Yalnızca tek bir bayttan daha büyük tek değerlerle uğraşırken devreye girdiği için 'bitkinliği' kontrol etmeye gerek yoktur.

Böyle bir şeyi kendi başınıza yazmak zor değildir; muhtemelen en önemlisi, grafik rutinlerini, özellikle monokrom bitmapleri olabildiğince hızlı hale getirmektir. Bu aynı zamanda Conti ve diğerleri, İkili ve Veri Dosyalarının Görsel Ters Mühendisliği ( http://www.rumint.org/gregconti/publications/2008_VizSEC_FileVisualization_v53_final.pdf tarafından da ele alınmaktadır. ):

Performansı test ederken, ekranın 0,03 saniyede güncellenebileceğini gördük, bu da daha yüksek çözünürlüklerde görselleştirmelerin yanı sıra duyarlı bir arayüz sağlamaya devam etme olasılığını açık bıraktı. [...] C #’ın GetPixel ve SetPixel yöntemlerinden kaçınarak ve doğrudan görüntü belleğine erişerek bu performans düzeyine ulaşmayı başardık [...]


Kendi aracımın ekran görüntüleri , yukarıda gösterilene çok benzer:

CALC.EXE'nin .text bölümü. Alt kısımdaki yinelenen yapı, Sanal Çağrı tablosudur.

calc.exe in binary view

RLE kodlu görüntüleri içeren bir dosya. RLE sıkıştırması, "tutarlı" verilerin yatay çizgileriyle tanınabilir (etkileşimli olarak genişlik değiştirildiğinde daha iyi görülebilir).

rle-compressed images

Tek renkli GZ sıkıştırılmış veriler. Bu, rastgele durağanlığa olabildiğince yakın.

gz compressed data in monochrome

Başka bir yürütülebilir dosyada bulunan küçük bir gömülü bitmap yazı tipi. Karakterler arasındaki rastgele bitler piksel cinsinden genişliktir - eşzamanlı olarak kaydırılan onaltılık dökümüne bakın.

a tiny embedded bitmap font

Bazı veriler başka şekillerde daha iyi görselleştirilir. Bu eski tarz bir VGA paletidir (6x6x6 RGB).

a palette visualized

Russlan K
2015-02-16 06:21:48 UTC
view on stackexchange narkive permalink

BinView, ikili veri görselleştirme aracı için bir prototiptir

GitHub deposu

Screen 1

Screen 2

Screen 3

Screen 4

turnersr
2014-08-05 19:15:38 UTC
view on stackexchange narkive permalink

Conti'nin sunduğu ngram yöntemini ve görsel özellikleri izole etmek için bir kümeleme bileşenini uygulayan https://github.com/REMath/implementations/blob/master/code_examples/plot_hex.py yazdım .

Jordan
2017-09-07 02:00:10 UTC
view on stackexchange narkive permalink

Haxxis adında dinamik bir görselleştirme aracı (dinamik, çünkü statik ikili dosyalar üzerinde değil, ikili dosyaların çalıştırılması üzerinde çalışıyor) geliştiren bir ekibin parçasıydım:

https://github.com / voidALPHA / cgc_viz (voidALPHA tarafından geliştirilen görselleştirme bileşeni) https://github.com/Vector35/traceapi (görselleştiriciye beslenen değiştirilmiş bir qemu kullanarak izler oluşturur)

Esas olarak "Kararname" formatında (32bit x86 değiştirilmiş elf formatı) çalışsa da, diğer ikili formatlara uyarlanması kolay olacaktır. Bazı güzel görselleştirmeler üretir:

https://www.youtube.com/watch?v=6r1fOrDb80s&list=PLuDRBJDBc4F9HnfV5tQDwqhSs9a5VPegD https://www.youtube.com/ parçalarla birlikte CGC olayın kendisi izle? v = LEfejsqEucY&list = PL6wMum5UsYvZx2x9QGhDY8j3FcQUH7uY0&index = 13 https://www.youtube.com/watch?v=SYYZjTx92KU&list=PL6wMum5UsYvZx2x9QGhDY8j3FcQUH7uY0&index=31 (uzun bakış Haxxis boyunca)



Bu Soru-Cevap, otomatik olarak İngilizce dilinden çevrilmiştir.Orijinal içerik, dağıtıldığı cc by-sa 3.0 lisansı için teşekkür ettiğimiz stackexchange'ta mevcuttur.
Loading...