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 18:33 | Nová verze

    Svobodný (GPLv3) šachový engine Stockfish (Wikipedie) byl vydán ve verzi 19 (𝕏). Přehled novinek v příspěvku na blogu. Stockfish 19 je o 44 Elo silnější než Stockfish 18.

    Ladislav Hagara | Komentářů: 0
    včera 12:33 | Nová verze

    Byla vydána nová verze 1.13.0 dynamického programovacího jazyka Julia (Wikipedie) určeného zejména pro vědecké výpočty. Přehled novinek v příspěvku na blogu a v poznámkách k vydání. Aktualizována byla také dokumentace.

    Ladislav Hagara | Komentářů: 0
    včera 11:11 | Pozvánky

    Organizátoři konference LinuxDays zveřejnili program letošního ročníku a spustili registraci návštěvníků. LinuxDays 2026 se uskuteční 3. a 4. října v areálu ČVUT v pražských Dejvicích, na Fakultě informačních technologií. Těšit se můžete na 70 přednášek a workshopů od 66 přednášejících. Konference bude rozdělena do pěti sálů s různou kapacitou. Vstup na LinuxDays je jako obvykle zdarma, stačí včas vyplnit registrační formulář. Opět je možné si na akci zakoupit oběd, ale je třeba to udělat předem, na místě už to nebude možné.

    Petr Krčmář | Komentářů: 0
    včera 11:00 | Nová verze

    Google Chrome 153 byl prohlášen za stabilní. Nejnovější stabilní verze 153.0.8010.36 přináší řadu novinek. Podrobný přehled v poznámkách k vydání. Opraveno bylo 230 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    včera 03:33 | Nová verze

    Open-source hra Shattered Pixel Dungeon (Wikipedie) byla vydána ve verzi 4.0.0. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    9.9. 22:22 | IT novinky Ladislav Hagara | Komentářů: 6
    9.9. 17:44 | IT novinky

    Společnost System76 představila pracovní stanici Thelio Mira AI s předinstalovaným Pop!_OS s prostředím COSMIC nebo Ubuntu. Nakonfigurovat lze až s 16jádrovým CPU AMD Ryzen 9 9950X, 192 GB DDR5 RAM, dvěma GPU NVIDIA RTX Pro 6000 a 192 GB GPU pamětí.

    Ladislav Hagara | Komentářů: 9
    9.9. 17:00 | Komunita

    DigitalOcean je sponzorem nadace Omacom Foundation stojící za linuxovou distribucí Omarchy. Přislíbená částka je 3 miliony dolarů, tj. 1 milion dolarů ročně po dobu tří let.

    Ladislav Hagara | Komentářů: 4
    8.9. 21:11 | Zajímavý software

    Na stránkách PostgreSQL bylo představeno LibreDB Studio. Jedná se o open-source self-hostované SQL IDE pro (nejenom) PostgreSQL v prohlížeči. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 4
    8.9. 16:00 | Nová verze

    Byla vydána nová verze 12.0 media serveru Jellyfin (Wikipedie). Přehled novinek v poznámkách k vydání. Pro vyzkoušení je k dispozici Demo Server. Jellyfin je fork media serveru Emby, původně Media Browser.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (4%)
     (21%)
     (29%)
     (7%)
     (5%)
     (2%)
     (14%)
     (21%)
    Celkem 2638 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

    Dotaz: Zakodovaní shellu

    30.10.2013 13:59 Amatér
    Zakodovaní shellu
    Přečteno: 874×

    Pěkný den všem.

    Udělal jsem script.sh v shellu a rád bych ho dal na internet, ale nepřeji si, aby ho někdo upravoval. Vím, je to možná nemožné, stačí, aby ho nezvládly upravit alespoň neprofesionálové. Mám namysli nějaké kompilace nebo zkrátka jen zakódování obsahu scriptu. Tak, aby obyčejný člověk nemohl přečíst jak je script dělaný natož ho upravit. Počítám s tím, že zkušenější ajťáci nebo někde někdo to dokáži nějakým způsobem rozšifrovat a upravit, to mě ani tak netrápí.

    Na internetu jsem našel různé base64 bash encodery, ale nepřišel jsem na to, co pak s tím hashem, dával jsem ho do echa různě, ale stále linux debian viděl ten hash prostě jako hash a ne jako shellový script.

    Díky předem za váš.


    Řešení dotazu:


    Odpovědi

    30.10.2013 14:02 Kit
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Nejlépe bude, když ten skript smažeš. Tím ho nejlépe ochráníš před cizím zrakem.
    30.10.2013 14:52 Amatér
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Prosím, kdo mi nechcete pomoci, nespamujte mi tu. Děkuji za pochopení.
    30.10.2013 15:09 potato
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Za pochopení bychom také poděkovali, jenže se ho nedostává.

    Takže to pomocí base64 -d rozbal do nějakého dočasného souboru a ten spusť. Není to blbuvzdorné ani bezpečné. Nejspíš to zabrání v přečtení skriptu jen tobě samotnému, protože ostatní si dokáží vygooglit návod nebo se někoho zeptat, jak se to zčitelní. Ale co.
    30.10.2013 15:18 Amatér
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Ano, super, myslím, že víš o co mi jde, Akorát nevím jak provést to co jsi mi napsal. Nemáš prosím nějaký návod pro amatéra, jak script rozbalit do base64 -d?
    30.10.2013 17:45 potato
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    base64 -d je ten příkaz, který dekóduje base64. Pokud jsi to pomocí stejného příkazu (bez -d) zakódoval, tak jsi ho mohl těžko minout...

    Formulace ,skript rozbalit do base64 -d` nedává smysl.

    Je-li pro všechny ostatní na světě snažší si ten zdroják rozkódovat než pro tebe, tak proč to vlastně děláš?
    Tarmaq avatar 30.10.2013 14:25 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    A o co se snazis Amatere? Dat skript na internet, ale aby nebylo videt co v nem je? Co tedy ma byt smyslem umisteni na internet? Chces ten skript prodavat?
    Don't panic!
    30.10.2013 14:51 Amatér
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Nemusím ti vykládat k čemu mi to bude že?
    Slušně jsem požádal o pomoc, místo zbytečných keců jsi měl pomoci.
    Ano jsem amatér a co takový amatér asitak umí udělat za script?
    Myslíš, že by amatérům scriptík byl hodný prodeje?
    
    Prosím, kdo mi nechcete pomoci, nespamujte mi tu. Děkuji za pochopení.
    Tarmaq avatar 30.10.2013 15:31 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Snazil jsem se proste zjistit, proc to potrebujes, protoze se treba zbytecne trapis necim, cim se trapit nemusit. Myslim, ze jsem nepsal zbytecne kecy, pouze jsem mel nekolik vecnych dotazu. Jestli beres osloveni Amater jako urazku, tak za to nemuzu, kdyz jsi se tak sam pojmenoval.

    Kdybych ti nechtel pomoci, tak na tebe nereaguju. Pokud takhle budes reagovat, docilis tim akorat toho, ze ti nikdo nebude chtit pomoct.
    Don't panic!
    30.10.2013 15:43 Amatér
    Rozbalit Rozbalit vše Re: Zakodovaní shellu

    Řekl jsem co chci a tak přesně to potřebuji.

    Možnosti jsou dvě buď script.sh převest třeba na script.deb ( jiný formát, který nebude běžně čitelný )

    Druhá možnost je zakódovat obsah script.sh

    Amatéra za urážku neberu, však jsem amatér. ;)

    Promiň, že jsem po tobě vyjel, ale napsal jsem jak se věci mají a detaily, které ze mě taháš opravdu věcné nejsou.

    Chci pouze, aby když si můj script někdo stáhne, aby neotevřel v textovém editoru a neviděl script.

    Tarmaq avatar 30.10.2013 15:49 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    V textovem editoru lze otevrit jakykoliv soubor, nezavisle na pripone. Mne ty moje dotazy vecne prisly, tobe ne - ok.
    Don't panic!
    30.10.2013 16:08 Amatér
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Jo ale když otevřeš script.sh vidíš zdrojový kód, když otevřeš script.deb uvidíš ).f§ů.ů.§d.s)g.fs)g.)sfa.g)sfa.g§)ds-ag§).sad.g)§sad.g)§sad.g§).saf)§.v-sv1fsa981v95sad1v59sdav.sadů.v§)sad.v§)
    
    :D
    vladky avatar 30.10.2013 14:52 vladky | skóre: 19
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Ak to ma byt script volne dostupny a zakodovany, neviem si predstavit ze by som ho spustil bez toho aby som mohol pozriet co robi.
    30.10.2013 15:05 Amatér
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Nejde o to aby nikdo nevěděl co robí, ale aby když otevře script.sh, aby tam přímo neviděl zdrojový kód.
    30.10.2013 15:12 potato
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    K tomu není zapotřebí dělat nic, žádný zdrojový kód tam není. Skript je interpretovaná sekvence příkazů. Nemá žádný zdrojový kód, protože nemá ani žádný zkompilovaný kód.
    30.10.2013 15:16 Amatér
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Nechápu tvoji odpověď a jak souvisí s tím, že chci znečitelnit obsah souboru script.sh. 
    
    Obsah bude třeba: f9s5afdsa1f8dsa1f51dsa8f1dsa5f1sad1f89
    Ale debian ho po spuštění uvidí jako: mkdir /var/www/fotky
    Tarmaq avatar 30.10.2013 15:46 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Pokud ten skript zakodujes pomoci base64, nijak tim nezabranis aby si ho kdokoliv dekodoval. Zaroven pro spusteni na tvem debianu ho budes muset dekodovat. Stale mi ale unika proc davat na internet zakodovany skript. (Pokud je tim teda mysleno zverejneni skriptu a ne nejake zalohovani napr. v cloudu)
    Don't panic!
    vladky avatar 30.10.2013 15:19 vladky | skóre: 19
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    No to je vlastne to iste. Ked nevidim obsah scriptu, teda zdrojovy kod, tak neviem skontrolovat co ten script robi - ci nerobi aj nieco co nechcem.

    Ale teraz k veci, skus sa poobzerat po shc. Teraz som skusal prekonvertovat jednoduchy script a funguje to.

    shc -v -r -T -f script.sh
    30.10.2013 16:17 Amatér
    Rozbalit Rozbalit vše Re: Zakodovaní shellu

    Půl hodinky jsem se s tím zlobil a nepovedlo se mi to rozchodit, myslel jsi to dobře, moc ti děkuji. Někdo jiný už mi poradil gzexe, které mi za 200kb script.sh udělal 18kb script.sh a v něm

    "#!/bin/bash skip=44 tab=' ' nl=' ' IFS=" $tab$nl" umask=`umask` umask 77 gztmpdir= trap 'res=$? test -n "$gztmpdir" && rm -fr "$gztmpdir" (exit $res); exit $res ' 0 1 2 3 5 10 13 15 if type mktemp >/dev/null 2>&1; then gztmpdir=`mktemp -dt` else gztmpdir=/tmp/gztmp$$; mkdir $gztmpdir fi || { (exit 127); exit 127; } gztmp=$gztmpdir/$0 case $0 in -* | */*' ') mkdir -p "$gztmp" && rm -r "$gztmp";; */*) gztmp=$gztmpdir/`basename "$0"`;; esac || { (exit 127); exit 127; } case `echo X | tail -n +1 2>/dev/null` in X) tail_n=-n;; *) tail_n=;; esac if tail $tail_n +$skip <"$0" | gzip -cd > "$gztmp"; then umask $umask chmod 700 "$gztmp" (sleep 5; rm -fr "$gztmpdir") 2>/dev/null & "$gztmp" ${1+"$@"}; res=$? else echo >&2 "Cannot decompress $0" (exit 127); res=127 fi; exit $res ?‹??Ę!qR??script.sh KMÎČWPňHÍÉÉW(Ď/ĘIQT? $±şŚ? "

    nicméně funguje to stejně, jakoby tam bylo : echo " Hello wordl!"

    30.10.2013 16:31 Kit
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Úchvatné. Nejde mi do hlavy, jak je možné udělat v Bashi 200KB skript.
    30.10.2013 17:46 potato
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Snadno, autoconfem ;)
    30.10.2013 15:48 Radovan Garabík
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Hotové riešenie je použiť gzexe. Ako bonus to aj zmenší veľkosť....
    30.10.2013 16:20 Amatér
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Super věcička, to nejlepší co mi mohl kdo poradit. Moje VPS už gzexe má v sobě, splnilo to účel na jedničku a ještě velká komprese skriptu, mám radost, moc děkuji. Zatím jsem testoval pouze kousek scriptu, teď to jdu prohnat gzexe celé, snad se povede a nikterak to ten script nezdeformuje nebo tak něco. :D
    30.10.2013 16:22 NN
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Co treba takto:
    #!/bin/sh
    
    shellcode='\x65\x63\x68\x6f\x20\x53\x68\x65\x6c\x6c\x20\x63\x6f\x64\x65\x2e\x0a'
    
    `printf $shellcode`
    
    Generovano pomoci:
    echo 'echo Shell code.' | xxd -p - | sed 's/\(..\)/\\x\1/g'
    
    30.10.2013 17:08 Amatér
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    To by bývalo také šlo, ale gzexe mi bohatě postačí. Děkuji za radu. ;)
    Punny avatar 30.10.2013 16:43 Punny | skóre: 28 | Praha
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Pripojim se k ostatnim...to co potrebujes je volovina :) ale budiz...
    Kdyz uz to ma byt prasecina tak to prepis treba do javy a spoutej jednotlive prikazy. Zverejnit muzes treba jen binarku
    zajimalo by me kdo bude mit koule tohle spustit :D
    30.10.2013 16:46 Kit
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Každý, kdo umí spustit gzexe -d :-)
    30.10.2013 17:09 Amatér
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Můj script není těžký a ten kdo umí gzexe -d si ten script umí napsat lépe. Ten kdo neumí, alespoň nebude makat na můj.
    30.10.2013 17:52 potato
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Množina lidí, kteří umějí spustit skript, se dost podobá množině lidí, kteří umějí spustit gzexe -d.

    A na rozbalení ani nemusí umět gzexe použít každý, stačí když to rozbalí jeden a ostatním to poví.

    Nejspíš tam píšeš nějaké ,tajné` kódy nebo děláš nějakou podobnou security through obscurity. To nefunguje.
    30.10.2013 17:10 Amatér
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Vyřešeno pomocí GZEXE díky mockrát vše za pomoc. ;)
    Jendа avatar 30.10.2013 22:58 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    Takže stačí počkat, až to gzexe rozbalí do /tmp a zkopírovat si to.
    30.10.2013 23:31 Ivan
    Rozbalit Rozbalit vše Re: Zakodovaní shellu
    V davnych dobach, kdyz jeste na Unixech nebyly baliky se pouzivaly tzv. shar archivy. Ty byl shell script ke kteremu byl "priplacnuty" .tar.Z (anebo cpio) archiv . Takovy script se spustil a "sam" se rozbalil.

    Založit nové vláknoNahoru

    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.