WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   PHP på Windows (https://www.wn.se/forum/showthread.php?t=13544)

fakkjoo 2006-04-13 18:22

Hejsan.
Jag kör sedan en tid tillbaka Windows på min webbserver (Apache + PHP) och har nu börjat ta in folk utifrån. Jag upptäckte att jag troligen har massa hål och behöver nu "låsa ut" PHP från att komma åt C: D: och W:, inte så skoj om någon drar en fopen på någon viktig fil.

Finns det något sett att lösa detta på?

-Max Malm

elofsson 2006-04-13 20:06

Spana in detta:
http://se.php.net/manual/sv/features.safe-mode.php

Westman 2006-04-13 23:46

Ja det eller att använda NTFS-rättigheter vilket man nu tycker är enklast.

fakkjoo 2006-04-14 00:49

Citat:

Originally posted by Westman@Apr 13 2006, 23:46
Ja det eller att använda NTFS-rättigheter vilket man nu tycker är enklast.

Hur fungerar det? Måste in PHP vara en user då?

Westman 2006-04-14 08:46

Citat:

Ursprungligen postat av fakkjoo
Citat:

Ursprungligen postat av Westman
Ja det eller att använda NTFS-rättigheter vilket man nu tycker är enklast.

Hur fungerar det? Måste in PHP vara en user då?

Nej PHP exekveras med I_USR-kontots rättigheter. Det finns en hel del att läsa om NTFS-rättigheter på MS support men jag vill påpeka att man inte kan låsa ute I_USR från %windir% på ett enkelt sätt. Däremot är det väldigt enkelt att stänga ute I_USR från andra kataloger och diskar.

Om du inte känner dig hemma med NTFS-rättigheter så kanske safe_mode ändå är det enklaste. Gör man fel med NTFS-rättigheterna så kan man få ganska ordentliga problem. ;)

EDIT: Med "låsa ute I_USR från %windir%" avses läsrättigheter

fakkjoo 2006-04-14 11:55

Citat:

Ursprungligen postat av Westman
Citat:

Originally posted by -fakkjoo@Apr 14 2006, 00:49
Citat:

Ursprungligen postat av Westman
Ja det eller att använda NTFS-rättigheter vilket man nu tycker är enklast.

Hur fungerar det? Måste in PHP vara en user då?


Nej PHP exekveras med I_USR-kontots rättigheter. Det finns en hel del att läsa om NTFS-rättigheter på MS support men jag vill påpeka att man inte kan låsa ute I_USR från %windir% på ett enkelt sätt. Däremot är det väldigt enkelt att stänga ute I_USR från andra kataloger och diskar.
Om du inte känner dig hemma med NTFS-rättigheter så kanske safe_mode ändå är det enklaste. Gör man fel med NTFS-rättigheterna så kan man få ganska ordentliga problem.
EDIT: Med låsa ute I_USR från %windir% avses läsrättigheter


Okej, du skulle inte vilja förklara lite mer? :) Jag vill ogärna använda safe_mode på min server.

-Max

Westman 2006-04-14 14:59

Visst men det beror ju på från vilken nivå. Har du inte arbetat med NTFS-rättigheter så är risken för att elaka fel ska uppstå ganska stor och något sådant vill jag inte ta ansvar för.

Hur som helst, för att slippa skriva en hel avhandling så behöver jag veta vilket operativ det gäller och vilken behörighet det är på C: som standard. Att NTFS är aktiverat förutsätter jag.

fakkjoo 2006-04-14 18:20

Citat:

Originally posted by Westman@Apr 14 2006, 14:59
Visst men det beror ju på från vilken nivå. Har du inte arbetat med NTFS-rättigheter så är risken för att elaka fel ska uppstå ganska stor och något sådant vill jag inte ta ansvar för.
Hur som helst, för att slippa skriva en hel avhandling så behöver jag veta vilket operativ det gäller och vilken behörighet det är på C: som standard. Att NTFS är aktiverat förutsätter jag.

Operativsystemet är 2k3 och jag är medveten om hur man sätter behörigheter.
NTFS är aktivt och jag har inte ändrat något på C: så den är standard.

Självklart ska du inte ta ansvar.

-Max

nomicon 2006-04-15 00:36

*host*Linux*Host*

fakkjoo 2006-04-15 01:09

Citat:

Originally posted by nomicon@Apr 15 2006, 00:36
*host*Linux*Host*

*host* nej inte på denna servern *host*

Westman 2006-04-15 20:24

Så, nu ska vi se. Standardrättigheterna på en disk är som följer:
BUILTIN\Administrators:(OI)(CI)F
NT AUTHORITY\SYSTEM:(OI)(CI)F
BUILTIN\Administrators:F
CREATOR OWNER:(OI)(CI)(IO)F
BUILTIN\Users:(OI)(CI)R
BUILTIN\Users:(CI)(special access:)
FILE_APPEND_DATA
BUILTIN\Users:(CI)(special access:)
FILE_WRITE_DATA

Därför ska inte I_USR-kontot, som endast tillhör gruppen Guests, kunna komma åt något på denna disk redan från start.

%systemroot% är också spärrad enligt följande:
BUILTIN\Users:R
BUILTIN\Users:(OI)(CI)(IO)(special access:)
GENERIC_READ
GENERIC_EXECUTE

BUILTIN\Power Users:C
BUILTIN\Power Users:(OI)(CI)(IO)C
BUILTIN\Administrators:F
BUILTIN\Administrators:(OI)(CI)(IO)F
NT AUTHORITY\SYSTEM:F
NT AUTHORITY\SYSTEM:(OI)(CI)(IO)F
BUILTIN\Administrators:F
CREATOR OWNER:(OI)(CI)(IO)F

som standard men i understrukturerna så finns det vissa undantag. Jag kan dock inte se att det ska gå att använda fopen på någon vital fil.

Jag blev lite nyfiken så jag ska ta och testa för säkerhets skull på tisdag när jag är tillbaka på kontoret. :D

fakkjoo 2006-04-16 11:57

tack så mycket :)

Danielos 2006-04-16 13:04

Citat:

Ursprungligen postat av fakkjoo
Citat:

Ursprungligen postat av nomicon
*host*Linux*Host*

*host* nej inte på denna servern *host*

Men Bills Windows kan ju få vilken maskin som helst att bli långsam :)
Om du såg all skräp kod ovanpå annan skräpkod så skulle du blir mörkrädd....


Alla tider är GMT +2. Klockan är nu 17:27.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson