Nascondere indirizzo o visualiz. un altro oppure Proteggere pagina php ricevente

  • Creatore Discussione Creatore Discussione max_400
  • Data di inizio Data di inizio

max_400

Utente Attivo
23 Gen 2009
770
0
16
caltanissetta
max400.forumfree.it
PHP: Nascondere indirizzo o visualiz. un altro oppure Proteggere pagina php ricevente - by max4001976

Ad esempio ho una classifica di un gioco in una pagina php
(select da database ordinamento pe punteggio più alto)
dove il nome delle variabili tipo 'nome', 'citta' e 'punti' si possono leggere facilmente dal gioco in Flash (col decompiler) chiunque può crearsi un form in HTML con le stesse variabili e lo stesso indirizzo di ricezione ed inviare tutto quello che vuole...

In particolare i punti che dal gioco non si possono modificare
(tranne col decompiler) ed il furbetto può arrivare in cima alla classifica.

Che si può fare...? :book:
 
Ultima modifica:
ciao
puoi provare così

PHP:
<?php
ob_start();
$proviene=basename($_SERVER['HTTP_REFERER']);
//togliendo basename
//in $proviene dovrai mettere tutto il percorso assoluto es.
//$proviene=="http://www.mio_sito.com/cartella/nome_pagina_da_cui_devo_provenire.php"
//e se usi un get .......nome_pagina_da_cui_devo_provenire.php?pinco=pallo
if($proviene=="nome_pagina_da_cui_devo_provenire.php"){//provengo dalla pagina giusta
	//rimando ad un'altra pagina
	//e/o faccio quello che devo fare
	header("location:nome_pagina_a_cui_devo_andare.php");
}else{
	//se mi sono fatto un form (perche ho decompliato) non riesco comunque ad accedere
	//in quanto NON provengo da http://www.mio_sito.com/.....
	header("location:../index.php");
}
ob_end_flush();
?>
 
Molto bene signor gatto!!

guarda un po...

questo è il form regolare
http://max400scuola.altervista.org/proteggere-classifica/form-regolare.html

e quest'altro è quello pirata
http://max400scuola.altervista.org/proteggere-classifica/form-pirata.html

portano entrambi allo stesso indirizzo che controlla la provenienza e prende le decisioni.

la variabili le ho messe nell'header e l'invio e ricezione con get.
poi ho aggiunto quei comandi per la ricezione htmlspecialchars che converte < > in &gt; si vedono nella stringa dell'indirizzo.

Il problema sarà verificare la "provenienza" da flash.
 
ciao
Il problema sarà verificare la "provenienza" da flash.
per vedere come proviene da flash, prova: aggiungi un var_dump o un echo e commenti header...

PHP:
<?php 
ob_start(); 
$proviene=basename($_SERVER['HTTP_REFERER']); 
//metti un var_dump o un echo
var_dump($proviene);
if($proviene=="nome_pagina_da_cui_devo_provenire.php"){//provengo dalla pagina giusta 
    //commenti le righe header... per poter leggere cosa ti riporta var_dump
    //header("location:nome_pagina_a_cui_devo_andare.php"); 
}else{ 
    //header("location:../index.php"); 
} 
ob_end_flush(); 
?>
così vedi cosa devi mettere nell'if
if($proviene== quello che ti risulta dal var_dump
 
Ciao signor gatto!

ieri sera ci sono riuscito anche con Flash (senza var_dump)

ho messo come provenienza dei dati direttamente dal filmato SWF

guarda un po
http://max400scuola.altervista.org/proteggere-classifica/form-flash2.swf

però soltanto inviando le variabili con GET

i dati vengono stampati sulla pagina classifica.php e scritti in un file html
http://max400scuola.altervista.org/proteggere-classifica/file.html

Adesso sto lavorando con le sessioni... :book:
Ci vediamo signor gatto...

Appena possibile ti compro una scatoletta...

au revoir
by max
 

Discussioni simili