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 12:33 | Bezpečnostní upozornění

    Byla vydána nová verze 9.9p2 sady aplikací pro SSH komunikaci OpenSSH. Řešeny jsou 2 bezpečnostní chyby: CVE-2025-26465 (MITM pokud je zapnuta volba VerifyHostKeyDNS, ve výchozím stavu je vypnuta) a CVE-2025-26466 (DoS). Detaily na stránkách společnosti Qualys (txt).

    Ladislav Hagara | Komentářů: 0
    dnes 02:44 | Zajímavý článek

    Argentinský prezident Javier Milei čelí více než stovce žalob a trestních oznámení kvůli spáchání podvodu, protože na svých sociálních sítích propagoval kryptoměnu $LIBRA, jejíž hodnota se v krátké době znásobila a pak zhroutila.

    Ladislav Hagara | Komentářů: 14
    včera 18:55 | Nová verze

    Wayland Protocols byly vydány ve verzi 1.41. S dlouho očekávaným protokolem správy barev a High Dynamic Range (HDR).

    Ladislav Hagara | Komentářů: 0
    včera 17:22 | Nová verze

    Multiplatformní open source voxelový herní engine Luanti byl vydán ve verzi 5.11.0. Podrobný přehled novinek v changelogu. Původně se jedná o Minecraftem inspirovaný Minetest (Wikipedie) v říjnu loňského roku přejmenovaný na Luanti.

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

    V stredu 19. 02. 2025 o 10:00h bude spustený jarný webinár zdarma. Na tomto webinári si ukážeme praktické ukážky monitorovania Prometheus endpointov s využitím nástroja Zabbix. Účastníci sa dozvedia, ako nastaviť a konfigurovať Zabbix na zber dát z prometheus exporterov vrátane vytvárania LLD pravidiel. Tento webinár je určený pre mierne pokročilých administrátorov Zabbixu. Registrácia na stránke: Axians Slovakia. Zoznam všetkých webinárov: Axians Slovakia webináre.

    Axians Slovakia | Komentářů: 9
    včera 02:22 | Nová verze

    Byla vydána beta verze GNOME 48. Vyzkoušet lze instalační ISO GNOME OS. Vydání GNOME 48 je plánováno na březen.

    Ladislav Hagara | Komentářů: 0
    16.2. 21:22 | Nová verze

    Bochs (Wikipedie), tj. emulátor počítačů typu x86 a x86-64, byl vydán ve verzi 3.0.

    Ladislav Hagara | Komentářů: 0
    16.2. 17:00 | Zajímavý článek

    Věříte své kalkulačce? Kolik je (10^100) + 1 − (10^100)? A kolik 1%−1%?

    Ladislav Hagara | Komentářů: 5
    15.2. 16:22 | Komunita

    Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.

    Ladislav Hagara | Komentářů: 0
    15.2. 12:00 | Humor

    FlappyFavi, hra Flappy Bird v ikoně Favicon. Nefunguje na mobilech.

    Ladislav Hagara | Komentářů: 0
    Rozcestník

    Dotaz: Ako zakazat spustenie specifickych prikazov (aj pod rootom)

    21.11.2010 01:48 ag3nTt
    Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    Přečteno: 516×
    Zdravim.

    Na zaciatok uvediem, preco ma odpoved na tento zdanlivo blby dotaz zaujima. Uz 2x sa mi stalo, ze som v rychlosti omylom pod rootom spustil v / prasarnu "chmod 777 * -R" (nez som to stihol zastavit, stihlo to "potunit" obsah /etc/), pripadne iny specificky command, ktory moze sposobit nejaku neprijemnost (napr. legendardny rm -rf /). Ja viem, som idiot, ale nepiste mi prosim, ze mam byt opatrnejsi, chcem nejake spolahlivejsie riesenie, ktore osetri aj zlyhanie ludskeho faktoru :)

    Viete o niecom, co by zabranilo exekucii nejakych, admin-defined prikazov? Prip. ze by sa to u nejakych specifickych prikazov v interactive mode spytalo nieco v zmysle "Are you sure?" .. alebo este lepsie, ak by sa dalo definovat, ze ak by niekto spustil akymkolvek sposobom (cez shell, alebo z akehokolvek programu) napr. "chmod 777 * -R", vyhodit na stderr hlasku: Forbidden, don't be lazy and use "chmod 777 /your/folder/ -R". Bohate by mi stacilo moznost definovat zakazane commandy striktne, luxus by bola moznost definovat masku regexom (na rychlo napr. ^chmod [0-9]+.+\-R.*$)

    Teoreticky by nieco mohlo existovat, kedze na podobnej vrstve operuje aj sudo. Je to ale somarinka, hladam nieco jednoducho pouzitelne, ziadne patche kernelu apod.

    Vopred dakujem za kazdu radu, postreh, napad, cokolvek.

    PS: pouzivam Gentoo.

    J.

    Řešení dotazu:


    Odpovědi

    21.11.2010 02:04 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)

    Asi by šlo opatchovat shell, ale nějak si nedokážu představit, jak byste takový seznam "nebezpečných" příkazů vlastně chtěl sestavovat. Problém by se měl řešit tam, kde vzniká: ve vaší hlavě. Jinak totiž docílíte jen toho, že budete dělat totéž co dosud, jenom při tom navíc budete obcházet svůj blacklist.

    Mimochodem, nezvykejte si psát přepínače až po argumentech. Je to dost ošklivý GNU-ismus a pokud si na to navyknete, budete mít problémy, až si sednete k nějakému systému s korektně se chovající implementací getopt().

    21.11.2010 05:37 ag3nTt
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    Vdaka za odpoved. Popravde, prepinace a celkovo options pouzivam vsade na zaciatku, ale u chmodu a chownu je to isty nezvyk, ani sam neviem preco, musim sa to odnaucit. Co sa tyka riesenia problemu tam kde vznika, na to som prave komentare nepotreboval. Nedavno som musel pracovat na dialku s nejakym debianom a z nejakeho dovodu, nech bol terminal (SecureCRT, alebo Putty) nastaveny akokolvek, stale sa konzola rendrovala sialene, texty boli rozhodene, necleanovalo sa to, atd.. takze som miestami ani nevidel co spustam. Nie vzdy je druha strana (napr. admin vzdialeneho systemu) ochotna adekvatne pomoct, musime improvizovat :-/
    blami avatar 21.11.2010 03:04 blami | skóre: 29 | Praha
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    Nejsem zrovna priznivcem ani znalcem reseni jako je SELinux ci AppArmor, ale domnivam se, ze to jsou nastroje ktere hledate a tudiz klicova slova, ktera bych zkusil Googlit. Tusim ze i tady na ABCLinuxu vysel pekny clanek o SELinuxu.
    21.11.2010 04:36 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    AppArmor určitě neřeší parametry příkazů a AFAIK ani SELinux. Navíc je potřeba si uvědomit, že tazatel chce rozlišovat parametry v podobě, v jaké je napíše, tj. ještě před expanzí shellem.
    21.11.2010 10:10 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    Zabránit spouštění programů můžete tak, že jim odeberete právo --x. Ale zrovna bez chmod se to bude blbě vracet, až ten příkaz budete chtít opravdu použít. Navíc pak budete naštvaný, že jste ten příkaz musel složitě zprovozňovat, a tomu, co děláte, budete věnovat ještě menší pozornost.

    Dotaz by se dal řešit pomocí nějakého wrapperu, který byste spouštěl místo původního programu přes alias shellu. Některé programy už mají takovou možnost dotazu v sobě, a některé distribuce takové aliasy standardně nastavují, takže pak máte třeba alias rm=rm -i. Ale tím si jen přidáte další zbytečný dotaz, jak ve Windows, a když bezmyšlenkovitě příkaz odeentrujete, stejně bezmyšlenkovitě pak odpovíte na „Are you sure?“… Podle mne jediné řešení je změnit své chování a pod rootem nepracovat zbrkle.
    21.11.2010 13:58 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    Dotaz by se dal řešit pomocí nějakého wrapperu, který byste spouštěl místo původního programu přes alias shellu.

    Jak takový wrapper pozná, že byl příkaz zapsán jako 'chmod ... *', když od shellu nedostane hvězdičku, ale expandovaný seznam jmen? Asi jsem tu první odpověď měl rozepsat podrobněji, aby další zbytečně neopakovali slepé uličky, které jsem už vyloučil.

    21.11.2010 16:04 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    Parametry by ten wrapper neřešil. Bylo by to nejjednodušší požadované řešení, tj. u daného příkazu by se pokaždé zeptal, bez ohledu na parametry. Nemá ale smysl bádat nad tím, jak by se to teoreticky mohlo řešit a zda jde vyhovět základnímu požadavku, nebo i těm rozšířeným – řešení je jediné, pokud pracuje dotyčný pod rootem, nemá se chovat zbrkle. A to už tu myslím bylo napsáno několikrát.
    Řešení 1× (ag3nTt (tazatel))
    21.11.2010 10:47 Miklik | skóre: 27 | Krnov
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    Řešením by mohlo být, napsat si wraper skripty pro nebezpečné příkazy.

    Přidejte si do $PATH na začátek cestu, něco jako /usr/local/wrapers. Tu složku vytvořte a do ní dáte skripty pojmenované stejně jako vaše nebezpečné příkazy, například rm, chmod a podobně. V těch skriptech si pak na začátku ošetříte nebezpečné parametry a pokud příkaz projde tak se spustí ze skriptu, pokud ne, tak třebas vypíše hlášku. Příkaz ve skriptu bude třeba zadat s úplnou cestou. Je třeba taky skriptum nastavit patřičné práva, aby si do nich nějaký jouda něco nedopsal.
    Netvrdím to, ale možná je to pravda.
    21.11.2010 18:19 ag3nTt
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    Anooo, toto je presne to, co som potreboval .. dakujem za nakopnutie, tuto maxi simple variantu som si neuvedomil.
    stativ avatar 21.11.2010 18:51 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    A nezapomeň spouštět bash v restricted režimu, aby si kdejaký trouba nezměnil path nebo nevolal binárky přímo
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    stativ avatar 21.11.2010 19:24 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    Aha, teď jsem si dotaz přečetl. Ber to jako bych nic nenapsal, myslel jsem, že to potřebuješ jiným uživatelům zabránit ve spouštění některých apps.
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    Řešení 1× (ag3nTt (tazatel))
    21.11.2010 11:56 NN
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    Jako uplne easy reseni vidim napsat si pro dane prikazy vhodne aliasy tipu:
    alias rm'=rm -i'
    alias chmod='echo are you sure ?; read && chmod'
    
    Pripadne neco tvrdsiho jako grsec..

    NN
    21.11.2010 18:20 ag3nTt
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    Aaa .. druha mozna varianta, dakujem za napad!
    22.11.2010 00:34 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    1.) "f" v "rm -rf *" prebije aliasove "i", takze to nic neriesi.

    2.) Clovek si zvykne aj na sibenicu, takze jeden automaticky enter navyse uz zvladne.

    3.) moze skusit "rm -I"
    If you hold a Unix shell up to your ear, you can you hear the C.
    21.11.2010 16:16 moira | skóre: 30 | blog: nesmysly
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    Řešíš neřešitelné. Selhání lidskhého faktoru odstraníš jedině tak, že odstraníš samotný lidský faktor.
    Překladač ti nikdy neřekne: "budeme kamarádi"
    21.11.2010 18:23 ag3nTt
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    Clovece, nehnevaj sa, ale tieto komentare fakt nepotrebujem. Na rozdiel od tvojho prazdneho prispevku Miklik a NN vedeli situaciu vyriesit a pomoct mi.
    21.11.2010 19:05 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    Přesně naopak. Miklik a NN jednak vůbec neodpovídali na váš dotaz, jednak pominuli podstatu problému. Odpověď moiry je mnohem víc k věci.
    21.11.2010 19:46 ag3nTt
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    Prepac, ale ja som ten, kto ten problem ma, takze viem najlepsie, kto podstatu mojho problemu pochopil a spravne to zodpovedal.

    Ma to byt proste "istenie". Profi horolezec sa tiez radsej pre kazdy pripad isti druhym lanom a nespolieha len na slova "ale bud velmi opatrny", nie vzdy totiz lezie v idealnych podmienkach.

    Vec povazujem za vyriesenu. Polozil som konkretny dotaz a niekto odpovedal presne ako som potreboval (im velmi pekne dakujem), niekto odpovedal zcestne a bez pridanej hodnoty, ti nech su v mieri :-)
    21.11.2010 20:28 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    Prepac, ale ja som ten, kto ten problem ma, takze viem najlepsie, kto podstatu mojho problemu pochopil a spravne to zodpovedal.

    V tom případě máte dotaz formulovat tak, aby se to z něj dalo pochopit. V dotazu jednoznačně píšete, že vám nejde o příkaz (např.) chmod jako takový, ale jen o případy, kdy je tento příkaz spuštěn s "nebezpečnými" parametry. Navíc jako konkrétní příklad takových parametrů uvedete wildcards, které ve skutečnosti expanduje shell a k příkazu se vůbec nedostanou. Z toho jednoznačně vyplývá, že problém, jak jste ho popsal, nemůže řešit nejen žádný systém typu SELinux/AppArmor, ale ani žádný wrapper místo příkazu, protože ten wrapper se nemůže rozhodovat na základě informace, která se k němu vůbec nedostane. Takže pokud teď skáčete radostí nad "řešením" založeným na wrapperu, znamená to, že buď jste do dotazu popsal úplně jiný problém, než který jste chtěl řešit, nebo jste si dodatečně zadání změnil na základě odpovědí, které se vám líbily svou jednoduchostí.

    Navíc vůbec není pravda, že tazatel automaticky chápe podstatu problému nejlépe. Naopak, velmi často by se, pokud by tomu tak bylo, vůbec nepotřeboval ptát. Tato diskuze je toho názorným příkladem.

    22.11.2010 00:30 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    Rada ako od 'Smith & Wesson' :-)
    If you hold a Unix shell up to your ear, you can you hear the C.
    pepe_ avatar 21.11.2010 18:41 pepe_ | skóre: 48
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    Podle mně (čistě teoreticky) bych vytvořil script pro každý nebezpečný příkaz a ten originální příkaz přejmenoval například chmod chmod.orig a do toho chmodu bych dal zjištění (pokud neni puštěn pod rootem , spustí chmod.orig s parametrama se kterýma byl spuštěnej chmod) Pokud ale byl spuštěnej pod rootem tak detekce souboru a složky , a pokud soubor nebo složka neni nebezpečná , chovat se stejně jako když neni puštěnej pod rootem. Pokud se ale jedná o nebezpečnou operaci nebo složku , nejdříve vyhodit hlášení s varováním že se jedná o nebezpečnou akci a požadavkem na potvrzení akce.

    PS: nečetl sem celou diskuzi ale doufam že nenavrhuju již navržený ochranný faktor.

    Max avatar 22.11.2010 11:39 Max | skóre: 72 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: Ako zakazat spustenie specifickych prikazov (aj pod rootom)
    Hloupost. Takové nesystémové bastlení vede jen k problémům. Jak by jsi řešil např. aktualizace (nové verze chmod apod.)? Hlídal si je a pokaždé přepisoval? Neaktualizoval?
    Zdar Max
    Měl jsem sen ... :(

    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.