Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Cryptare una pagina PHP

    Salve,

    è possibile cryptare per intero (o quasi) una pagina che contiene HTML e PHP, in modo che tentandone di vedere le sorgenti dal Browser non si veda niente oppure si vedano caratteri illeggibili?

    (Possibilmente qualche tool che sia anche immune al Tool Sviluppatori di Google Chrome?)

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    719
    Non ne capisco il senso.

    Il PHP è interpretato lato server, quindi non è utilizzabile, e criptare l'html è stupido.

    Ci sono dei tool che ti permettono di criptare la pagina via javascript, ma non ci vuole niente a decriptare, e i tool di chrome o firefox non possono essere bloccati perché analizzano la pagina elaborata.

    Insomma, non si può fare.


  3. #3
    Originariamente inviato da simo22
    Non ne capisco il senso.

    Il PHP è interpretato lato server, quindi non è utilizzabile, e criptare l'html è stupido.

    Ci sono dei tool che ti permettono di criptare la pagina via javascript, ma non ci vuole niente a decriptare, e i tool di chrome o firefox non possono essere bloccati perché analizzano la pagina elaborata.

    Insomma, non si può fare.

    In pratica dovrei cryptare, la pagina di un client di un Browser Game, in questa pagina si trovano diverse info fra cui la porta e l'ip del Server dove si trova il "programma" che elabora le richieste effettuate dal Client del gioco.

    Io avrei bisogno di cryptare/nascondere nel modo più sicuro possibile almeno quelle 2 variabili (che vengono fornite dal client poi allo script flash) IP e Porta, in modo da ostacolare eventuali "lamer" che volessero tentare di floddare/dossare la porta...

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    719
    Non è così semplice fare un DDoS efficace. Ti consiglio di lasciar perdere con questa criptazione.


  5. #5
    Originariamente inviato da simo22
    Non è così semplice fare un DDoS efficace. Ti consiglio di lasciar perdere con questa criptazione.

    Sfortunatamente, nel mio caso, i DoS influiscono molto… :S

    Quindi preferisco offuscare quanto meglio l'IP del Server, se possibile...

  6. #6
    Utente di HTML.it L'avatar di Enjix
    Registrato dal
    Apr 2012
    Messaggi
    57
    Perchè non gestisci l'indirizzo ip e la porta direttamente da ActionScript? Ad esempio...

    codice:
    var indirizzoIP:String = "127.0.0.1";  // indirizzo IP del tuo server
    var porta:uint = 521; // Porta del tuo server
    Comunque, penso che la cosa migliore sia spostare questa discussione in ActionScript, perchè di php non vedo un granchè...

  7. #7
    Originariamente inviato da Enjix
    Perchè non gestisci l'indirizzo ip e la porta direttamente da ActionScript? Ad esempio...

    codice:
    var indirizzoIP:String = "127.0.0.1";  // indirizzo IP del tuo server
    var porta:uint = 521; // Porta del tuo server
    Comunque, penso che la cosa migliore sia spostare questa discussione in ActionScript, perchè di php non vedo un granchè...
    Questo è il client del gioco:

    codice:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <?php
    require_once('./includes/core.php');
    require_once('./includes/session.php');
    $page['id'] = "client";
    
    if($_SESSION['client_ok'] == "yes")
    {
    	unset($_SESSION['client_ok']);
    }	
    else
    {
    	exit;
    }
    
    $A = rand(10000,20000);
    $B = rand(20000,30000);
    $C = rand(30000,40000);
    $D = "HABLUX";
    $ticket = $D."-".$A.$B.$C;
    $GLOBALS['serverdb']->query("UPDATE characters SET auth_ticket = '".$ticket."' WHERE id = '".$user->id."'");
    $myticket = $GLOBALS['serverdb']->fetch_assoc($GLOBALS['serverdb']->query("SELECT * FROM characters WHERE id = '".$user->id."'"));
    
    ?>
    
    
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="it" lang="it" xmlns:og="http://opengraphprotocol.org/schema/" xmlns:fb="http://www.facebook.com/2008/fbml"> 
    
    <head> 
    
    	<meta http-equiv="content-type" content="text/html; charset=utf-8" /> 
    	 
    	<link rel="shortcut icon" href="http://www.hablux.it/web-gallery/v2/favicon.ico" type="image/vnd.microsoft.icon" />
    
    	<title>Hablux: </title> 
    
    
    
    <script src="http://hablux.it/client-js/libs2.js" type="text/javascript"></script>
    
    <script src="http://hablux.it/client-js/visual.js" type="text/javascript"></script>
    
    <script src="http://hablux.it/client-js/libs.js" type="text/javascript"></script>
    
    <script src="http://hablux.it/client-js/common.js" type="text/javascript"></script>
    <script src="<?php echo PATH; ?>/web-gallery/static/js/identity.js" type="text/javascript"></script>
    
    
    
    
    
    	<script type="text/javascript"> 
    
    		document.habboLoggedIn = true;
    
    		var andSoItBegins = (new Date()).getTime();
    
    		var habboName = "Pietro514";
    
    		var habboId = 1;
    
    		var facebookUser = false;
    
    		var habboReqPath = "http://hablux.it/";
    
    		var habboStaticFilePath = "http://images.habbo.com/habboweb/63_1dc60c6d6ea6e089c6893ab4e0541ee0/969/web-gallery";
    
    		var habboImagerUrl = "http://www.habbo.com/habbo-imaging/";
    
    		var habboPartner = "";
    
    		var habboDefaultClientPopupUrl = "http://hablux.it/client";
    
    		window.name = "d61bd4dc711d95b7e85b86bc2c1ce2a5a6a6286e";
    		if (typeof HabboClient != "undefined") { HabboClient.windowName = "d61bd4dc711d95b7e85b86bc2c1ce2a5a6a6286e"; }
    
    	</script> 
    
    
    
    
    
    <noscript> 
    
        <meta http-equiv="refresh" content="0;url=http://hablux.it/error/?nojs" />
    
    </noscript> 
    
    
    
    <link rel="stylesheet" href="http://hablux.it/client-js/common.css" type="text/css" />
    
    <link rel="stylesheet" href="http://hablux.it/client-js/habboflashclient.css" type="text/css" />
    
    <link rel="stylesheet" href="http://hablux.it/client-js/client.css" type="text/css" />
    
    <script src="http://images.habbo.com/habboweb/63_1dc60c6d6ea6e089c6893ab4e0541ee0/995/web-gallery/static/js/habboflashclient.js" type="text/javascript"></script>
    
    
    
    
    
    <script type="text/javascript"> 
    
        FlashExternalInterface.loginLogEnabled = false;
    
        FlashExternalInterface.logLoginStep("web.view.start");
    
        var flashvars = {
                "client.allow.cross.domain" : "0", 
                "client.notify.cross.domain" : "1", 
    			"connection.info.host" : "IP HOST",  
    			"connection.info.port" : String.fromCharCode(51,56,49,48,49), 
                "site.url" : "http://www.hablux.it/", 
                "url.prefix" : "http://www.hablux.it/", 
                "client.reload.url" : "http://www.hablux.it/reauthenticate.php", 
                "client.fatal.error.url" : "http://www.hablux.it/client_error", 
                "client.connection.failed.url" : "http://www.hablux.it/client_err", 
    			"external.variables.txt" : "http://hablux.biserhosting.com/r64/external_variables.txt",
    			"external.texts.txt" : "http://hablux.biserhosting.com/r64/external_flash_texts.txt", 
    			"productdata.load.url" : "http://hablux.biserhosting.com/r64/productdata.txt", 
    			"furnidata.load.url" : "http://hablux.biserhosting.com/r64/furnidata.txt",
    			"use.sso.ticket" : "1", 
                "sso.ticket" : "<?php echo $myticket['auth_ticket']; ?>", 
                "processlog.enabled" : "1", 
                "account_id" : "<?php echo $user->id; ?>", 
                "client.starting" : "Attendi per favore! Hablux sta caricando.", 
                "flash.client.url" : "http://images.habbo.com/dcr/r64_none_1dc60c6d6ea6e089c6893ab4e0541ee0/", 
                "user.hash" : "46623892dafc35d8633b96cee565b76af2484c1", 
                "facebook.user" : "0", 
                "has.identity" : "0", 
                "flash.client.origin" : "popup" 
        };
    
    	var params = {
            "base" : "http://hablux.biserhosting.com/r64/",
            "allowScriptAccess" : "always",
            "menu" : "false"                
        };
    
        
    
        if (!(HabbletLoader.needsFlashKbWorkaround())) {
    
        	params["wmode"] = "opaque";
    
        }
    
        
    
        FlashExternalInterface.signoutUrl = "http://www.hablux.it/account/logout";
    
    
    
        var clientUrl = "http://hablux.biserhosting.com/r64/Habbo.swf";
        swfobject.embedSWF(clientUrl, "flash-container", "100%", "100%", "10.0.0", "http://images.habbo.com/habboweb/63_1dc60c6d6ea6e089c6893ab4e0541ee0/217/web-gallery/flash/expressInstall.swf", flashvars, params);
     
     
    
        window.onbeforeunload = unloading;
    
        function unloading() {
    
            var clientObject;
    
            if (navigator.appName.indexOf("Microsoft") != -1) {
    
                clientObject = window["flash-container"];
    
            } else {
    
                clientObject = document["flash-container"];
    
            }
    
            try {
    
                clientObject.unloading();
    
            } catch (e) {}
    
        }
    
        window.onresize = function() {
    
            HabboClient.storeWindowSize();
    
        }.debounce(0.5);
    
    
    
        new Ajax.Request(habboReqPath + "/crossdomain.xml", {
    
            method: 'get',
    
            requestHeaders: {'Cache-Control': 'no-cache'}
    
        });
    
    </script>
    
    
    
    
    
    </head> 
    
     
    
    <body id="client" class="flashclient"> 
    
    <div id="overlay"></div> 
    
     
    
    
    
    <div id="overlay"></div> 
    
    <div id="client-ui" class> 
    
        <div id="flash-wrapper"> 
    
        <div id="flash-container"> 
    
            <div id="content" style="width: 400px; margin: 20px auto 0 auto; display: none"> 
    
    			<div class="cbb clearfix"> 
    
    			    <h2 class="title">Error - Impossibile carica Hablux</h2> 
    
    			    <div class="box-content"> 
    
    			        
    
    Questo normalmente accade quando non &egrave; installato Adobe Flash Player sul computer.</p>  
    
    				
    
    Per favore, clicca qui per scaricare l'ultima versione di Adobe Flash Player!</p>
    
    			    </div> 
    
    			</div> 
    
            </div> 
    
            <script type="text/javascript"> 
    
                $('content').show();
    
            </script> 
    
            <noscript> 
    
                <div style="width: 400px; margin: 20px auto 0 auto; text-align: center">
    
                    
    
    If you are not automatically redirected, please click here</p>
    
                </div>
    
            </noscript> 
    
        </div> 
    
        </div> 
    
    	<div id="content" class="client-content"></div>
    
    </div> 
    
        <script type="text/javascript">
    
    		RightClick.init("flash-wrapper", "flash-container");
    
    		$(document.body).addClassName("js");
    
            HabboClient.resizeToFitScreenIfNeeded();
    
            HabboView.run();
    
        </script>
    
    </body> 
    
    </html>
    In particolare, la parte più importante che contiene i dati che vorrei cryptare in qualche modo, è questa:

    codice:
      var flashvars = {
                "client.allow.cross.domain" : "0", 
                "client.notify.cross.domain" : "1", 
    			"connection.info.host" : "IP SERVER",  
    			"connection.info.port" : String.fromCharCode(51,56,49,48,49), 
                "site.url" : "http://www.hablux.it/", 
                "url.prefix" : "http://www.hablux.it/", 
                "client.reload.url" : "http://www.hablux.it/reauthenticate.php", 
                "client.fatal.error.url" : "http://www.hablux.it/client_error", 
                "client.connection.failed.url" : "http://www.hablux.it/client_err", 
    			"external.variables.txt" : "http://hablux.biserhosting.com/r64/external_variables.txt",
    			"external.texts.txt" : "http://hablux.biserhosting.com/r64/external_flash_texts.txt", 
    			"productdata.load.url" : "http://hablux.biserhosting.com/r64/productdata.txt", 
    			"furnidata.load.url" : "http://hablux.biserhosting.com/r64/furnidata.txt",
    			"use.sso.ticket" : "1", 
                "sso.ticket" : "<?php echo $myticket['auth_ticket']; ?>", 
                "processlog.enabled" : "1", 
                "account_id" : "<?php echo $user->id; ?>", 
                "client.starting" : "Attendi per favore! Hablux sta caricando.", 
                "flash.client.url" : "http://images.habbo.com/dcr/r64_none_1dc60c6d6ea6e089c6893ab4e0541ee0/", 
                "user.hash" : "46623892dafc35d8633b96cee565b76af2484c1", 
                "facebook.user" : "0", 
                "has.identity" : "0", 
                "flash.client.origin" : "popup" 
        };
    "connection.info.host" : "IP SERVER",
    "connection.info.port" : String.fromCharCode(51,56,49,48,49),

    ci sono queste 2 "variabili" che specificano porta (quest'ultima inutilmente cryptata, visto che con i tool sviluppatore di Chrome e Firefox si vede la porta decryptata) e poi l'IP che vorrei assolutamente nascondere...

  8. #8
    Utente di HTML.it L'avatar di Enjix
    Registrato dal
    Apr 2012
    Messaggi
    57
    Originariamente inviato da Scimiazzurro

    "connection.info.host" : "IP SERVER",
    "connection.info.port" : String.fromCharCode(51,56,49,48,49),

    ci sono queste 2 "variabili" che specificano porta (quest'ultima inutilmente cryptata, visto che con i tool sviluppatore di Chrome e Firefox si vede la porta decryptata) e poi l'IP che vorrei assolutamente nascondere...
    Bè in realtà da come lo scrivi non serve neanche avere a disposizione i tool di Firefox e Chrome... conoscendo la funzione fromCharCode(), e avendo in mano la sola tabella dei caratteri ASCII, arrivi subito al risultato finale... visto che l'indirizzo ip e la porta non lo ottieni da PHP, o inserisci la porta e l'IP nel tuo codice ActionScript come ti avevo detto in precedenza o crei una funzione in PHP che ti codifica la porta e indirizzo IP (meglio se gli algoritmi sono diversi) in modo univoco e in ActionScript lo decodifichi. Se non hai accesso all' ActionScript, oppure è un API non sviluppata da te... c'è poco da fare...

  9. #9
    Ma che senso ha tutto questo? Il browser a quel server e a quella porta ci si deve collegare no? Quindi deve per forza conoscerli

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.