[PHP] Link Obfuscator

Kryccc

Nuovo Utente
21 Set 2019
3
0
1
Buonasera a tutti,
premetto che non so scrivere i codici ed avrei bisogno del vostro aiuto.
Ho la necessita' di rendere una pagina irraggiungibile tramite link diretto.
L'unica soluzione che ho trovato online e' un piccolo script php che contiene due file

linkObfuscator.php

PHP:
<?php

/**
 *
 * @author Cerion Morgauin
 * @version $Id$
 * @copyright Enrico Marongiu (cerion _@_ tiscali _._ it) - 2004
*  linkObfuscator manages a simple way of validating links: starting from a session, an user can browse exclusively those links that are performed by this page. to do this, a random seed is generated and a special code (named go) is attached to each link.
* each page that has to be obfuscated needs this class and a $linkObfuscator::check() to validate the user.
 **/

class linkObfuscator
{
    var $seed=0;
    var $referralSeed=0;
    function linkObfuscator($referralSeed=false)
    {
        // new seed, to obfuscate new pages
           srand();
        $this->seed= rand();
        // old seed, to check access
        if($referralSeed===false or !is_numeric($referralSeed)) {
            $this->referralSeed=$referralSeed;
        } else if(is_numeric($_SESSION['referralSeed'])) {
            $this->referralSeed=$_SESSION['referralSeed'];
            $_SESSION['referralSeed']=$this->seed;
        }   
    }

    function _obfuscate($aLink,$aSeed)
    {
        $sep=(strpos('?',$aLink)===false)?'?':'&';
        return $aLink. $sep ."go=".md5($aSeed .$aLink);
    }
    
    function obfuscate($aLink)
    {
        return $this->_obfuscate($aLink,$this->seed);
    }
    
    function check($anObfuscatedLink)
    {
        $theLink=preg_replace('/(&|\?)go=(\w)+/','',$anObfuscatedLink);
        if($this->_obfuscate($theLink,$this->referralSeed)==$anObfuscatedLink)
            return true;
            
        return false;
    }
}
?>

e il file test.php

PHP:
<?php

/**
 *
 *@author Cerion Morgauin
 * @version $Id$
 * @copyright Enrico Marongiu (cerion _@_ tiscali _._ it) - 2004
*  linkObfuscator manages a simple way of validating links: starting from a session, an user can browse exclusively those links that are performed by this page. to do this, a random seed is generated and a special code (named go) is attached to each link.
* each page that has to be obfuscated needs this class and a $linkObfuscator::check() to validate the user.
 **/

require_once('linkObfuscator.class.php');

session_start();


$lO=new linkObfuscator($_SESSION['referralSeed']);
print "actual referral Seed:". $_SESSION['referralSeed'] ."<br />\n";
?>
<html><body>
<?
if ($lO->referralSeed) {
    if($lO->check($_SERVER['REQUEST_URI'])){
        print "checked link: ${_SERVER['REQUEST_URI']}<br />\n";
    }else{
        print "link invalid: ${_SERVER['REQUEST_URI']} \n";

    }
}
$_SESSION['referralSeed']=$lO->seed;
$newLink= preg_replace('/(&|\?)go=(\w)+/','',$_SERVER['REQUEST_URI']);
$newLinkObscured=$lO->obfuscate($newLink);

?>
<a href="<?=$newLinkObscured?>">Obscured</a>
</body>

ho caricato la cartella con i file nella root del sito.
La domanda e' questa, che codice devo aggiungere nella head della pagina che voglio offuscare per far si che lo script funzioni ?

Come ho detto non conosco il linguaggio php quindi gentilmente se mi potete indicare step by step cosa devo fare.
Ringrazio molto per il vostro aiuto.
K.
 

macus_adi

Utente Attivo
5 Dic 2017
1.343
91
48
IT/SW
Solo questo:
PHP:
require_once('linkObfuscator.class.php');
session_start();
$lO=new linkObfuscator($_SESSION['referralSeed']);
if ($lO->referralSeed) {
    if(!$lO->check($_SERVER['REQUEST_URI'])){
       header('location:/');
       exit;
    }

}
 

Max 1

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
29 Feb 2012
4.449
338
83
@Kryccc
Da regolamento del forum le parole come hai messo tu "aiuto please" non sono ammesse nei titoli delle discussioni.
2.7 E' vietato aprire discussioni con titoli generici del tipo "Aiuto", "Help" o "Rispondete subito".
Pertanto prima di continuare leggi attentamente il regolamento del forum e quella della sezione dove posti!
Inoltre coreggi il titolo di questa discussione
Grazie
 

Kryccc

Nuovo Utente
21 Set 2019
3
0
1
@Kryccc
Da regolamento del forum le parole come hai messo tu "aiuto please" non sono ammesse nei titoli delle discussioni.Pertanto prima di continuare leggi attentamente il regolamento del forum e quella della sezione dove posti!
Inoltre coreggi il titolo di questa discussione
Grazie
Ok fatto
 

Kryccc

Nuovo Utente
21 Set 2019
3
0
1
Solo questo:
PHP:
require_once('linkObfuscator.class.php');
session_start();
$lO=new linkObfuscator($_SESSION['referralSeed']);
if ($lO->referralSeed) {
    if(!$lO->check($_SERVER['REQUEST_URI'])){
       header('location:/');
       exit;
    }

}
Ho provato ad usare il codice che hai indicato, ma non funziona, ho provato ad inserirlo sia nell head che nel body, ma nessun risultato.

Il creatore dello script l'unica indicazione che da e' questa :
* each page that has to be obfuscated needs this class and a $linkObfuscator::check() to validate the user.
forse dipende da questo ?

O sapete indicarmi qualche altro metodo per rendere il link irraggiungibile se qualcuno fa copia/incolla ?
 
Discussioni simili
Autore Titolo Forum Risposte Data
U Link a doppio file PHP PHP 0
G PHP e Microsoft Teams: generare link videocall PHP 15
Shyson [PHP] Aggiungere link al codice PHP 0
R [PHP] [Javascript] Link a DIV id di un' altra pagina PHP 4
GiErre [PHP] [HTML] Disabilitare un link in funzione della piattaforma PHP 7
trattorino [PHP] link su stringa con @ PHP 3
A [PHP] errore 404 e invio mai path pagina con link interrotto PHP 2
webmachine [PHP] Generazione Link PHP 2
G [PHP] Aprire una cartella tramite un link PHP 1
P [PHP] link con variabili e while PHP 5
N [PHP] Youtube downloader come link PHP 0
Zea [PHP] RISOLTO - creare link con il risultato dell'interrogazione db PHP 1
ICTSM [PHP] link su tabella a pagina riepilogo PHP 11
L [PHP] Sostituire link da stringa PHP 3
DaveCricket [WordPress] [PHP] Cambiare il colore del link di una pagina attiva WordPress 3
Shyson [PHP] Mettere il link "Leggi tutto" PHP 0
Monital [PHP] link cdn PHP 2
S PHP: creare un link in una pagina PHP 7
A Link ad un file PHP in HTML PHP 0
K evento click - link a pagina.php con parametri HTML e CSS 3
C problemi link in tabella php PHP 8
M creare un link in un sito usando php PHP 2
gandalf1959 funzione mail() e variabili su un link nel body in formato xxx.php?$a=$codicecontrollo PHP 2
MarcoGrazia Gestire gruppi e categorie di link con PHP PHP 1
MrClog Aprire un link da una pagina PHP con "esplora risorse" PHP 3
P Codice PHP per discriminare apertura link... PHP 2
zighy link che invia dati POST a file.php Javascript 8
G Link di file locali in PHP PHP 0
H Script php per link 'Aggiungi agli amici'? PHP 34
D htaccess: come riscrivere un link o non visualizzare il nome del file php della pagina su cui siamo? Apache 3
S Redirect php Querystring link Aiuto?? PHP 6
I PHP e link esterno... mission impossible PHP 0
E Link a pagine php PHP 49
P Codice haeder.php e link nascosti. PHP 24
I php e link tra i css PHP 1
Dragon Link interni alla pagina con php PHP 12
A Link html dentro php, problema PHP 3
C php, rendere cliccabile un link PHP 0
F Cerco Hosting con VECCHIE versioni di php Hosting 0
Cosina Captcha php PHP 1
S passare un valore da un form a un file .php con metodo post PHP 4
N php msyql PHP 6
N php problemi a visualizzare video PHP 3
A menu a tendina php PHP 1
D protezione cartelle: blocco visualizzazione/scaricamento contenuto, ma abilitazione utilizzo dati da parte di file .php presenti sul sito Web Server 1
F Php date_diff PHP 1
K [PHP] Aggiungere caratteri ad una stringa in base alla lunghezza della stessa PHP 2
C Wp-admin a file php WordPress 5
Lino80 [Retribuito] Cerco programmatore php per modifica/inserimento funzione/valori da un plugin importer wordpress Offerte e Richieste di Lavoro e/o Collaborazione 0
csi Inviare file jpg in locale alla stampante con php PHP 0

Discussioni simili