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 05:00 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za duben (YouTube). Na Linuxu je vedle Qt frontendu nově k dispozici také GTK4 / libadwaita frontend.

    Ladislav Hagara | Komentářů: 2
    včera 20:22 | IT novinky

    Neziskové průmyslové konsorcium Khronos Group vydalo verzi 3.1 specifikace OpenCL (Open Computing Language). OpenCL je průmyslový standard pro paralelní programování heterogenních počítačových systémů.

    Ladislav Hagara | Komentářů: 0
    včera 13:11 | Nová verze

    Homebridge pro integraci chytrých domácích zařízení byl vydán ve verzi 2.0.0. Nově vedle protokolu HomeKit Accessory Protocol (HAP) podporuje standard chytré domácnosti Matter.

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

    Omarchy je linuxová distribuce s dlaždicovým správcem oken Hyprland. Založena je na Arch Linuxu. Vydána byla v nové verzi 3.7.0 - The Gaming Edition. Z novinek lze vypíchnout příkaz omarchy a celou řadu herních možností.

    Ladislav Hagara | Komentářů: 2
    včera 03:11 | Nová verze

    CyberChef byl vydán v nové major verzi 11. Přehled novinek v Changelogu. CyberChef je webová aplikace pro analýzu dat a jejich kódování a dekódování, šifrování a dešifrování, kompresi a dekompresi, atd. Často je využívaná při kybernetických cvičeních a CTF (Capture the Flag).

    Ladislav Hagara | Komentářů: 0
    4.5. 20:11 | Nová verze

    Byla vydána nová verze 2.4.67 svobodného multiplatformního webového serveru Apache (httpd). Řešeno je mimo jiné 11 zranitelností.

    Ladislav Hagara | Komentářů: 0
    4.5. 14:44 | Zajímavý software

    Brush (Bo(u)rn(e) RUsty SHell) je v Rustu napsaný shell kompatibilní s Bash (Bourne Again SHell). Vydána byla verze 0.4.0.

    Ladislav Hagara | Komentářů: 3
    4.5. 04:44 | Komunita

    Google zveřejnil seznam 1 141 projektů (vývojářů) od 184 organizací přijatých do letošního, již dvaadvacátého, Google Summer of Code. Přihlášeno bylo celkově 23 371 projektů od 15 245 vývojářů ze 131 zemí.

    Ladislav Hagara | Komentářů: 4
    4.5. 03:00 | Komunita

    Na čem pracovali vývojáři GNOME a KDE Plasma minulý týden? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.

    Ladislav Hagara | Komentářů: 0
    3.5. 03:44 | Nová verze

    Open source počítačová hra na hrdiny NetHack (Wikipedie, GitHub) byla vydána v nové verzi 5.0.0. První verze této hry byla vydána v roce 1987.

    Ladislav Hagara | Komentářů: 5
    Které desktopové prostředí na Linuxu používáte?
     (14%)
     (9%)
     (2%)
     (14%)
     (31%)
     (4%)
     (7%)
     (3%)
     (16%)
     (24%)
    Celkem 1505 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: Nefunguje mi spuštění souboru "pod" vlastníkem-SUID

    17.11.2011 15:14 krakonos
    Nefunguje mi spuštění souboru "pod" vlastníkem-SUID
    Přečteno: 216×
    Ahoj, nevěděl by někdo, kde může být problém? Vytvořil jsem soubor v /usr/bin/root.test s chmod 4755
    Obsah souboru /usr/bin/root.test:
    #!/bin/sh echo $USER echo "test zapisu" >> /etc/test.data
    Dále jsem vytvořil zmíněný soubor /etc/test.data s chmod 0644
    Samozřejmě jako root
    Problém je ve spuštění souboru /usr/bin/root.test, protože se program vykonává "pod" aktuálním uživatelem, nemělo by být 100% docíleno efektivního uživatele jako vlastníka souboru? Na místo toho je aktuální a to je přesně to, co nechci. Jiné soubory, npř. /usr/bin/passwd "vs" /etc/shadow používají identický princip, jen až na to, že jsou binární a tohle jsou skripty.

    Ještě dodávám staty obou souborů:
    stat /usr/bin/root.test 
      File: „/usr/bin/root.test“
      Size: 58        	Blocks: 8          IO Block: 4096   běžný soubor
    Device: 301h/769d	Inode: 1072444     Links: 1
    Access: (4755/-rwsr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
    Access: 2011-05-02 16:56:56.000000000 +0200
    Modify: 2011-11-17 14:26:30.000000000 +0100
    Change: 2011-11-17 14:28:02.000000000 +0100
    
    stat /etc/test.data 
      File: „/etc/test.data“
      Size: 0         	Blocks: 0          IO Block: 4096   běžný prázdný soubor
    Device: 301h/769d	Inode: 130955      Links: 1
    Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
    Access: 2011-11-17 14:23:51.000000000 +0100
    Modify: 2011-11-17 14:53:47.000000000 +0100
    Change: 2011-11-17 14:53:47.000000000 +0100

    Řešení dotazu:


    Odpovědi

    17.11.2011 15:17 krakonos
    Rozbalit Rozbalit vše Re: Nefunguje mi spuštění souboru "pod" vlastníkem-SUID
    Pro upřesnění. Obsah souboru /usr/bin/root.test je
    #!/bin/sh
    echo $USER
    echo "test zapisu" >> /etc/test.data
    
    a po spuštění souboru normálním uživatelem se vypíše chybová hláška
    
    /usr/bin/root.test: 3: cannot create /etc/test.data: Permission denied
    
    17.11.2011 15:29 Kit
    Rozbalit Rozbalit vše Re: Nefunguje mi spuštění souboru "pod" vlastníkem-SUID
    Vlastně sis odpověděl sám. Funguje to u binárek, ale u skriptů ne. To by musel mít SUID bit /bin/sh. To však rozhodně nedoporučuji.

    Řešení problému je několik, záleží na konkrétní situaci. Někdy se hodí sudo, jindy ssh. A občas se hodí si kousek toho programu zkompilovat.
    17.11.2011 15:40 krakonos
    Rozbalit Rozbalit vše Re: Nefunguje mi spuštění souboru "pod" vlastníkem-SUID
    Děkuji, sakra to mohl v té knížce taky napsat :-)
    Nu, je možné něco jako: binární soubor s minimálním kódem pro spuštění skriptu s právy? Je na to vhodné Cčko? To už je skoro na nový příspěvek ale myslím že provedení vygooglim, jestliže to bude možné :-)
    17.11.2011 15:59 Kit
    Rozbalit Rozbalit vše Re: Nefunguje mi spuštění souboru "pod" vlastníkem-SUID
    Nebude to jednodušší přes sudo?

    C se na to hodit bude. Otázkou však je, jak si poradíš s bezpečností, když ho bude moci spustit kdokoli.
    17.11.2011 16:33 krakonos
    Rozbalit Rozbalit vše Re: Nefunguje mi spuštění souboru "pod" vlastníkem-SUID
    Potřebuji aby ho mohl spustit kdokoli :) Představuji si to asi takto: Binární soubor spustí skript, stane se rodičovským procesem a dále se o nic nebude starat, skript díky nastavenému SUID v binárním souboru bude moci zapisovat do souborů npř. v /etc/* ale nikdo nebude mít právo(krom roota) přepisat, přejmenovat ani smazat skript.
    Asi jsi myslel jak si poradím s právy pro určité uživatele, to si ještě ozkouším, jestliže budu mít práva roota a v proměnné $USER bude přihlášený uživatel a né efektivní, tak se dá řídit program i podle tohoto. Npř.
    #!/bin/sh
    #Absurdní příklad
    if [ $USER != "root" ]; then
            echo "You must be root!"
    fi
    17.11.2011 20:39 pavel
    Rozbalit Rozbalit vše Re: Nefunguje mi spuštění souboru "pod" vlastníkem-SUID
    1. Tebe bych nechtěl mít na svém počítači, taková bezpečnostní díra, to už se rovnou přihlašuj pod uživatelem root....

    2. I skript v bashi se dá zkompilovat do binárky, viz třeba shc compiler.
    17.11.2011 20:43 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Nefunguje mi spuštění souboru "pod" vlastníkem-SUID
    Tu vaši představu už někdo zrealizoval. Výsledný binární soubor se jmenuje sudo, jak už zde bylo napsáno…

    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.