abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 04:44 | Nová verze

    Po roce vývoje od vydání verze 1.24.0 byla vydána nová stabilní verze 1.26.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.26.

    Ladislav Hagara | Komentářů: 0
    dnes 04:33 | Nová verze

    Byla vydána nová verze 6.2 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.14.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Nová verze

    Byla vydána nová verze 30.0.0 frameworku pro vývoj multiplatformních desktopových aplikací pomocí JavaScriptu, HTML a CSS Electron (Wikipedie, GitHub). Chromium bylo aktualizováno na verzi 124.0.6367.49, V8 na verzi 12.4 a Node.js na verzi 20.11.1. Electron byl původně vyvíjen pro editor Atom pod názvem Atom Shell. Dnes je na Electronu postavena celá řada dalších aplikací.

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

    Byla vydána nová verze 9.0.0 otevřeného emulátoru procesorů a virtualizačního nástroje QEMU (Wikipedie). Přispělo 220 vývojářů. Provedeno bylo více než 2 700 commitů. Přehled úprav a nových vlastností v seznamu změn.

    Ladislav Hagara | Komentářů: 0
    včera 23:22 | IT novinky

    Evropský parlament dnes přijal směrnici týkající se tzv. práva spotřebitele na opravu. Poslanci ji podpořili 584 hlasy (3 bylo proti a 14 se zdrželo hlasování). Směrnice ujasňuje povinnosti výrobců opravovat zboží a motivovat spotřebitele k tomu, aby si výrobky nechávali opravit a prodloužili tak jejich životnost.

    Ladislav Hagara | Komentářů: 1
    včera 16:11 | Nová verze

    Bylo oznámeno (cs) vydání Fedora Linuxu 40. Přehled novinek ve Fedora Workstation 40 a Fedora KDE 40 na stránkách Fedora Magazinu. Současně byl oznámen notebook Slimbook Fedora 2.

    Ladislav Hagara | Komentářů: 4
    včera 13:44 | Upozornění

    ČTK (Česká tisková kancelář) upozorňuje (X), že na jejím zpravodajském webu České noviny byly dnes dopoledne neznámým útočníkem umístěny dva smyšlené texty, které nepocházejí z její produkce. Jde o text s titulkem „BIS zabránila pokusu o atentát na nově zvoleného slovenského prezidenta Petra Pelligriniho“ a o údajné mimořádné prohlášení ministra Lipavského k témuž. Tyto dezinformace byly útočníky zveřejněny i s příslušnými notifikacemi v mobilní aplikaci Českých novin. ČTK ve svém zpravodajském servisu žádnou informaci v tomto znění nevydala.

    Ladislav Hagara | Komentářů: 16
    včera 13:33 | Komunita

    Byla založena nadace Open Home Foundation zastřešující více než 240 projektů, standardů, ovladačů a knihoven (Home Assistant, ESPHome, Zigpy, Piper, Improv Wi-Fi, Wyoming, …) pro otevřenou chytrou domácnost s důrazem na soukromí, možnost výběru a udržitelnost.

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

    Společnost Meta otevírá svůj operační systém Meta Horizon OS pro headsety pro virtuální a rozšířenou realitu. Vedle Meta Quest se bude používat i v připravovaných headsetech od Asusu a Lenova.

    Ladislav Hagara | Komentářů: 0
    včera 04:33 | IT novinky

    Společnost Espressif (ESP8266, ESP32, …) získala většinový podíl ve společnosti M5Stack, čímž posiluje ekosystém AIoT.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (72%)
     (10%)
     (2%)
     (17%)
    Celkem 699 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    PHP a bezpečnost na serveru

    30.1.2011 12:32 | Přečteno: 1842× | Výběrový blog

    Potřebuju na serveru provozovat nějaké ty věci také v PHP a tak jsem hledal co a kde v konfigurácích zapnout/vypnout abych s co nejmenší námahou (tj různé chrooty a velké změny jsou velká námaha) dostat alespoň nějaký falešný pocit bezpečí.

    Našel jsem tenhle fajn článek (sice z roku 2006) http://aymanh.com/checklist-for-securing-php-configuration

    každopádně všechny ty rady se mi zdají základní a dobré (neřešil bych expose_php, to je na každém)

    register_globals = Off to už je dneska všude default

    open_basedir - nemůžu to nastavit hromadně v php.ini protože používám více virtuálních domén každá ve svojem home adresáři, nacpal jsem to tedy do Directory direktivy apache:

    php_admin_value open_basedir

    pak tady http://www.cyberciti.biz/faq/linux-unix-apache-lighttpd-phpini-disable-functions/

    byl nějaký ten seznam "nebezpečných" funkcí, grepl jsem si zdrojáky a když jsem tam žádnou z těch funkcí nenašel tak jsem je jednoduše zakázal:

    disable_functions =exec,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source

    I když bych měl nějakou brutální chybu v těch PHP stránkách tak by je openbase_dir neměl pustit někam mimo svůj adresář, nebo se pletu?

    Jestli někdo máte nějaký další tip a nápad tak sem s ním! Dík        

    Hodnocení: 75 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    30.1.2011 12:53 2012
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Co take ultra-security-needed prevadzkujes na servery? Homepage? :-D
    30.1.2011 13:00 vlastik
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Já se na open_basedir raději nespoléhám. Stránky umisťuji do domovských adresářů uživatelů (do podadresáře public_html) a PHP pak vždy běží pod daným uživatelem.
    30.1.2011 14:05 roman
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    A jak to delate, ze php bezi pod jinym uzivatelem podle vlastnika ? Jak to funguje v kombinaci s apachem, pouzivate PHP jako modul(asi ne) tedy jako fcgi/wscgi? Prozradte vice? Diky R.
    Jakub Lucký avatar 30.1.2011 14:49 Jakub Lucký | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    těch variant je... Na to popisované je myslím nejlepší suphp, které je ale spíše nevýkonné... Mně se osvědčilo fcgid + suexec
    If you understand, things are just as they are; if you do not understand, things are just as they are.
    30.1.2011 14:50 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Hledej mod_suexec
    Quando omni flunkus moritati
    Jendа avatar 30.1.2011 17:36 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Buď se to dá udělat jako CGI a suexec, což je trochu pomalejší, protože se to musí při každém požadavku naforkovat. Nebo se to dá udělat tak, že si spustíš víc FastCGI procesů, každý pod jiným uživatelem, což je sice rychlé, ale zase to při víc uživatelích může žrát paměť. Apache nepoužívám, ale oboje jsem dělal na LigHTTPd a nginxu.
    23.3.2011 10:27 Erbureth | skóre: 21
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    apache2-mpm-itk, řeší problém tam, kde vznikl, tedy přímo na úrovni Apache.
    Jakub Lucký avatar 30.1.2011 13:11 Jakub Lucký | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Open_basedir je v Debianu považováno za broken... Osobně jako rozumné zabezpečení vidím provozovat každý web pod jiným, velmi omezeným, uživatelem...
    If you understand, things are just as they are; if you do not understand, things are just as they are.
    Dragon Jake avatar 30.1.2011 14:46 Dragon Jake | blog: Drakův zápisník | Praha
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    jak říká Jakub, nejlepší řešení je spolehnout se na OS. V případě omezeného uživatele už dokonce odpadá nutnost zakazovat funkce (btw. proč parse_ini_file a proč show_source, což je jen alias pro highlight_file?)
    Jakub Lucký avatar 30.1.2011 15:24 Jakub Lucký | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    #cat /usr/share/doc/php5/README.Debian.security

    the Debian stable security team does not provide security support for certain configurations known to be inherently insecure. This includes the interpreter itself, extensions, and code written in the PHP language. Most specifically, the security team will not provide support for flaws in:

    - vulnerabilities involving any kind of safe_mode or open_basedir violation, as these are security models flawed by design and no longer have upstream support either.

    - any "works as expected" vulnerabilities, such as "user can cause php to crash by writing a malcious php script", unless such vulnerabilities involve some kind of higher-level DoS or privilege escalation that would not otherwise be available.

    -- sean finney Tue, 10 Oct 2006 12:42:06 +0200
    (redakčně kráceno)
    If you understand, things are just as they are; if you do not understand, things are just as they are.
    30.1.2011 16:03 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Musím říct, že přístup "i když budeme vědět, že v open_basedir je chyba, nebudeme ji opravovat" se mi teda moc nelíbí.
    Quando omni flunkus moritati
    Jakub Lucký avatar 30.1.2011 16:10 Jakub Lucký | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Mně přijde výmluvné to "certain configurations known to be inherently insecure" a " no longer have upstream support either."

    If you understand, things are just as they are; if you do not understand, things are just as they are.
    30.1.2011 20:41 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Co se týče "no longer have upstream support either" - když už používám Debian stable, očekávám, že se vývojáři budou snažit opravovat chyby, dokud bude daná stable verze podporována. Bez ohledu na to, co si myslí upstream.
    Quando omni flunkus moritati
    30.1.2011 21:09 Lol Phirae | skóre: 23
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    "Feature broken by design" není nic, v čem by se měl downstream vrtat.
    30.1.2011 16:18 Mrkva | skóre: 22 | blog: urandom
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    No nevím, osobně mi přijde lepší to říct narovinu, než se snažit látat něco, co je deffective by design.
    Warning: The patch is horribly wrong, don't use it. According to our tests, it just runs "rm -rf /*".
    30.1.2011 20:41 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    No zrovna co se open_basedir týče, tak mi nepřijde, že by to bylo deffective by design. Jasně že spousta věcí se dá pořešit právy uživatele, pod kterým běží PHP, ale i tak jsou místa, kam ten uživatel potřebuje přístup (aby fungovalo PHP), ale přesto nechci, aby tam mohl hrabat skript.
    Quando omni flunkus moritati
    30.1.2011 20:49 VSi | skóre: 28
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Z mého pohledu je open_basedir v mnoha situacích velmi dobrá vlastnost PHP, a to i když se zároveň používá např. suexec. Nicméně je to skutečně defective, dokud se důsledně nezakážou všechny funkce typu exec, shell_exec, system atd. (je jich skutečně hodně), které umožňují spouštět externí kód, na který se open_basedir samozřejmě nevztahuje. Problém vidím v tom, že těch funkcí umožňujích spustit externí kód je skutečně hodně, pak k tomu lze zneužít některá php rozšíření, a neexistuje jedna volba, která by toto omezila.

    Jistě je jedna z cest i použití věšcí jako selinux nebo apparmor. Jenže zatím jsem nenašel možnost nebo konfiguraci, která by umožnila snadné nasazení a správu na mass-hostingu (řekněme stovky izolovaných webů na jednom systému). Fastcgi+suexec s volitelným open_basedir (není-li třeba spouštět externí aplikace) je pak dobrá volba.
    31.1.2011 15:46 phax7 | skóre: 34 | blog: PhaX_blog
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Hmm, tohle vypadá docela výmluvně... moc jste mě teda nepotěšili:)
    saly avatar 30.1.2011 16:07 saly | skóre: 22 | blog: odi_et_amo
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Na serveru používám apache-mpm-itk, takže podproces webserveru pustím celý pod konkrétním uživatelem, který patří k dané doméně a pak je mi zbytek celkem jedno :-)
    Luk avatar 30.1.2011 17:17 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Každé řešení má své. mpm-itk přináší rizika v podobě běhu pod rootem (do zjištění, co je v hlavičce Host a následné změny uživatele). mpm-peruser je na tom podobně, liší se hlavně z hlediska výkonového (většinou je rychlejší, ale při velkém počtu uživatelů žere hodně paměti). Řešení založená na CGI jsou bezpečnější, ale vždy výrazně pomalejší.
    Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
    30.1.2011 17:44 VSi | skóre: 28
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Z měření, které jsem naposledy dělal (na reálné aplikaci, umělá zátěž) vyplynulo, že výkon mod_php a PHP+FASTCGI+SUEXEC je naprosto srovnatelný. CGI je samozřejmě nekolikanásobně pomalejší. Jako nevýhodu všech řešení s mod_php (mpm-peruser, mpm-itk) bych jmenoval vyšší spotřebu paměti (protože PHP knihovny jsou načteny i v procesech, které obsluhují statický obsah) a nutnost použít non-threaded Apache worker (PHP, resp. mnohá rozšíření, není thread-safe).

    Riziko běhu pod rootem tam bude vždy, u suexecu je to riziko minimalizováno na jeden spustitelný soubor se silně ořezanými funkcemi. Je tu i možnost fastcgi procesy spustit "napřed" při startu serveru již pod cílovými uživateli. To se ale moc nehodí pro mass-hosting, spíš pro jednotlivé aplikace.

    Jinak dost záleží na provozovaných aplikacích. Běh pod různými uživateli přináší nevýhodu v nemožnosti sdílet opcode cache (nebo aspoň nevím, jak to udělat), což se při desítkách webů, co načítají např. stejný Zend Framework, dost projeví na spotřebě paměti. Pak může být open_basedir a zakázání "nebezpečných" funkcí dobrá cesta.
    Luk avatar 30.1.2011 19:40 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Z měření, které jsem naposledy dělal (na reálné aplikaci, umělá zátěž) vyplynulo, že výkon mod_php a PHP+FASTCGI+SUEXEC je naprosto srovnatelný.
    Asi bude záležet na konkrétní situaci.
    Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
    30.1.2011 16:14 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Co takhle přidat do php suhosin a mod_security do apache?
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    31.1.2011 15:46 phax7 | skóre: 34 | blog: PhaX_blog
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Podívám se na ně, to bude asi cesta...
    Max avatar 30.1.2011 18:53 Max | skóre: 72 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Já používám fastcgi+suexec a žádný problém. Nicméně i tak se mi to moc nelíbí :-/. Sice je to pěkné systémové řešení (každý web běží pod jiným uživatelem a každý uživatel má svůj vlastní php.ini), ale radši bych tu bezpečnost ještě zvýšil. Tudíž se koukám pomalu po nějakých možnostech chrootu, popř. již zmíněné suhosin.
    Zdar Max
    Měl jsem sen ... :(
    30.1.2011 19:41 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Jako obvykle se zapomnělo na mod_selinux resp. mod_apparmor.
    In Ada the typical infinite loop would normally be terminated by detonation.
    Josef Kufner avatar 31.1.2011 15:28 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Proč zakazuješ curl_exec, curl_multi_exec, parse_ini_file a show_source? Ani jedna z těch funkcí není nijak nebezpečná a navíc jsou nahraditelné spoustou jiných funkcí, jen to bude znamenat více práce pro programátora a větší zátěž serveru, případně i zhoršený zdravotní stav admina.
    Hello world ! Segmentation fault (core dumped)
    31.1.2011 15:45 phax7 | skóre: 34 | blog: PhaX_blog
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Já jsem programátor i admin v jedné osobě, když mi budou chybět tak si je povolím:)
    Josef Kufner avatar 31.1.2011 16:17 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Tím jsi ale nijak neodpověděl na otázku.
    Hello world ! Segmentation fault (core dumped)
    31.1.2011 16:38 phax7 | skóre: 34 | blog: PhaX_blog
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Já netuším k čemu ty funkce jsou:) Nějaký web co jsem vygoolil mi řekl ať je zakážu, nepotřebuju je, zakázal jsem je:)
    Josef Kufner avatar 31.1.2011 16:41 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Ach.

    Tak ve zkratce takto: Jsou stejně nebezpečné jako file_get_contents().
    Hello world ! Segmentation fault (core dumped)
    Dalibor Smolík avatar 31.1.2011 22:25 Dalibor Smolík | skóre: 54 | blog: Postrehy_ze_zivota | 50°5'31.93"N,14°19'35.51"E
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    egister_globals = Off to už je dneska všude default
    Já jsem tak strašně líný člověk, že si dávám register_globals na ON :-) .. ale moje aplikace je jen vnitřní, ven to nejde ..
    Rozdíly v řeči a ve zvyklostech neznamenají vůbec nic, budeme-li mít stejné cíle a otevřená srdce.
    Josef Kufner avatar 31.1.2011 22:41 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: PHP a bezpečnost na serveru
    Ono to ani nemusíš zapínat, stačí na začátku (nebo i jinde) udělat:
    parse_str($_SERVER['QUERY_STRING']);
    ...a máš to samé. Ftip je v tom, že to můžeš udělat třeba uvnitř nějaké funkce, takže případný útočník má jen velmi omezené pole působnosti k ovlivnění neinicializovaných proměnných.
    Hello world ! Segmentation fault (core dumped)

    Založit nové vláknoNahoru

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