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í
×
    dnes 03:55 | IT novinky

    Společnost Valve publikovala na svém GitLabu nákresy a schémata zapojení headsetu Steam Frame. Pro nekomerční účely.

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

    Soutěž Pwn2Own Ireland 2026 skončila 9. října. Bezpečnostní výzkumníci získali celkem 1 262 000 dolarů na odměnách. Během soutěže bylo předvedeno zneužití 98 zero-day zranitelností. Testování zahrnovalo různé kategorie zařízení a software. Výzkumníci předváděli prakticky fungující útoky podle pravidel soutěže. Výsledky následně slouží výrobcům při přípravě oprav. Mezi pokořenými jsou: Samsung Galaxy S26, OpenAI Codex, Oracle Autonomous AI Database, Google Pixel 10, u iPhone 17 neuspěli.

    vencour | Komentářů: 0
    9.10. 22:44 | Nová verze

    Programovací jazyk Python byl vydán v nové verzi 3.15.0. Podrobný přehled novinek v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 6
    9.10. 22:33 | Zajímavý projekt

    BIGWORDS.PAGE je open-source webová aplikace, která po otevření odkazu v prohlížeči vykreslí přes celou obrazovku jednoduché informační sdělení. Zpráva i její nastavení jsou uložené v části URL za znakem #, například odkaz https://bigwords.page/#abclinuxu zobrazí jako velký bílý nápis 'abclinuxu' na černém pozadí. Obsah odkazu lze upravovat i vestavěným editorem, ten umožňuje nastavovat formátování a vizuální efekty textu, časovače, QR kódy a obrázky. Zdrojový kód je dostupný pod licencí MIT na GitHubu.

    ❗Červivý Hřib krade❗ | Komentářů: 8
    9.10. 11:55 | Upozornění

    V neděli 11. října proběhne rotace klíče kořenové zóny. Podruhé v historii. Ondřej Filip na blogu CZ.NIC: "Pokud je pro Vás DNS protokol spíše výzva, ale přesto spravujete nějakou síť či DNS resolver, zkuste si jednoduchý test, který připravila firma Cloudflare na této adrese. Obzvláště zbystřit byste měli, pokud uvidíte nějaká červená políčka."

    Ladislav Hagara | Komentářů: 14
    9.10. 09:55 | IT novinky

    Vláda Spojených států se rozhodla vyřadit americkou softwarovou společnost Microsoft a několik dalších velkých technologických podniků z programu, který umožňuje kvalifikovaným zahraničním pracovníkům získat povolení k trvalému pobytu. Oznámila to včera administrativa amerického prezidenta Donalda Trumpa. Opatření zdůvodnila rozsáhlým zneužíváním programu, který je dlouhodobě terčem kritiky ze strany Trumpových příznivců, neboť prý znevýhodňuje americké pracovníky.

    Ladislav Hagara | Komentářů: 11
    9.10. 09:44 | IT novinky

    Datové centrum největší ruské technologické společnosti Jandex v Rjazaňské oblasti se stalo cílem dronového útoku a zastavilo provoz. Jandexu se někdy přezdívá „ruský Google“. Provozuje nejoblíbenější internetový vyhledávač v Rusku nebo aplikace pro objednávky jídla a taxi. Využívají jej desítky milionů lidí v rusky mluvících zemích.

    Ladislav Hagara | Komentářů: 12
    9.10. 09:33 | Nová verze

    Francouzská společnost Mistral AI představila Mistral Large 4 (interně přezdívaný 'le Chonk', volně přeloženo 'pořádný macek'), 'open-weight multimodální hybridní instruct-and-reasoning model s architekturou granulárního MoE, nativně podporující více jak 160 jazyků'. Model má přes jeden bilión parametrů, z nichž při práci využívá 49 miliard, kontextové okno o délce milion tokenů a obrazový enkodér o 1,6 miliardách parametrů.

    … více »
    ❗Červivý Hřib krade❗ | Komentářů: 2
    9.10. 03:22 | Nová verze

    Svobodný multiplatformní herní engine Bevy napsaný v Rustu byl vydán ve verzi 0.20. Díky 227 přispěvatelům.

    Ladislav Hagara | Komentářů: 0
    9.10. 03:11 | Komunita

    Simon Long oznámil Raspberry Pi Desktop pro PC a Mac s Intelem postavený na aktualizovaném Debianu 13 Trixie. S klientem Raspberry Pi Connect pro vzdálenou správu. Ke stažení je vedle Raspberry Pi OS pro Raspberry Pi.

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

    Heslo ve scriptu

    11.7.2019 08:02 | Přečteno: 2836× | linux

    Nedávno jsem řešil ukrytí hesla ve skriptu tak, aby nebilo do očí, když skript prohlížíte / upravujete, a někdo, koho nemůžete odehnat, vám stojí za zády.
    REMOTE_PASS="mypass"

    Nevypadá profesionálně, i když je to skript spouštěný automaticky ... Na starším systému jsem tento problém řešil nejprve sourcováním ( myslím, že se tomu tak říká ), ale po nějaké době jsem se rozhodl hesla ukrýt zašifrováním ...

    Použil jsem jednorázově nějaký mdcrypt nebo co (google napověděl) a po dlouhé době, když nastal čas přesunout se na nový systém, jsem si pak nemohl vzpomenout, jak jsem to prováděl :).

    Jak se dekóduje, to ve skriptu je, ale jak se kódovalo ? ... historie bashe moc nepomohla, nicméně najít mdcrypt pro Leap 15 se mi stejně nepovedlo, tak jsem se rozhodl na novém serveru jít na to od podlahy.

    Trochu jsem pohledal na netu ( opravdu nejsem na úrovni, kdy sypu parametry na příkazovou řádku k čemukoliv z paměti ), co se dá v dnešní době použít, a nakonec jsem se rozhodl pro openssl.

    Protože předchozí řešení bylo ad hoc, rozhodl jsem se nyní, že z toho udělám trochu použitelnější kód, abych po roce - dvou viděl, jak jsem postupoval, a mohl tohle znovu použít bez hodin googlení ...

    V ~/bin jsem vytvořil složku "hesla". do složky jsem umístil skript, který heslo zašifruje. Protože jsem plánoval uložit takto více hesel, rozhodl jsem se heslům přidělit "realm" nebo jak to nazvat.

    Každý realm by měl 2 soubory : náhodné heslo k zašifrování a samotné zašifrované heslo. Šel jsem na to takto :

    #! /bin/bash
    
    read -p "Realm : " realm
    
    echo
    heslo1="."
    heslo2=","
    
    
    while ! [ "$heslo" = "$heslo2" ]; do
    	echo
    	read -s -p "Heslo : " heslo
    	echo
    	read -s -p  'Heslo znovu : '  heslo2
    	if ! [ "$heslo" = "$heslo2" ]; then
    		echo " hesla nejsou stejná !! "
    	fi
    	echo
    done 
    
    echo "Vytvářím šifrovací heslo : " 
    spice=`openssl rand 500 | tr -cd "[:print:]" | head -c 16` 
    
    echo -n $spice > "$realm"_spice.pass
    
    echo "Šifruju heslo"
    encoded=`echo -n $heslo | openssl enc -aes-256-cbc -a -salt -pass pass:"$spice"`
    
    echo -n "$encoded" > "$realm"_enc.pass
    echo "Hotovo!"
    Tento kód tedy vytvoří šifrovací heslo, zašifrované moje heslo a obě uloží do souborů s předponou názvu realmu. Jiný soubor zase poskytuje funkci, která vrátí heslo dešifrované :
    function get_pw(){
    
    	if [ -n "$1" ]; then
    		realm="$1"
    	else
    		echo "bad realm"
                    exit 1
    	fi
    	mypass=`cat $HOME/bin/hesla/"$realm"_spice.pass`
    	eheslo=`cat $HOME/bin/hesla/"$realm"_enc.pass`
    	echo $eheslo  | openssl enc -aes-256-cbc -a -d  -salt -pass pass:"$mypass"
    	echo $heslo
    }
    
    Ve skriptu tedy sourcuji soubor s funkci, a pak získám heslo třeba k databází ( předtím vytvořený realm "database" ):
    DB_PASS=get_pw "database" 

    Ve skriptech moc neřeším kontroly, ostatně, jsou určeny pro omezené použítí, a pouze pro mně. Pokud si (náhodou) budete tuhle nadstavbu přizpůsobovat pro své účely ... je to na vás. Je možné, někdo z vás používá elegantnější metodu, já jsem lepší nevykoumal.

    Toto řešení není obranou proti hackerům od Putina, jen elegantně ukryje heslo ve skriptu, aby nebilo do očí.

    Dík za přečtení, snad toto řešení někomu ulehčí život..

    Tak teď trhejte ! :-)

           

    Hodnocení: 100 %

            špatné • dobré        

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

    Komentáře

    Vložit další komentář

    xkucf03 avatar 11.7.2019 10:14 xkucf03 | skóre: 50 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Heslo ve scriptu

    OpenSSL mi hlásí varování:

    $ echo ahoj | openssl enc -aes-256-cbc -a -salt -pass pass:heslo
    *** WARNING : deprecated key derivation used.
    Using -iter or -pbkdf2 would be better.
    U2FsdGVkX1/MmdqIhLBWQQxQ1RM1OguQlsQVjCxe5OU=

    Lepší by tedy bylo použít:

    $ echo ahoj | openssl enc -aes-256-cbc -a -pbkdf2 -pass pass:heslo
    U2FsdGVkX1/MXOXIoTimxz/EwJpqshL6s/iGbm7aDWI=

    Nicméně celé šifrování je tu trochu nadbytečné, když jsou zašifrovaná data i heslo v souborech hned vedle sebe. Když už, tak se dělá aspoň to, že zašifrovaná data jsou v souborech a heslo v databázi – nebo naopak – takže kdyby někdo ukradl zálohu jen souborů nebo jen databáze, k datům se nedostane, takže to trochu nějaký smysl má (byť je to pořád v podstatě security through obscurity).

    Pokud by šlo jen o to „aby nebilo do očí, když skript prohlížíte / upravujete, a někdo, koho nemůžete odehnat, vám stojí za zády“ – tak na to stačí i kódování Base 64, není potřeba šifrovat.

    Důležité je, aby byla hesla/klíče oddělená od programu/skriptu a nemohla se ani náhodou dostat do historie verzovacího systému.

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    11.7.2019 11:48 Milan Uhrák | skóre: 31 | blog: milan_at_ABC
    Rozbalit Rozbalit vše Re: Heslo ve scriptu
    Hm, ssh mi tuto hlášku nehodilo, ale jistě je to dobrý posun vpřed ( opustit salt ).

    Co se týče toho zašifrování, tak ano , na zamýšlený účel je to kanón na vrabce a na pořádné zabezpečení slabý půlkrok vpřed.

    Ale touhle cestou jsem se dal, a došel jsem do cíle. Řešení se dá později uzpůsobit k různým vylepšením, což base64 už nenabízí.

    Díky za ohlas ..

    M.
    11.7.2019 23:16 ACSA
    Rozbalit Rozbalit vše Re: Heslo ve scriptu
    Pojem security through obscurity se používá pro tři úplně odlišné věci:
    1) místo toho abych to zabezpečil pořádně, tak to jen zobfuskuju.
    - Tohle je samozřejmě fuj.
    2) zabezpečím to a obfuskuju (nebo k tomu třeba aspoň nezveřejním zdrojáky).
    - Může snižovat udržovatelnost
    - Může snižovat šanci odhalit chyby, které tam přecejen omylem udělám - žádný program není bez chyb
    - Ztěžuje automatické zneuití průniku, což v globálu vede ke zvyšování nákladů útočníka - pokud díky chybě v nějaké serverové komponentně ukradnu 10 000 všemožně zašifrovaných databází, je to fakt opruz i když ty klíče mám k dispozici.)
    3) zabezpečit to nejde, tak to aspoň obfuskuju.
    - Bezpečné to není
    - Dokáže nechutně ztížit práci. Patří sem třeba ochrana proti kopírování programů, DRM, nebo viry. A v tom fakt není sranda se hrabat.
    Jendа avatar 12.7.2019 15:14 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Heslo ve scriptu
    3) má zajímavý důsledek že typicky znemožňuje adminovi který to nechce crackovat pochopit co na čem závisí a kudy jaká citlivá data tečou a na základě toho učinit správné rozhodnutí o zabezpečení. Celá ta Pass-The-Hash sága + toto vzniklo podle mě přesně z tohoto důvodu.
    12.7.2019 17:01 ACSA
    Rozbalit Rozbalit vše Re: Heslo ve scriptu
    No... Já vidím problém v tom, že Microsoft napřed dal lidem iluzi alespoň nějaké bezpečnosti (a tím je přesvědčil že sdílet ten soubor s lidmi není naprosto nepřípustné), a pak to celé sabotoval tím že to heslo napsal na web.
    Jendа avatar 12.7.2019 17:25 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Heslo ve scriptu
    IMHO kdyby ho nenapsal na web tak to stejně za chvíli někdo reverzne. Viz třeba mimikatz.
    12.7.2019 18:42 ACSA
    Rozbalit Rozbalit vše Re: Heslo ve scriptu
    Já bych to nepsal na web a do toho souboru napsal takové to klasické "nikomu tenhle soubor neposílejte". Jinak díky za tip na zajímavej SW.
    12.7.2019 18:45 ACSA
    Rozbalit Rozbalit vše Re: Heslo ve scriptu
    Byť je teda otázka, jestli to někdo nezreverzí už týden po vydání, no..
    Josef Kufner avatar 11.7.2019 20:27 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Heslo ve scriptu
    Prostě to heslo dej do jiného souboru. Třeba do ~/.netrc. Nebo kamkoliv jinam. Tím také vyřešíš to, že to heslo necommitneš spolu se scriptem (pokud bys ho někam commitoval).
    Hello world ! Segmentation fault (core dumped)
    11.7.2019 22:45 kralyk z abclinuxu | skóre: 29 | blog:  
    Rozbalit Rozbalit vše Re: Heslo ve scriptu
    A potřebuješ nutně heslo? Nemůžeš to vyřešit třeba přihlášením přes pubkey (pokud to je ssh)?
    12.7.2019 11:16 Xerces
    Rozbalit Rozbalit vše Re: Heslo ve scriptu
    Hele pokud má mít skript přístup k nějakému zdroji a ty máš přístup ke skriptu, tak to je asi neřešitelný problém bych řekl. :-) Navrhoval bych znepřístupnit ten soubor všem kromě root uživatele daného serveru.
    xsubway avatar 12.7.2019 11:35 xsubway | skóre: 13 | blog: litera_scripta_manet
    Rozbalit Rozbalit vše Re: Heslo ve scriptu
    To ale neřeší "čumili", tedy jen částečně :-)

    Ty se totiž řeší jinak. Ale samozřejmě je vhodné oddělit kód a hesla.
    12.7.2019 20:27 Milan Uhrák | skóre: 31 | blog: milan_at_ABC
    Rozbalit Rozbalit vše Re: Heslo ve scriptu
    Jasně ... takto není vidět heslo, ani když zkontroluji ( otevřu a mrknu se ) na obsah souborů s hesly a s čumilem za zády ...

    Myslím, že zašifrování hesla tímto způsobem splňuje přesně to, co jsem chtěl a umožňuje případné rozšíření o různé skrývačky a vylepšení.

    Ale nejsem v situaci, kdy by stálo za to komplikovat si toto dalšími labyrinty ... prozatím.

    Díky za reakce

    M.
    15.7.2019 15:00 ::: | skóre: 14 | blog: e_lama
    Rozbalit Rozbalit vše Re: Heslo ve scriptu
    Jasně ... takto není vidět heslo, ani když zkontroluji ( otevřu a mrknu se ) na obsah souborů s hesly a s čumilem za zády ...
    Proc by ses do toho souboru dival kdyz tam to heslo neuvidis ani ty? :-)
    16.7.2019 10:11 Milan Uhrák | skóre: 31 | blog: milan_at_ABC
    Rozbalit Rozbalit vše Re: Heslo ve scriptu
    to byl myšlen případ, kdy hesla vysourcuju v otevřeném textu do vedlejšího souboru...
    Gilhad avatar 17.7.2019 16:55 Gilhad | skóre: 20 | blog: gilhadoviny
    Rozbalit Rozbalit vše Re: Heslo ve scriptu
    Treba pokud mam takovych vic a vim, ze to je na tri ruzne stroje a u jednoho to zakodovane zacina AA u druheho to konci 222 a ten treti je proste divnej, tak mi jedno mrknuti staci, abych videl, zda paruju spravny stroj se spravnym heslem :)
    21.7.2019 10:13 KS | skóre: 10 | blog: blg | Horní polní u západní dolní
    Rozbalit Rozbalit vše Re: Heslo ve scriptu
    Nebo dej heslo do proměnné prostředí. Tu proměnnou potom můžeš nastavovat ručně nebo nějakým wrapperem.
    Pochybnost, nejistota - základ poznání

    Založit nové vlákno • Nahoru

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