cvs: phpdoc-ru /chapters security.xml
| From: | Kai Liki | Date: | Mon, 03 Mar 2003 12:42:53 +0000 |
| Subject: | cvs: phpdoc-ru /chapters security.xml | ||
| Groups: | php.doc.ru | ||
| Request: | Send a blank email to doc-ru+get-82@lists.php.net to get a copy of this message | ||
kai Mon Mar 3 07:42:53 2003 EDT
Modified files:
/phpdoc-ru/chapters security.xml
Log:
Errata fixed
Index: phpdoc-ru/chapters/security.xml
diff -u phpdoc-ru/chapters/security.xml:1.3 phpdoc-ru/chapters/security.xml:1.4
--- phpdoc-ru/chapters/security.xml:1.3 Tue Jan 21 04:42:58 2003
+++ phpdoc-ru/chapters/security.xml Mon Mar 3 07:42:52 2003
@@ -1,13 +1,13 @@
<?xml version="1.0" encoding="windows-1251"?>
<!-- EN-Revision: 1.50 Maintainer: alexws Status: ready -->
-<!-- $Revision: 1.3 $ -->
+<!-- $Revision: 1.4 $ -->
<chapter id="security">
<title>Áåçîïàñíîñòü</title>
<simpara>
PHP - ýòî ìîùíûé ÿçûê ïðîãðàììèðîâàíèÿ è
èíòåðïðåòàòîð. Áóäó÷è
èíòåãðèðîâàííûì â âèäå ìîäóëÿ â Web-ñåðâåð, èëè
âûïîëíÿÿñü êàê
- îääåëüíîå <acronym>CGI</acronym>-ïðèëîæåíèå, îí ìîæåò
îáðàùàòüñÿ
+ îòäåëüíîå <acronym>CGI</acronym>-ïðèëîæåíèå, îí ìîæåò
îáðàùàòüñÿ
ê ôàéëàì, èñïîëíÿòü êîìàíäû è îòêðûâàòü ñåòåâûå
ñîåäèíåíèÿ íà
ñåðâåðå. Ýòè îñîáåííîñòè äåëàþò âñå, ÷òî âûïîëíÿåòñÿ
íà Web-ñåðâåðå,
íåáåçîïàñíûì. PHP ñïåöèàëüíî ðàçðàáàòûâàëñÿ äëÿ òîãî,
÷òîáû áûòü
@@ -25,9 +25,9 @@
</simpara>
<simpara>
Ãèáêîñòü íàñòðîéêè PHP êîíêóðèðóåò ñ ãèáêîñòüþ
ïðîãðàììèðîâàíèÿ.
- PHP äëÿ ñîçäàíèÿ ñåðâåðíûõ ïðèëîæåíèé ñî âñåìè
âîçìîæíîñòÿìè ðÿäîâîãî
- ïîëüçîâàòåëÿ ñèñòåìû, èëè äëÿ ïðîñòîãî âêëþ÷åíèÿ
ôàéëîâ íà ñòîðîíå
- ñåðâåðà, êîòîðîå íå ïðåäñòàâëÿåò îïàñíîñòè â õîðîøî
êîíòðîëèðóåìîé
+ PHP ìîæåò áûòü èñïîëüçîâàí äëÿ ñîçäàíèÿ ñåðâåðíûõ
ïðèëîæåíèé ñî âñåìè
+ âîçìîæíîñòÿìè ïîëüçîâàòåëÿ shell, èëè äëÿ ïðîñòîãî
âêëþ÷åíèÿ ôàéëîâ íà
+ ñòîðîíå ñåðâåðà, êîòîðîå íå ïðåäñòàâëÿåò îïàñíîñòè
â õîðîøî êîíòðîëèðóåìîé
ñèñòåìå. Òî, êàê ïîñòðîåíà ñèñòåìà, è íàñêîëüêî îíà
áåçîïàñíà, ïðàêòè÷åñêè
ïîëíîñòüþ çàâèñèò îò ðàçðàáîò÷èêà, èñïîëüçóþùåãî PHP.
</simpara>
@@ -69,14 +69,14 @@
<simpara>
Ïðè îòëàäêå ïîìíèòå, ÷òî íåâîçìîæíî ïðåäóãàäàòü âñå
âàðèàíòû ðàçâèòèÿ
ñîáûòèé äàæå äëÿ îäíîé åäèíñòâåííîé ñòðàíè÷êè.
Îæèäàåìûå âõîäíûå äàííûå
- ìîãóò îòëè÷àòü îò ââåäåííûõ íåäîáðîñîâåñòíûì
ðàáîòíèêîì, õàêåðîì ñ
+ ìîãóò îòëè÷àòüñÿ îò ââåäåííûõ íåäîáðîñîâåñòíûì
ðàáîòíèêîì, õàêåðîì ñ
ìíîãîëåòíèì ñòàæåì èëè ïðîñòî êîøêîé, ïðîøåäøåéñÿ
ïî êëàâèàòóðå.
Ïîýòîìó âñåãäà óäîáíåå ïîäõîäèòü ê ïðîãðàììå ñ
òî÷êè çðåíèÿ ëîãèêè,
÷òîáû ïðîñëåäèòü ìåñòà âîçìîæíîãî ïîÿâëåíèÿ
íåîæèäàííûõ äàííûõ, à
òàêæå èõ èñïîëüçîâàíèÿ.
</simpara>
<simpara>
- Internet ïîëîí ëþäåé, êîòîðûå õîòÿò ñäåëàòü ñåáå èìÿ
ïóòåì âçëîìà
+ Èíòåðíåò ïîëîí ëþäåé, êîòîðûå õîòÿò ñäåëàòü ñåáå
èìÿ ïóòåì âçëîìà
âàøåãî êîäà, îñòàíîâà âàøåãî ñàéòà, ðàçìåùåíèÿ
íåïîäõîäÿùèõ äàííûõ,
â îáùåì, âñåãî, ÷òî íå äàåò âàì æèòü ñïîêîéíî.
Íåâàæíî, êàêîãî ìàñøòàáà
âàø ñàéò, âû íàõîäèòåñü ïîä ïðèöåëîì ïðîñòî ïîòîìó,
÷òî âû â ñåòè,
@@ -131,7 +131,7 @@
Èíôîðìàöèîííàñÿ ÷àñòü URL ïîñëå íàçâàíèÿ
ïðèëîæåíèÿ PHP
<filename role="uri">/secret/doc.html</filename> îáû÷íî
èñïîëüçóåòñÿ äëÿ çàäàíèÿ ôàéëà, êîòîðûé áóäåò
îòêðûò è
- èíòåðïðåòèðîâàí ïðèëîæåíèå <acronym>CGI</acronym>.
+ èíòåðïðåòèðîâàí ïðèëîæåíèåì <acronym>CGI</acronym>.
 îáùåì ñëó÷àå äëÿ ïåðåíàïðàâëåíèÿ çàïðîñîâ âèäà
<filename role="url">http://my.host/secret/script.php</filename>
èíòåðïðåòàòîðó PHP èñïîëüçóþòñÿ äèðåêòèâû
êîíôèãóðàöèè Web-ñåðâåðà
@@ -247,7 +247,7 @@
Åùå îäíîé ïîëåçíîé îïöèåé ÿâëÿåòñÿ <link
linkend="ini.user-dir">user_dir</link>.
Åñëè user_dir íå çàäàíà, òî åäèíñòâåííûì ôàêòîðîì,
âëèÿþùèì íà èìÿ
îòêðûâàåìîãî ôàéëà ÿâëÿåòñÿ
<parameter>doc_root</parameter>. Îòêðûòèå
- ULR âðîäå <filename role="url">http://my.host/~user/doc.php</filename>
+ URL âðîäå <filename role="url">http://my.host/~user/doc.php</filename>
íå ïðèâåäåò â ýòîì ñëó÷àå ê îòêðûòèþ ôàéëà âíóòðè
äîìàøíåãî êàòàëîãà
ïîëüçîâàòåëÿ.  ýòîì ñëó÷àå áóäåò îòêðûò ôàéë
<filename role="uri">~user/doc.php</filename> â êàòàëîãå,
çàäàííîì â
@@ -272,7 +272,7 @@
</sect2>
<sect2 id="security.cgi-bin.shell">
- <title>Âàðèàíò 4: òðàíñëÿòîð PHP âíå äåðåâà
äîêóìåíòîâ Web</title>
+ <title>Âàðèàíò 4: èíòåðïðåòàòîð PHP âíå äåðåâà
äîêóìåíòîâ Web</title>
<para>
Âåñüìà áåçîïàñíûì ÿâëÿåòñÿ ïîìåùåíèå
ïðîãðàììû-òðàíñëÿòîðà PHP
çà ïðåäåëàìè äåðåâà äîêóìåíòîâ Web-ñåðâåðà. Ê
ïðèìåðó, â <filename
@@ -304,7 +304,7 @@
<sect1 id="security.apache">
<title>Ïðè èíñòàëëÿöèè â âèäå ìîäóëÿ Apache</title>
<simpara>
- Ïðè èñïîëüçîâàíèè PHP, êàê Apache-ìîäóëü, äàííûé ìîäóëü
ïîëó÷àåò
+ Ïðè èñïîëüçîâàíèè PHP, êàê ìîäóëÿ Apache, äàííûé ìîäóëü
ïîëó÷àåò
âñå ïðàâà è ðàçðåøåíèÿ Apache (îáû÷íî, ïðàâà
ïîëüçîâàòåëÿ "nobody",
ò.å. "îòñóòñòâóþùåãî" ïîëüçîâàòåëÿ). Ýòî âíîñèò
íåêîòîðûå ñëîæíîñòè
â ñèñòåìó áåçîïàñíîñòè è àâòîðèçàöèè. Ê ïðèìåðó,
åñëè PHP èñïîëüçóåòñÿ
@@ -324,7 +324,7 @@
ïðîáëåìû áåçîïàñíîñòè, îêàçûâàåòñÿ, ÷òî PHP íå ìîæåò
çàïèñàòü íè
îäíîãî ôàéëà â ïîëüçîâàòåëüñêèå êàòàëîãè. Èëè,
äîïóñòèì, íå èìååò
äîñòóïà ê áàçàì äàííûõ. PHP îêàçûâàåòñÿ îäèíàêîãî
çàùèùåííûì îò
- çàïèñè äîçâîëåííûõ è íåäîçâîëåííûõ ôàëîâ, èëè îò
ïðîèçâåäåíèÿ
+ çàïèñè äîçâîëåííûõ è íåäîçâîëåííûõ ôàéëîâ, èëè îò
ïðîèçâåäåíèÿ
äîçâîëåííûõ èëè íåäîçâîëåííûõ îïåðàöèé ñ áàçàìè
äàííûõ.
</simpara>
<simpara>
@@ -391,7 +391,7 @@
ââîäà, ìîæíî ïîäñòàâèòü ëþáûå èìåíà ïîëüçîâàòåëÿ è
ôàéëà, äàæå åñëè
ýòîò ôàéë ïðèíàäëåæèò êîìó-òî äðóãîìó.  ýòîì ñëó÷àå
íåîáõîäèìî
èñïîëüçîâàòü ñõåìó àóòåíòèôèêàöèè ïîëüçîâàòåëåé.
Êðîìå òîãî,
- ïðåäñòàâüòå, ÷òî ñëó÷èòüñÿ, åñëè ïåðåäàííûå
ïåðåìåííûå áóäóò
+ ïðåäñòàâüòå, ÷òî ñëó÷èòñÿ, åñëè ïåðåäàííûå
ïåðåìåííûå áóäóò
ñîîòâåòñòâåííî "../etc/" è "passwd". Òîãäà
ïðîãðàììà áóäåò âûãëÿäåòü
òàê:
<example>
@@ -487,7 +487,7 @@
<simpara>
Ñåãîäíÿ áàçû äàííûõ - îñíîâíàÿ ñîñòàâëÿþùàÿ
ïðàêòè÷åñêè ëþáûõ ïðèëîæåíèé,
îñíîâàííûõ íà Web, êîòîðàÿ äàåò âîçìîæíîñòü
ïðåäîñòàâëåíèÿ ðàçíîîáðàçíîãî
- äèíàìè÷åñêîãî ñîäåðæèìîãî. Ïîñêîëüêó â òàêèõ áàçàõ
äàííûì ìîæåò õðàíèòüñÿ
+ äèíàìè÷åñêîãî ñîäåðæèìîãî. Ïîñêîëüêó â òàêèõ áàçàõ
äàííûõ ìîæåò õðàíèòüñÿ
âåñüìà âàæíàÿ è ñåêðåòíàÿ èíôîðìàöèÿ, íóæíî
ïîçàáîòèòüñÿ è îá èõ çàùèòå.
</simpara>
<simpara>
@@ -621,8 +621,8 @@
<sect2 id="security.database.sql-injection">
<title>Âíåäðåíèå â SQL</title>
<simpara>
- Ìíîãèå ðàçðàáîò÷èêè Web-ïðèëîæåíèé ñ÷èòàþò çàïðîñû
SQL íå ñòîÿùèìè,
- âíèìàíèÿ íå çíàÿ î òîì, ÷òî èõ ìîæåò èñïîëüçîâàòü
çëîóìûøëåííèê. Ýòî
+ Ìíîãèå ðàçðàáîò÷èêè Web-ïðèëîæåíèé ñ÷èòàþò çàïðîñû
SQL íå ñòîÿùèìè
+ âíèìàíèÿ, íå çíàÿ î òîì, ÷òî èõ ìîæåò èñïîëüçîâàòü
çëîóìûøëåííèê. Ýòî
îçíà÷àåò, ÷òî çàïðîñû SQL ìîãóò áûòü èñïîëüçîâàíû
äëÿ îáõîäà ñèñòåì
çàùèòû, àóòåíòèôèêàöèè è àâòîðèçàöèè, à òàêæå
èíîãäà ìîãóò áûòü
èñïîëüçîâàíû äëÿ ïîëó÷åíèÿ äîñòóïà ê êîìàíäàì
óðîâíÿ îïåðàöèîííîé
@@ -1057,7 +1057,7 @@
]]>
</programlisting>
</example>
- Ðàçóìíî èñïîëüçóÿ äàííûé ìåòîä, ìîæíî äàæå ïðèíÿò
ìåðû ïðåäîòâðàùåíèÿ
+ Ðàçóìíî èñïîëüçóÿ äàííûé ìåòîä, ìîæíî äàæå ïðèíÿòü
ìåðû ïðåäîòâðàùåíèÿ
ïîäìåíû äàííûõ, ïðåäóïðåæäàÿ, êîãäà òàêîâàÿ
ïðåäïðèíèìàåòñÿ. Åñëè
èçâåñòíî, ãäå äîëæíà áûòü íåîáõîäèìàÿ ïåðåìåííàÿ,
ìîæíî ïðîâåðèòü, íå
èäåò ëè îíà îò íåäîïóñòèìîãî èñòî÷íèêà. Ýòî íå
ãàðàíòèðóåò îòñóòñòâèå