Portál AbcLinuxu, 10. května 2025 09:35

Dotaz: htaccess jen read only?

26.1.2011 21:50 B0biN | skóre: 21 | blog: B0biN bloguje
htaccess jen read only?
Přečteno: 402×
Odpovědět | Admin

Dobrý den,

napadne někoho jak nastavit apache, aby byl soubor htaccess jen read only?

Jde o to, aby ho např. uživatel www-data nemohl přepsat. Nejde mi o nastavení klasických práv na souboru, ale aby se soubor htaccess pres apache (php) tvářil jen jako read only.

Zápis do něj se bude řešit jen přes SFTP.

Děkuji

cd /pub | more beer

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

26.1.2011 21:54 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: htaccess jen read only?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Můžete si udělat hack do PHP a ošetřit všechna místa, kde by bylo možné ten soubor přepsat. Což je ovšem nereálné. A nebo to můžete udělat normálně přes souborová práva – zápis povolit jen uživateli či skupině, která to bude měnit přes SFTP, webovému serveru nebo ostatním povolit jen čtení.
26.1.2011 22:04 B0biN | skóre: 21 | blog: B0biN bloguje
Rozbalit Rozbalit vše Re: htaccess jen read only?
U mashostingu nemožné každému nastavit zvlášť právo na htaccess. Potřebuji nějak apache přinutit, aby ignoroval souborová práva a bral ho jen jako read only.
cd /pub | more beer
Max avatar 26.1.2011 22:09 Max | skóre: 72 | blog: Max_Devaine
Rozbalit Rozbalit vše Re: htaccess jen read only?
Tak toto nějak nechápu. Pokud chceš uživatelům povolit .htaccess, ale chceš ho ovládat jen sám, tak proč nenastavit FS práva? Co je na tom nemožného? Při generování domény a adresářové struktury vytvořit i .htaccess s jinými právy? Nebo pomocí mini skriptu rozkopírovat .htaccess do všech domén?
Zdar Max
Měl jsem sen ... :(
29.1.2011 15:49 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: htaccess jen read only?
Pokud chceš uživatelům povolit .htaccess, ale chceš ho ovládat jen sám, tak proč nenastavit FS práva?

V takovém případě je jednodušší - a výrazně efektivnější - soubory .htaccess vůbec nepoužívat.

26.1.2011 23:10 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: htaccess jen read only?
Můžete přeprogramovat Apache (ve skutečnosti asi spíš PHP), nic vám v tom nebrání. Akorát je to nesmysl, všichni ostatní pro tohle používají souborová práva. Nevím, co je tak složitého nastavit práva pro vlastníka nebo skupinu na zápis a pro ostatní na čtení – find a chmod to určitě zvládnou.
27.1.2011 03:57 zulu
Rozbalit Rozbalit vše Re: htaccess jen read only?
Ne každému. Vlastníkovi, skupině a ostatním. To ti určitě stačí.
Max avatar 26.1.2011 22:06 Max | skóre: 72 | blog: Max_Devaine
Rozbalit Rozbalit vše Re: htaccess jen read only?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pokud to nechceš řešit na bázi klasických práv, tak co ACL? A nebo bych zkusil toto, zda to půjde :
<files .htaccess>
  order deny,allow
  deny from all
</files>
Osobně jsem to nezkoušel, tak nevím, zda ho to před php ochrání.
Zdar Max
Měl jsem sen ... :(
26.1.2011 22:26 B0biN | skóre: 21 | blog: B0biN bloguje
Rozbalit Rozbalit vše Re: htaccess jen read only?
Tohle mi nezaručí read only na htaccess :(
cd /pub | more beer
Max avatar 26.1.2011 22:43 Max | skóre: 72 | blog: Max_Devaine
Rozbalit Rozbalit vše Re: htaccess jen read only?
No jasně, to zakáže přístup k .htaccess. Otázkou je, zda to funguje i pro php. Pak by totiž mohly fungovat directivy jako <limi>, resp. <LimitExcept> a zkusit to ošetřit přes ně.
Zdar Max
Měl jsem sen ... :(
Max avatar 26.1.2011 22:46 Max | skóre: 72 | blog: Max_Devaine
Rozbalit Rozbalit vše Re: htaccess jen read only?
Ale to je blbost :-/.
Zdar Max
Měl jsem sen ... :(
Chytrex avatar 26.1.2011 23:53 Chytrex | skóre: 30 | Bohumín
Rozbalit Rozbalit vše Re: htaccess jen read only?
Mělo by to platit i pro PHP..
Hrdý člen KERNEL ULTRAS .:. define QUESTION ((bb) || !(bb)) .:. Odmítám vaši realitu a nahrazuji ji svou vlastní..
27.1.2011 03:59 zulu
Rozbalit Rozbalit vše Re: htaccess jen read only?
PHP nepřistupuje k souborům přes Apache, takže konfig Apache asi neovlivní PHP..
27.1.2011 09:42 Ivo
Rozbalit Rozbalit vše Re: htaccess jen read only?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Nejde to pomocou linuxovych prav?
sudo chown root:apache .htaccess
sudo chmod 744 .htaccess
Okrem toho vsetko z .htaccess sa da zapisat priamo do konfigu apache tak ze ziaden .htaccess nie je potrebny.
27.1.2011 12:40 B0biN
Rozbalit Rozbalit vše Re: htaccess jen read only?
Jak jsem již psal nejde mi o klasické nastavení souborových práv, musí to být komplexní na celý mashosting prostě nějak říci apache nebo php aby bral htaccess jen jako read only.
Chytrex avatar 27.1.2011 12:45 Chytrex | skóre: 30 | Bohumín
Rozbalit Rozbalit vše Re: htaccess jen read only?
A k čemu tam bude readonly .htaccess?? Dyť to postrádá smysl.. To narvi do confu apache a nemusíš se otravovat s právy .htaccessu
Hrdý člen KERNEL ULTRAS .:. define QUESTION ((bb) || !(bb)) .:. Odmítám vaši realitu a nahrazuji ji svou vlastní..
27.1.2011 12:51 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: htaccess jen read only?
K tomu právě slouží souborová práva. Nastavit to pomocí souborových práv jde, máte tady v komentářích několik příkladů. To, že vy to mermomocí chcete dělat nějakou podivnou nestandardní cestou, je jen váš problém. Až si ho vyřešíte, přečtěte si komentáře ještě jednou a nastavte to pomocí souborových práv.
27.1.2011 13:23 B0biN
Rozbalit Rozbalit vše Re: htaccess jen read only?
Dobře zkusím to tedy popsat co nejpřesněji.

Mám mashosting s několika virtuálními uživateli, kteří mají své home adresáře určené pro hosting.
/usr/virtual/webs/user1
                 /user2
                 /user3
                 /atd. 
V rootu těchto adresářích se vyskytuji soubory .htaccess dejme tomu s právy
-rw-rw-r-- 1 user1 user1 4206 2010-04-23 07:14 .htaccess
Tak a jde mi o to, že pokud mají třeba user1 až user3 vypnutý open_basedir a potencionální útočník využije nějakou bezpečností díru třeba v joomle, wordpresu ..atd. tak muže pomocí php zapsat všem třem něco do .htaccess.

Proto jsem chtěl eliminovat pomocí apache zápisu do souboru htaccess a zápis by se pak prováděl např, jen přes FTP na základě klasických souborových práv. Něco podobného jako má např. ProFTPd "Limit", pomocí kterého řeknu, že určitý soubor po uploadu bude read only.

Snad jsi mě pochopil, čeho chci dosáhnout.

27.1.2011 13:30 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: htaccess jen read only?
Pokud útočník využije bezpečnostní díru ve webové aplikaci, bude mít práva uživatele, pod kterým běží ta webová aplikace. Předpokládám, že to není user1 ani člen skupiny user1. Takže může daný soubor jen číst. (Pokud by web běžel pod uživatelem user1 nebo pod členem skupiny user1, bude přepsaný .htaccess tím nejmenším problémem.)
27.1.2011 14:13 sidik
Rozbalit Rozbalit vše Re: htaccess jen read only?
A co takhle zakázat vypnutí open_basedir? :)

Kromě toho, jestliže user1 je jiný fyzický uživatel než user2 (podle té ukázky práv to tak vypadá) a každý žije ve své vlastní skupině, tak o nic nejde. Dostanou RO přístup a to je tak všechno. Problém to je v momentě, kdy user1 a user2 jsou ve stejné skupině nebo nedejbože jeden uživatel (třeba www-data).

Navíc se dá odepřít i ten RO a nechat přístup jen uživateli a skupině.
27.1.2011 14:19 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: htaccess jen read only?
Navíc se dá odepřít i ten RO a nechat přístup jen uživateli a skupině.
Pak si to ovšem nepřečte ani Apache. Pokud tedy není uživatelem user1 či členem skupiny user1 – ale to bych nepovažoval za dobrý nápad, a jak už jsem psal, nějaký přepis .htaccess by v takovém případě byl prkotina.
28.1.2011 21:42 Erbureth | skóre: 21
Rozbalit Rozbalit vše Re: htaccess jen read only?
Nejsystémovější řešení mi přijde využití mpm-itk, které umožní každé webové prezentaci běžet pod vlastním uživatelem. Pak, když útočník převezme kontrolu nad webovou prezentací jednoho uživatele, nikam dál se z ní nedostane.

Založit nové vláknoNahoru

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

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.