PROZONE powered by Tophost
  Home   Forum   Regolamento Help Login Registrati   *
Statistiche
Utenti
Utenti Totali: 1707
Ultimo utente: xal
Statistiche
Posts Totali: 29470
Topics Totali: 3404
Online Oggi: 51
Presenze Massime Online: 559
(23 Luglio 2008, 14:24:28)
Utenti Online
Utenti: 0
Visitatori: 49
Totale: 49
Siti amici
Design & Multimedia

Dire e Fare il blog che ti aiuta

Wordpress
Pagine: [1]
 
Autore Topic: Register_globals: Off  (Letto 13085 volte)
guardaqua
Supervisore
*
Posts: 717


Register_globals: Off
« il: 22 Aprile 2005, 12:27:25 »

Cercando cercando, ho trovato un ciclo che permette di convertire le variabili globali in variabili che funzionano anche con REGISTER_GLOBALS settato su OFF.

In pratica, basta inserire all'inizio delle pagine PHP il seguente codice:

Codice:
##############################
if (!ini_get('register_globals')) {
   $superglobals = array($_SERVER, $_ENV, $_FILES, $_COOKIE, $_POST, $_GET);
   if (isset($_SESSION)) {
      array_unshift($superglobals, $_SESSION);
   }
   foreach ($superglobals as $superglobal) {
      extract($superglobal, EXTR_SKIP);
   }
}
##############################
Quello che vorrei sapere, non essendo un esperto di PHP, è se così facendo si mantiene il livello di sicurezza assicurato dall'avere le variabili globali disabilitate.

Ciao a tutti
« Ultima modifica: 2 Dicembre 2005, 10:46:04 da effe8 » Loggato

guardaqua
Supervisore
*
Posts: 717


Register_globals: Off
« Risposta #1 il: 3 Maggio 2005, 02:36:31 »

Possibile che nessuno sappia se faccio bene a utilizzare questo script oppure no?
Devo chiedere direttamente a Tophost? In fondo non è una domanda *prettamente* pertinente al servizio clienti...
Loggato

effe8
Coordinatore
*
Posts: 837


Register_globals: Off
« Risposta #2 il: 3 Maggio 2005, 06:39:13 »

Facciamo un esempio pratico per capire il problema della sicurezza che va a correggere REGISTER_GLOBALS OFF analizzando il seguente script che chiameremo entra.php.

Codice:
<?php
# Definisce "$authorized = true" solo se l'utente si e' autenticato
if (authenticated_user()) {
   $authorized = true;
}
if ($authorized) {
    include "/percorso/della/pagina/privata.php";
}
?>

Se il parametro REGISTER_GLOBALS fosse impostato ad ON, sarebbe facilissimo bucare il nostro script. Infatti, si potrebbe eseguire dal nostro browser una richiesta del tipo http://www.nostrosito.estensione/entra.php?authorized=true aggirando così l'autenticazione perchè il nostro script avrebbe impostata la variabile $authorized=true eludendo di fatto l'autenticazione!

Se invece REGISTER_GLOBALS è in OFF la variabile passata via GET non sarà disponibile come $authorized, ma solamente come $_GET['authorized'].

Ecco che se nel nostro sito ci installiamo uno script open source, e quindi con il codice alla portata di tutti, programmato con REGISTER_GLOBALS = ON rendiamo il nostro sito vulnerabile, in quanto basta che un malintenzionato se lo studi un pochino e scopra come 'bucarlo' passando le opportune variabili via GET.

Alla luce di quanto appena detto il mio spassionato consiglio è di non utilizzare dei cicli che convertano tutte le variabili speciali in variabili locali, e andare a convertirsi solo le variabili che effettivamente ci servono.
« Ultima modifica: 3 Maggio 2005, 06:41:23 da effe8 » Loggato

bigwednesday42
Utente
***
Posts: 161


Register_globals: Off
« Risposta #3 il: 30 Maggio 2005, 16:05:08 »

effe 8, scusa se ti chiedo questo, ma non ho capito bene il tuo esempio, cosi' ho cercato di interpretarlo e di riscriverlo in un modo che a me risulta piu' facile da capire e ricordare. Puoi vedere quello che ho scritto sul mio sito: http://www.recursigner.com/view.php?id=117

Puoi dargli u'occhiata e dirmi se quello che ho scritto è corretto e completo !?

Grazie davvero
 
Loggato
effe8
Coordinatore
*
Posts: 837


Register_globals: Off
« Risposta #4 il: 30 Maggio 2005, 16:18:20 »

Ciao bigwednesday, hai inserito una spiegazione veramente semplice e pratica. Ben fatto.  
Loggato

bigwednesday42
Utente
***
Posts: 161


Register_globals: Off
« Risposta #5 il: 30 Maggio 2005, 16:47:06 »

bene, passo avanti
 
Loggato
Pagine: [1]
 
 
Salta a:  

Oggetto Iniziato da Risposte Visto Ultimo Post
Trasformare Il Tuo Computer In Un Server Pixel 12 9100 Ultimo Post 22 Aprile 2006, 21:59:41
da DigItalWarrior
Nuova Frontiera Dello Spam Sui Blog « 1 2 » Tophost 22 16126 Ultimo Post 2 Agosto 2006, 08:35:40
da luke
Prozone Raggiunge Il Primato effe8 0 6740 Ultimo Post 18 Marzo 2006, 15:16:39
da effe8
Textpattern Su Tophost Tophost 0 1742 Ultimo Post 26 Aprile 2006, 10:29:27
da Tophost
Script Per Utenti Di Un Sito SuperSavio 13 4181 Ultimo Post 12 Giugno 2005, 19:05:22
da SuperSavio
Powered by MySQL Powered by PHP Powered by SMF 1.1.8 | SMF © 2006-2008, Simple Machines LLC
Traduzione Italiana a cura di SMItalia

TinyPortal v0.9.8 © Bloc
XHTML 1.0 Valido! CSS Valido!


Ultima visita di Google a questa pagina 3 Agosto 2010, 20:55:44