Edytor heksadecymalny na Linuksa
Nie tylko crackerzy i miłośnicy inżynierii wstecznej potrzebują czasem zajrzeć do jakiejś binarki. Niejeden elektronik potwierdzi, że dobrze jest mieć możliwość odczytu czy nawet edycji tzw. „wsadów”, a sam nieraz podglądałem pliki wykonywalne, by sprawdzić, z jakich bibliotek korzystają, w szczególności, gdy programu nie dawało się uruchomić i nie było mowy o skorzystaniu z lsof.
Na ogół używałem do tego po prostu mojego ulubionego Vima i to w zwykłym trybie tekstowym. Uruchomienie trybu heksadecymalnego, zwłaszcza z możliwością edycji wymaga zaklęć tak długich i bezecnych, że do dziś boję się je wpisywać.
Zmuszony jednak przez los postanowiłem wyposażyć się w jakiś porządny edytor heksadecymalny, najlepiej działający w X-ach, żeby mieć pełną wygodę użytkowania.
Na pierwszy ogień poszedł GHex, ale odpadł w przedbiegach ze względu na stabilność i małe możliwości. Następnie trafiłem na Blessa. Szczęśliwie nie zauważyłem, że został napisany w Mono/Gtk# (nie lubię Mono) i dałem mu szansę. Program ma możliwości chyba niewiele większe niż GHex, ale działa całkiem sprawnie.
Z ciekawości sprawdziłem jeszcze, co zaoferuje produkt ze stajni KDE — Okteta. Pierwsze wrażenie było negatywne — ot, kobylasta aplikacja o przeładowanym interfejsie, która długo się uruchamia, a na dodatek zdarzyło się jej nawet wyłożyć.
Warto jednak dać temu programowi szansę, gdyż jest to prawdziwy kombajn. Nie nadaje się może do edycji dysków twardych, ale świetnie sprawdza się w pracy z plikami. Z ciekawszych opcji warto wymienić:
- przeglądanie wielu plików w kartach,
- dzielenie okna w pionie i poziomie,
- obliczanie wielu rodzajów sum kontrolnych dla wskazanego obszaru,
- zapełnianie obszaru wzorcami,
- wykonywanie operacji bitowych,
- wyszukiwanie łańcuchów znaków (program „wyłapuje” wewnątrz pliku binarnego całe fragmenty tekstu, pasujące do podanej frazy).
Ponadto wystarczy poświęcić chwilę na zagospodarowanie przestrzeni roboczej, by praca z programem stała się przyjemna i intuicyjna. O ile nie pojawią się problemy ze stabilnością, Okteta stanie się zatem moim podstawowym narzędziem do hackowania plików binarnych. A może Czytelnicy znają jakieś inne dobre hex edytory?

czwartek, 11 marca 2010 @ 0:11
A mnie od zawsze wystarcza konsolowy hexedit… Poza tym jak chce się sprawdzić jakich bibliotek używa program, nie prościej użyć ldd jak biali ludzie? ;p
czwartek, 11 marca 2010 @ 9:06
ldd— więc to o tym nie wiedziałem! Dzięki! :)Co do edytorów konsolowych — wolę jednak programy typowo okienkowe, chyba, że tak jak w przypadku (G)Vima, wyróżniają się dużymi możliwościami.
poniedziałek, 15 marca 2010 @ 13:48
Ostatnio był mi potrzebny hex-edytor do odczytywania loga z komunikacji układu z portem szeregowym. Nie potrzebowałem niczego zaawansowanego i skończyłem z ghex, który dał radę, choć zabrakło mi w nim sensownego eksportu danych heksadecymalnych. Jak będę miał okazję to sprawdzę tę Oktetę.