|
3 | 3 | <!-- EN-Revision: 87d3bf2e9ea7da5abbeca3e60ea7cf7abfa6f7f3 Maintainer: ManueldG Status: ready --> |
4 | 4 | <!-- Reviewed: no --> |
5 | 5 | <!-- splitted from ./index.xml, last change in rev 1.66 --> |
| 6 | + |
6 | 7 | <chapter xml:id="security.cgi-bin" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"> |
7 | 8 | <title>PHP installato come binario CGI</title> |
8 | 9 |
|
9 | 10 | <sect1 xml:id="security.cgi-bin.attacks"> |
10 | 11 | <title>Possibili attacchi</title> |
11 | 12 | <simpara> |
12 | | - L'utilizzo di PHP come binario <acronym>CGI</acronym> è un'opzione che ne |
13 | | - permette l'uso nel caso non lo si voglia integrare come modulo del server |
14 | | - (come Apache) sia per utilizzarlo con diversi tipi di wrapper <acronym>CGI</acronym> |
15 | | - che per creare con <command>chroot</command> e <command>setuid</command> |
| 13 | + Usare di PHP come binario <acronym>CGI</acronym> è un'opzione che |
| 14 | + permette di evitare di integrarlo come modulo del server |
| 15 | + (come Apache) oppure per utilizzarlo con diversi tipi di wrapper <acronym>CGI</acronym> |
| 16 | + o per creare con <command>chroot</command> e <command>setuid</command> |
16 | 17 | ambienti sicuri per gli script. Questa configurazione di solito prevede |
17 | 18 | l'installazione dell'eseguibile <command>php</command> nella directory |
18 | 19 | del server web <filename class="directory">cgi-bin</filename>. |
|
28 | 29 | role="url">http://my.host/cgi-bin/php?/etc/passwd</filename> |
29 | 30 | </simpara> |
30 | 31 | <simpara> |
31 | | - Le informazioni di una query ovvero la parte dell'URL dopo il punto |
32 | | - interrogativo (<literal>?</literal>) vengono passate come argomenti |
33 | | - dalla riga di comando dall'interfaccia CGI all'interprete. Di solito |
| 32 | + Le informazioni contenute nell'URL dopo il punto interogativa (<literal>?</literal>) |
| 33 | + vengono passate come argomenti dalla riga di comando all'interprete tramite interfaccia CGI. Di solito |
34 | 34 | gli interpreti aprono ed eseguono il file specificato nel primo |
35 | 35 | argomento della riga di comando. |
36 | 36 | </simpara> |
|
40 | 40 | </simpara> |
41 | 41 | </listitem> |
42 | 42 | <listitem> |
| 43 | +<!-- traduzione alternativa |
| 44 | + L'accesso ai file di sistema è consentito tramite l'URL http://my.host/cgi-bin/php?/etc/passwd. |
| 45 | + Le informazioni della query, posizionate dopo il punto interrogativo (?), vengono trasmesse come |
| 46 | + argomenti della riga di comando all'interprete tramite l'interfaccia CGI.In genere, gli |
| 47 | + interpreti aprono e eseguono il file specificato come primo argomento della riga di comando. |
| 48 | + Tuttavia, quando viene invocato come binario CGI, php si rifiuta di interpretare gli argomenti della riga di comando. |
| 49 | + L'accesso a un documento web sul server è possibile tramite l'URL http://my.host/cgi-bin/php/secret/doc.html.La |
| 50 | + parte successiva al nome del binario PHP, /secret/doc.html, viene convenzionalmente utilizzata per specificare |
| 51 | + il nome del file che deve essere aperto e interpretato dal programma CGI. Di consueto, alcune direttive di |
| 52 | + configurazione del server web (Apache: Action) vengono impiegate per reindirizzare le richieste di documenti |
| 53 | + come http://my.host/secret/script.php all'interprete PHP.Con questa configurazione, il server web verifica |
| 54 | + preliminarmente i permessi di accesso alla directory /secret e successivamente genera la richiesta |
| 55 | + reindirizzata http://my.host/cgi-bin/php/secret/script.php. Tuttavia, se la richiesta viene originariamente |
| 56 | + fornita in questa forma, il server web non esegue alcun controllo di accesso per il file /secret/script.php, |
| 57 | + ma solo per il file /cgi-bin/php.Di conseguenza, qualsiasi utente con accesso a /cgi-bin/php può ottenere |
| 58 | + l'accesso a qualsiasi documento protetto sul server web. Tuttavia, è possibile utilizzare le direttive |
| 59 | + di configurazione del runtime cgi.force_redirect, doc_root e user_dir in PHP per prevenire tale attacco, |
| 60 | + a condizione che l'albero dei documenti del server contenga directory con restrizioni di accesso. |
| 61 | +--> |
43 | 62 | <simpara> |
44 | 63 | Accesso a qualsiasi documento web sul server:<filename |
45 | 64 | role="url">http://my.host/cgi-bin/php/secret/doc.html</filename> |
|
0 commit comments