• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    XCHAOSANSI C/C99 (specifikace), GNU C (gcc, glibc), Tiny C (tcc) a POSIX - ne nutně C++,g++,libstdc++ nebo Win32 API
    XCHAOS
    XCHAOS --- ---
    XCHAOS
    XCHAOS --- ---
    hra je sice v javascriptu a ne v céčku, ale pokládám ji za instruktážní z hlediska pochopení, jakou třídu problémů programátoři v C řeší, pokud jde o bezpečnost. enjoy :-)
    Untrusted - a user javascript adventure game
    http://alexnisnevich.github.io/untrusted/
    FEDY
    FEDY --- ---
    zdravim ...

    nedelate nekdo s GNU Radio ?
    GIOMIKY
    GIOMIKY --- ---
    ANT_39: Skoro bych rekl, ze je to spis nejaky jednoucelovy anti-crackersky zakodovani knihovny. Ale to uz jsem zase asi off-topic. Sorry.
    GIOMIKY
    GIOMIKY --- ---
    ANT_39: Diky za tip, ale ja mam pocit, ze se da ta ochrana resit nejak jednodusseji. Kdyz jsem se dival na zavadec v terminalu, tak tam zadny velky harakiri s knihovnou neni. Je tam jenom prachsprosty import knihovny a potom volani funkce.
    ANT_39
    ANT_39 --- ---
    (Vlastne by ani PIE byt nemusela, jen by se linkovala pro jinou adresu, nez je obvykly, aby nebyla kolize mezi tim desifrovacim wrapperem a tim hlavnim programem. No nic, dost bylo monologu, psat se to nechystam :) )
    ANT_39
    ANT_39 --- ---
    (Urcite jsou tam detaily, ktery by bylo potreba vyresit: napriklad dost pravdepodobne bys musel ten rozbaleny program relokovat pro to cilovy umisteni. Ale mozna ne, kdyby zasifrovana binarka byla PIE, tak by mohla tomu mmapu zadat presnou adresu.)
    ANT_39
    ANT_39 --- ---
    GIOMIKY: mmapem si alokujes blok pameti, rozkomprimujes/rozsifrujes do ni nejaky staticky data, mprotectem nastavis +x, a pak return ((int (*)(int, char**)) 0xadresa) (argc, argv); 0xadresa je konstanta programu, nastavi se tou komprimacni utilitou. Staticky data se zkomprimovanym programem taky. Rozhodne to jde napsat do znacne miry prenositelne v C.
    GIOMIKY
    GIOMIKY --- ---
    DAVIDOWITCH: Ja taky ne, ale na urovni c asi nebude mozny jen tak posouvat sekce v pe, ne?
    DAVIDOWITCH
    DAVIDOWITCH --- ---
    GIOMIKY: Nechapu co s tim ma spolecnyho ASM...
    JANFROG
    JANFROG --- ---
    GIOMIKY: Hmm...to vypada na ten blob :-)
    GIOMIKY
    GIOMIKY --- ---
    JANFROG: Sorry, za OT, ale zjistil jsem nasledujici. IDA pise: positive sp value has been found. Předpokládám tedy, že Import section je až za Resource section. Nejspíše opravud nějaké ASM bastlení.
    JANFROG
    JANFROG --- ---
    GIOMIKY: To je docela zajimavy. Docela by me zajimalo, jake sekce ma ta binarka, zkus si dumpnout strukturu toho - podle me musi mit alespon PE strukturu). Pokud nema, pak je to IMHO nejaky blob jen "pojmenovany" jako .dll pripadne .dll s jednou nestandardni sekci ktera obsahuje ten blob :-)
    A ten co to pouziva ma nejaky kod, co se v tom vyzna (zkopiruje do pameti, (dekoduje), mprotect(+x) & goto entrypoint.
    Nicmene z beziciho program bys to mel dumpnout celkem v pohode.
    GIOMIKY
    GIOMIKY --- ---
    Diky moc za rady, hledal jsem nejjednodussi moznou cestu, coz je napriklad tohle: http://upx.sourceforge.net/
    DAVIDOWITCH
    DAVIDOWITCH --- ---
    GIOMIKY: Trivialne, pokud to dllko neni univerzalni dllko, ale plugin specialne pro toho robota, nikdo nerika ze ten robot nemuze natahnout dllko do pameti jako binarni blob, ten binarni blob dekomprimovat a dekryptovat a az potom z toho mit neco do ceho se daj delat cally.
    GIOMIKY
    GIOMIKY --- ---
    XCHAOS: Jestli myslis, ze je to v asm, tak navrhuji celou debatu utknout. Open-source zdar.
    DAVIDOWITCH
    DAVIDOWITCH --- ---
    XCHAOS: No, ja to beru z pohledu atraktivity takovej soft vyrobit.
    Na primem prikladu tech vizualnich efektu. Potrebujes hodne specifickej soft, kterej beznymu smrtelnikovi je uplne k nicemu (napr. mnoho TB textur.. to moc nepotrebujou ani nadsenci do HD textur pro hry, protoze to je proste nesmyslne moc dat na skoro cokoliv).
    Takze moc developeru ktery by do toho sli z nadseni pro obecne uzitecnou vec (coz je velka motivace za spoustou Open Source projektu, a je skvela) nesezenes, protoze to co potrebujes neni obecne uzitecna vec. Obecne bych rekl ze tu vzdycky bude "trh" pro proprietarni soft v jistym smyslu toho slova, tj. ne closed-source-za-prachy, ale spis "neco co je uzitecny fakt jen pro superuzkou skupinu lidi, dost casto ciste inhouse".
    GIOMIKY
    GIOMIKY --- ---
    XCHAOS: Tak vzhledem k tomu, ze to potrebuje vc redist, tak bych rekl, ze to sem sedi.
    GIOMIKY
    GIOMIKY --- ---
    Jo a vm je dobrej napad, ale nevim, jak by se realizovat, protoze ty funkce v dll potrebuju volat z obchodniho terminalu z mql4 a tam je v podstate pouze moznost naimpotrtovat exporty z dll a pak je v proprietarnim jazyce volat.
    XCHAOS
    XCHAOS --- ---
    GIOMIKY: a jak to souvisí s tématem klubu? máš nějaké indicie, že to, co ti nejde dekompilovat, vůbec bylo vytvořené nějakým kompilátorem Céčka, nebo tak? ta ochranná obálka můžou být (a nejspíš jsou) nějaké triky, ubastlené přímo v ASM, nebo tak.
    Kliknutím sem můžete změnit nastavení reklam