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 13:44 | Zajímavý článek

    Boudhayan "bbhtt" Bhattcharya v článku Uzavření kapitoly o OpenH264 vysvětluje, proč bylo OpenH264 odstraněno z Freedesktop SDK.

    Ladislav Hagara | Komentářů: 2
    dnes 03:44 | IT novinky

    Představeny byly nové verze AI modelů: DeepSeek V3-0324, Google Gemini 2.5 a OpenAI 4o Image Generation.

    Ladislav Hagara | Komentářů: 0
    dnes 03:11 | Nová verze

    XZ Utils (Wikipedie) byly vydány ve verzi 5.8.0. Jedná se o první větší vydání od backdooru v XZ v loňském roce.

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

    Byla vydána nová verze 0.40.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 6.1 nebo novější a také libplacebo 6.338.2 nebo novější.

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

    Byla vydána nová verze 2.20 svobodného video editoru Flowblade (GitHub, Wikipedie). Přehled novinek v poznámkách k vydání. Videoukázky funkcí Flowblade na Vimeu. Instalovat lze také z Flathubu.

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

    LibrePCB, tj. svobodný multiplatformní softwarový nástroj pro návrh desek plošných spojů (PCB), byl vydán ve verzi 1.3.0. Přehled novinek v příspěvku na blogu a v aktualizované dokumentaci. Vypíchnut je interaktivní HTML BOM (Bill of Materials) a počáteční podpora Rustu. Zdrojové kódy LibrePCB jsou k dispozici na GitHubu pod licencí GPLv3.

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

    Minulý měsíc Hector "marcan" Martin skončil jako upstream vývojář linuxového jádra i jako vedoucí projektu Asahi Linux. Vývoj Asahi Linuxu, tj. Linuxu pro Apple Silicon, ale pokračuje dál. Byl publikován březnový přehled dění a novinek z vývoje. Vývojáře lze podpořit na Open Collective.

    Ladislav Hagara | Komentářů: 13
    24.3. 16:16 | Zajímavý článek

    Ruská firma Operation Zero nabízí až $4 miliony za funkčí exploit komunikační platformy Telegram. Nabídku učinila na platformě X. Firma je známá prodejem exploitů ruské vládě a soukromým společnostem. Další informace na securityweek.com.

    Max | Komentářů: 0
    24.3. 16:00 | Nová verze

    Po 9 týdnech vývoje od vydání Linuxu 6.13 oznámil Linus Torvalds vydání Linuxu 6.14. Proč až v pondělí? V neděli prostě zapomněl :-). Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a Linux Kernel Newbies.

    Ladislav Hagara | Komentářů: 0
    24.3. 14:22 | Komunita

    Konference LinuxDays 2025 proběhne o víkendu 4. a 5. října v Praze v areálu ČVUT v Dejvicích na FIT.

    Ladislav Hagara | Komentářů: 0
    Jaké je vaše preferované prostředí?
     (27%)
     (1%)
     (1%)
     (2%)
     (1%)
     (1%)
     (64%)
     (2%)
    Celkem 230 hlasů
     Komentářů: 10, poslední 24.3. 12:37
    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: 519×
    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.