[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 [email protected]_ 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 [email protected]_ 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.320
88
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.362
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
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
A invio massivo dati a file php Javascript 4
Z MySql injection PHP PHP 1
V PHP form intersecate PHP 0
I [Offro][Retribuito] Programmatore Php Offerte e Richieste di Lavoro e/o Collaborazione 0
P Funzione jQuery Ajax invio file a php jQuery 1
C Dopo chiusura del tag php la stringa html va a capo PHP 1
E Transaction php PHP 11
B ciclare file xml con PHP PHP 1
L Estrazione dati php Database 6
A Aiuto per pagina php PHP 0
E Php select option e ajax PHP 23
I Aiuto php Dependent Lookup PHP 0
T arretramento versione PHP... PHP 3

Discussioni simili