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í
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
dnes 11:44 | Zajímavý projekt

Na Indiegogo byla spuštěna kampaň na podporu herní mini konzole a multimediálního centra RetroEngine Sigma od Doyodo. Předobjednat ji lze již od 49 dolarů. Požadovaná částka 20 000 dolarů byla překonána již 6 krát. Majitelé mini konzole si budou moci zahrát hry pro Atari VCS 2600, Sega Genesis nebo NES. Předinstalováno bude multimediální centrum Kodi.

Ladislav Hagara | Komentářů: 0
dnes 00:10 | Nová verze

Byla vydána verze 4.7 redakčního systému WordPress. Kódové označením Vaughan bylo vybráno na počest americké jazzové zpěvačky Sarah "Sassy" Vaughan. Z novinek lze zmínit například novou výchozí šablonu Twenty Seventeen, náhledy pdf souborů nebo WordPress REST API.

Ladislav Hagara | Komentářů: 0
včera 12:00 | Zajímavý projekt

Projekt Termbox umožňuje vyzkoušet si linuxové distribuce Ubuntu, Debian, Fedora, CentOS a Arch Linux ve webovém prohlížeči. Řešení je postaveno na projektu HyperContainer. Podrobnosti v často kladených dotazech (FAQ). Zdrojové kódy jsou k dispozici na GitHubu [reddit].

Ladislav Hagara | Komentářů: 16
včera 11:00 | Bezpečnostní upozornění

Byly zveřejněny informace o bezpečnostní chybě CVE-2016-8655 v Linuxu zneužitelné k lokální eskalaci práv. Chyba se dostala do linuxového jádra v srpnu 2011. V upstreamu byla opravena minulý týden [Hacker News].

Ladislav Hagara | Komentářů: 2
5.12. 22:00 | Komunita

Přibližně před měsícem bylo oznámeno, že linuxová distribuce SUSE Linux Enterprise Server (SLES) běží nově také Raspberry Pi 3 (dokumentace). Obraz verze 12 SP2 pro Raspberry Pi 3 je ke stažení zdarma. Pro registrované jsou po dobu jednoho roku zdarma také aktualizace. Dnes bylo oznámeno, že pro Raspberry Pi 3 je k dispozici také nové openSUSE Leap 42.2 (zprávička). K dispozici je hned několik obrazů.

Ladislav Hagara | Komentářů: 6
5.12. 06:00 | Zajímavý software

OMG! Ubuntu! představuje emulátor terminálu Hyper (GitHub) postavený na webových technologiích (HTML, CSS a JavaScript). V diskusi k článku je zmíněn podobný emulátor terminálu Black Screen. Hyper i Black Screen používají framework Electron, stejně jako editor Atom nebo vývojové prostředí Visual Studio Code.

Ladislav Hagara | Komentářů: 50
5.12. 06:00 | Zajímavý článek

I letos vychází řada ajťáckých adventních kalendářů. QEMU Advent Calendar 2016 přináší každý den nový obraz disku pro QEMU. Programátoři se mohou potrápit při řešení úloh z kalendáře Advent of Code 2016. Kalendáře Perl Advent Calendar 2016 a Perl 6 Advent Calendar přinášejí každý den zajímavé informace o programovacím jazyce Perl. Stranou nezůstává ani programovací jazyk Go.

Ladislav Hagara | Komentářů: 10
3.12. 16:24 | Nová verze

Byla vydána Mageia 5.1. Jedná se o první opravné vydání verze 5, jež vyšla v červnu loňského roku (zprávička). Uživatelům verze 5 nepřináší opravné vydání nic nového, samozřejmě pokud pravidelně aktualizují. Vydání obsahuje všechny aktualizace za posledního téměř půldruhého roku. Mageia 5.1 obsahuje LibreOffice 4.4.7, Linux 4.4.32, KDE4 4.14.5 nebo GNOME 3.14.3.

Ladislav Hagara | Komentářů: 17
3.12. 13:42 | Pozvánky

V Praze probíhá konference Internet a Technologie 16.2, volné pokračování jarní konference sdružení CZ.NIC. Konferenci lze sledovat online na YouTube. K dispozici je také archiv předchozích konferencí.

Ladislav Hagara | Komentářů: 0
2.12. 22:44 | Komunita

Joinup informuje, že Mnichov používá open source groupware Kolab. V srpnu byl dokončen dvouletý přechod na toto řešení. V provozu je asi 60 000 poštovních schránek. Nejenom Kolabu se věnoval Georg Greve ve své přednášce Open Source: the future for the European institutions (SlideShare) na konferenci DIGITEC 2016, jež proběhla v úterý 29. listopadu v Bruselu. Videozáznam přednášek z hlavního sálu je ke zhlédnutí na Livestreamu.

Ladislav Hagara | Komentářů: 26
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (24%)
 (29%)
 (8%)
 (5%)
 (3%)
Celkem 780 hlasů
 Komentářů: 50, poslední 29.11. 15:50
Rozcestník
Reklama

Dotaz: Zakodovaní shellu

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

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: 18
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: 18
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: 73 | blog: Výlevníček | 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.