abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

    včera 17:52 | Zajímavý projekt
    WorldTUI je experimentální LLM o 360 milionech parametrů, který napodobuje terminál. Podle stisknutých kláves se snaží předpovídat změny na obrazovce a zvládá tak vyonávat rozličné příkazy, například Vim, tmux i jednoduchou hru Snake. Nejedná se o skutečný příkazový řádek, jeho 'soubory' i příkazy jsou pouze simulované a model může samozřejmě různě chybovat. WorldTUI vychází z jazykového modelu Qwen2.5-Coder-0.5B, který autor … více »
    👻 | Komentářů: 1
    včera 17:48 | Zajímavý článek
    Josef Bacik navrhuje novou abstrakci cell, která by celý kontejner reprezentovala jako jeden kernelový objekt. Proces by vznikl přímo uvnitř cell a nemohl by ji opustit. Oprávnění ke správě by se odvozovala od držení cellfd. … více »
    vencour | Komentářů: 8
    včera 16:23 | Bezpečnostní upozornění

    Zranitelnost v aktualizačním mechanismu WordPress umožňuje útočníkovi zasáhnout do dočasného instalačního adresáře během aktualizace jádra systému. Před aktualizací veřejně dostupného WordPressu dočasně zablokovat HTTP přístup k wp-content/upgrade/, následně aktualizovat a zkontrolovat logy. Postižené verze: WordPress 4.7 až 7.1.3.

    vencour | Komentářů: 0
    včera 16:11 | Bezpečnostní upozornění

    Alpine Linux zveřejnil podrobnosti o útoku na svůj GitLab a 30. října oznámil obnovení provozu. Útočník se 20.–21. října pokusil zneužít chybu v regulárních výrazech. Exploit způsobil opakované pády workerů a několikrát se dostal do pokročilé fáze. Úspěšné spuštění kódu však nebylo potvrzeno. Fix: Opravený GitLab a současně Ruby 3.3.13, 3.4.12 nebo 4.0.9+, pokud jde o vlastní sestavení či kontejner.

    vencour | Komentářů: 0
    včera 15:44 | Pozvánky

    Konference OpenAlt 2026 proběhne tento víkend 7. a 8. listopadu na FIT VUT v Brně. Jedná se již o 21. ročník této konference, která propojuje otevřené technologie, svobodný software, hardware a lidi, kteří chtějí věci nejen používat, ale také jim rozumět a měnit je k lepšímu. Více o konferenci v příspěvku OpenAlt 2026: technologie, které dávají svobodu na blogu spolku OpenAlt.

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | IT novinky

    Eben Upton oznámil další zdražení jednodeskových počítačů Raspberry Pi. Tentokrát 16 GB varianty Raspberry Pi o 80 dolarů a 16 GB varianty Raspberry Pi Compute Module 5 o 40 dolarů. Cena Raspberry Pi 500+ se nemění.

    Ladislav Hagara | Komentářů: 0
    včera 15:11 | IT novinky

    Francouzské Národní shromáždění přijalo 30. října 2026 poměrem 11 hlasů pro, 10 proti a 14 abstencí pozměňovací návrh I-1358 ke státnímu rozpočtu na rok 2027, který zavádí daň z objemu dat doručovaných uživatelům internetu. Návrh socialistického poslance Laurenta Lhardita stanovuje sazbu 0,055 eura za gigabajt, tedy 55 eur za terabajt. Zatím nejde o platný zákon, ale o dílčí hlasování během prvního čtení rozpočtu. Daň by měli platit

    … více »
    vencour | Komentářů: 9
    1.11. 12:44 | IT novinky

    Nizozemská vláda ve snaze šetřit a zvyšovat efektivitu s využitím umělé inteligence (AI) hodlá zrušit asi 25.000 pracovních míst ve státní správě. Cílem je postupně dosáhnout ročních úspor až 3,5 miliardy eur (85,2 miliardy Kč). Na konci loňského roku ve státní správě pracovalo rekordních 160.000 lidí. „Nemůžeme pokračovat v tom, co jsme dělali dosud,“ uvedl státní tajemník pro efektivní fungování vlády Eric van den Burg. „Proto

    … více »
    Ladislav Hagara | Komentářů: 40
    1.11. 12:00 | IT novinky

    Příspěvek na blogu PRUSA 3D představuje fotoaparát CAIM1 (Counter Artificial Intelligence Machine 1). Uměle vytvořený obsah je každým dnem těžší rozeznat od skutečných záběrů či fotografií, což podrývá důvěryhodnost žurnalistiky, archivních materiálů i každodenní tvorby obsahu. Fotoaparát CAIM1 byl vyvinut právě k tomu, aby ověřoval původ fotografií a videí přímo během jejich pořizování. Uvnitř fotoaparátu se nachází hardwarová Web3 peněženka se zabezpečovacím čipem Tropic Square TROPIC01.

    Ladislav Hagara | Komentářů: 8
    1.11. 00:11 | Nová verze

    Jonathan Thomas oznámil vydání nové verze 4.1 video editoru OpenShot (Wikipedie). Zdrojové kódy OpenShotu jsou k dispozici na GitHubu. Ke stažení je i balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo na spouštění a spustit.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (20%)
     (30%)
     (9%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2967 hlasů
     Komentářů: 34, poslední 26.10. 08:24
    Rozcestník

    Dotaz: Reverse engineering datových formátů

    16.2.2005 20:28 unchallenger | skóre: 69 | blog: unchallenger
    Reverse engineering datových formátů
    Přečteno: 748×
    Hledám nějaký nástroj na $SUBJ. Pro začátek bych chtěl alespoň (pohodlně) vypisovat bloky ze souborů interpretované jako všechny možné typy (od usinged char po big endian IEEE double), vypsat z N souborů hodnoty na daném offsetu interpretované jako daný typ, hledat offsety, na nichž leží daná hodnota, když se správně interpretuje, etc. Navymýšlel bych si i pokročilejší funkce, ale zatím to vypadá, jako bych si musel něco napsat i na ty základní. Tudíž otázka je: Co na to použít?

    Odpovědi

    Vašek Lorenc avatar 16.2.2005 22:02 Vašek Lorenc | skóre: 27
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    Bohužel neznám konkrétní produkt, ale vzhledem k tomu, že máš na práci nejspíš dost jiných věcí, nebylo by lepší tím pověřit nějakého šikovného diplomanta (třeba z informatiky)? Užitečná diplomka je poměrně vzácný jev.. ;)
    ...včetně majestátného loosa
    16.2.2005 22:57 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    To je obávám se tak na zápočet...

    Yeti: kdyby ses do toho pustil sám, tak dej vědět (třeba v blogu, mi tě nezastřelíme). BTW: khexedit asi není to, co chceš slyšet?
    Vašek Lorenc avatar 16.2.2005 23:21 Vašek Lorenc | skóre: 27
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů

    Netřeba se obávat :) Spíš šlo o to nechat práci někomu, kdo by ji rád dodělal a navíc by z toho měl užitek -- ať už jako bakalářku nebo zápočet.

    Možná by bylo ale zajímavé někde hodit nějaký Wiki web a dávat tam různé poznámky a možná řešení k implementaci.. Nebo do blogu, ale ten by k tomu nemusel být tak vhodný. Nějaké hledání vzrůstajících/klesajících sekvencí by se třeba taky hodilo, zvlášť s různými odstupy (ať už hodnot nebo pozic v souboru) -- indexy nebo něco takového by se tím při velké dávce štěstí daly odhalit.. Ale takových nápadů má určitě kdekdo celé kapsy :)

    ...včetně majestátného loosa
    16.2.2005 23:22 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    Na zápočet? To by byl pěkně levný zápočet ;-)

    Ad khexedit. To je přesně to, co chci, až na to, že to potřebuji skriptovat, a ne klikat (tedy někdy i interaktivně, a na to vypadá docela použitelně, až na to, že v hlavním okně umožňuje jen jednobajtové formáty, což je pro mě pruda, protože reálná čísla zatím z hexdumpu číst neumím). Mám třeba dvacet souborů a hypotézu, že na offsetu 0x0022 je jako little endian IEEE single nějaká zajímavá hodnota. Tak chci vypsat ze všech zároveň, co by to bylo zač, ve formátu soubor: hodnota. Strávil jsem v khexeditu jen několik minut, ale nevidím způsob, jak to udělat bez oteveření dvaceti oken nebo otevření dvaceti souborů postupně a čtyřiceti Ctrl-C, přepnutí okna, Ctrl-V, přepnutí okna.
    elviin avatar 16.2.2005 22:20 elviin | skóre: 29 | blog: elviin | Plzeň-Praha
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    Jestli jsem to spravne pochopil (jeste nevim, co je to $SUBJ), tak tomu by mohl poslouzit Bison.
    16.2.2005 22:37 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    No, to moc ne. Možná jsem to nenapsal jasně, ale jde mi o binární data, v textových se obvykle jde vyznat, a o interaktivní šťourání, což yacc + lex stejně neumožňují.

    P.S.: $SUBJ je proměnná obsahující na předmět zprávy (subject).
    16.2.2005 22:45 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    Jediné co mě napadá je nějaký chytřejší hex editor, minimálně něco z toho by to mohlo zvládnout.
    16.2.2005 23:24 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    No už to tak vypadá, že si budeš muset něco napsat (nebo si nechat něco napsat). Perlivé pack a unpack jsou silné zbraně, tak něco s Term::ReadLine by jsi měl mít za chvilku. Defakto by ti z toho rovnou mohl vypadávat zárodek příslušného filtru. Pokud jsi na perl zanevřel, tak je tu ještě python a jiné (forth ;-) smalltalk, lisp).
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    16.2.2005 23:34 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    Když to začnu psát já, tak to skončí jedním ze dvou konců:

    - jako chaotická změť specializovaných skriptíků, které budu před každým použitím upravovat a ještě předtím studovat, co vlastně delají

    - jako interpret speciálního jazyka pro popis datových formátů[*], který nikdy nedokončím

    A tomu se chci vyhnout, kromě toho bych ideálně nechtěl psát nic.

    [*] perlí unpack znám, ale potřeboval bych nejdřív něco, co dokáže dekódovat ty formátovací vzory ;-)
    16.2.2005 23:39 VícNežNic | skóre: 42 | blog: Spáleniště | Ne dost daleko
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    A tomu se chci vyhnout, kromě toho bych ideálně nechtěl psát nic.
    Tuším, že se rodí velký softwarový produkt ;-)
    Copak toho není dost?
    16.2.2005 23:55 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    - jako interpret speciálního jazyka pro popis datových formátů[*], který nikdy nedokončím
    Hmm, to mi silně připomíná "interpret" jazyka, který jsem vytvořil při reverse engeneeringu protokolu telefonu. Ale je to natolik nedokončené, že je asi lepší začít od začátku :-).
    18.2.2005 19:36 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    Právě jsem dopsal tohle, snad to dělá aspoň něco, co potřebuješ

    ukázka:
    $ ./revdump  '"na %d. pozici je " (u8) 0 (u16_le) 114 (u16_be) $0' /etc/passwd /etc/group
    /etc/passwd: na 114. pozici je 613a     3a61
    /etc/group: na 114. pozici je 3a78      783a
    
    první parametr určuje, co se má odkud vypsat (dá se to načíst i ze souboru), zbytek jsou soubory, ze kterých se bude vypisovat. Ten zápis vypadá takhle:
    "format string" (type) offset
    
    nebo
    "format string" (type) $reference
    
    kde format string je nepovinný parametr pro printf (zatím skutečně printf, takže není problém to shodit ;-)), type je typ (umí to i floaty, ale moc jsem je nezkoušel), offset je jasný, reference znamená, že jako offset se veme výsledek n-tého výrazu (zde $0 dá 114, takže se vlastně použije stejná offset, jenom se interpretuje jako be).

    Ješte chci přidělat opakování stejné posloupnosti výrazů na bloky vstupu, aby v tom šel emulovat xxd/od a nějaké základní operace pro výpočet offsetu (typu sečti výsledek $x a $y, vynásob n a použij to jako offset).

    A taky vlastní printf, aby to nepadalo a aby to umělo \n apod a lár bugů

    Takže otázka: hodí se ti něco takového?
    18.2.2005 19:39 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    Jo, a má to skoro 3 000 řádků ;-)
    18.2.2005 22:23 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    Jo, určitě, ale kde to najdu?

    Já jsem tedy zrovna svůj poslední formát už rozebral pomocí xxd, head, tail a jednoúčelových primitivních nástrojů (resp. fázi fyzické struktury už mám za sebou), naštěstí byl dost jednoduchý, takže jsem psaní něčeho zase uložil k ledu, ale hodit se to určitě bude nejpozději příště ;-)
    18.2.2005 23:29 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    Já tam ještě opravoval pár chyb, je to tady. Ale zatím je to spíš takový prototyp, viz grep FIXME *
    19.2.2005 19:54 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    Nemůžu to nějak přimět k vypisování floating point dat. Pokud tomu dobře rozumím, tak

    '"%g" (float_le) 0x0002'

    by mělo vypsat little endian (Intel) IEEE single na posici 2, ale vypisuje to úplně jiná čísla, než vím, že v těch souborech jsou.

    No, nebudu si stěžovat, až to budu zase potřebovat, raději se zapojím do vývoje...
    19.2.2005 20:25 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    Nj, floating point čísla jsou trochu rozbitý... Zítra bych měl mít čas, tak to dám do pořádku.
    19.2.2005 20:34 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    Žádný spěch; já doufám, že to nebudu potřebovat hodně dlouho. I když to tak asi úplně nedopadne ;-)
    20.2.2005 15:18 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    Oops, blbá chyba, zapomněl jsem, že float se funkcím s proměnným počtem parametrů (printf) předává jako double.

    patch, nová verze.
    22.2.2005 16:23 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    Patch, aby se negativní offsety počítaly od konce souboru.

    Patch pro výrobu rpm balíčku.

    P.S.: Pokud tohle je verze 0.0.2.1, tak čekám, že verze 1.0 bude mimo jiné obsahovat reimplementaci TeXu v zsh ;-)
    31.3.2005 16:10 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    Mám po zkouškách, tak jsem dostal novou verzi do použitelného stavu: revdump-0.1.tar.gz. Nějaké příklady jsou v src/test/*.rd.

    P.S.: Pokud tohle je verze 0.0.2.1, tak čekám, že verze 1.0 bude mimo jiné obsahovat reimplementaci TeXu v zsh ;-)
    Zatím to není ekvivalentní ani HQ9+, ale do 1.0 času dost ;-)
    31.3.2005 16:19 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    Já jsem od té doby zase reverse-engineeroval a revdump využil, ale co jsem hodně potřeboval (a napsal si na to pidinástroj používaný v kombinaci s head a tail...), bylo interpretovat část souboru od každého bajtu jako daný typ (v mém případě nejčastěji single, double) a vypsat posice, které dají hodnoty z nějakého zadného/rozumného rozsahu

    offset hodnota

    pak se výsledek z několika souborů projede joinem, a hned je jasno.

    Tak to byl takový námět ;-)
    31.3.2005 16:43 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    ./revdump --repeat --with-offsets --step=1 --cols=1 \
    '(float_le) 0 if $_ > 10' soubory | grep -v NO
    
    ale && zatím nefunguje. A je nevyšší čas napsat aspoň help, když jsem se sám musel koukat do zdrojáku, jak se ty optiony jmenují :-/

    PS: Je to v main.c, až to budeš taky hledat ;-)
    31.3.2005 16:59 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    Vlastně && a || se dají nahradit pomocí uniq, ale měl by to umět rovnou revdump (stejně jako nevypisovat řádky se samým NO).
    31.3.2005 17:45 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Reverse engineering datových formátů
    No vida, jaké to má netušené možnosti. Ještěže existuje jako help alespoň tento thread, jinak bych to do příště zapomněl... ;-)

    Založit nové vlákno • Nahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.