Sicurezza web

Come nascondere il codice sorgente di una pagina HTML

Si può nascondere/oscurare il codice sorgente di una pagina web HTML/CSS/Javascript per impedire che venga “rubato” o prelevato da altri utenti? Come posso limitare l’accesso alla struttura del mio sito web e delle pagine HTML?

Queste sono le domande che ci è stata rivolta da un nostro visitatore, che si domandava se fosse possibile rendere il codice di programmazione (codice sorgente) di un sito o di una pagina web non leggibile o non prelevabile da altri utenti esterni.

Ora risponderò a queste domande cercando di essere più esaustivo possibile e evitando di lasciare dubbi in merito. Inoltre cercherò di fornire dei metodi per eseguire questa procedura di blocco per gli utenti interessati.

Oscurare il codice HTML

Si può fare?

La risposta a questo quesito è “No“, ma mi spiego meglio:

Il codice HTML di una pagina viene sempre passato in chiaro al browser durante una sessione in modo da poterlo eseguire e visualizzarlo a schermo, quindi è sempre leggibile dalla macchina su cui stiamo operando.

Sicurezza online

Con ogni browser è possibile accedere alla console di debugging o al codice della pagina visitata in modo semplice (leggi qui come fare per visualizzarlo).

Ci sono dei metodi che permettono di limitare l’accesso o la visibilità del codice ad utenti meno esperti con l’uso di javascript come: il blocco della console del browser, blocco del tasto destro del mouse e delle scorciatoie da tastiera, ma sono tutti facilmente bypassabili.

Ci sono però alcune buone tecniche per questo scopo come: richiamare risorse js da file esterni per oscurare/nascondere parzialmente il codice HTML della pagina, oppure comprimere o minimizzare in modo adeguato per far sì che il codice risulti visibilmente meno comprensibile.

Si può criptare?

La criptazione del codice non è una buona idea perché gli strumenti che effettuano questa procedura potrebbero alterare l’intero codice e renderlo di più difficile comprensione per gli stessi browser, creando errori e problemi non risolvibili e tempi di caricamento decisamente più lunghi.

Infine il browser tenderà a decriptare il codice e con i giusti mezzi messi è possibile visualizzarlo in chiaro.

Spreco di tempo

Evita di perdere tempo con queste procedure. Il codice sorgente di una pagina sarà sempre facilmente reperibile da utenti con un minimo di conoscenza HTML e JS.

Difficilmente qualcuno si interesserà al tuo sito a tal proposito, quindi non preoccuparti. Dedica più tempo alle vere migliorie e ottimizzazioni del sito come la velocità e la SEO.

Come impedire la visualizzazione del codice sorgente

Se sei realmente intenzionato a procedere in qualsiasi maniera, come già detto precedentemente, tramite l’uso di javascript è possibile rendere inaccessibile (in parte) l’accesso alla console di debug del browser o la visualizzazione del codice sorgente HTML.

Segui questi consigli per predisporre questo blocco sul tuo sito o nelle pagine web specifiche.

Blocco del tasto destro del mouse

Per limitare la visualizzazione del codice sorgente, puoi iniziare con il blocco del tasto destro del mouse sulle pagine del tuo sito.

Questo appunto limiterà l’uso del tasto destro rendendo inaccessibile la console di debug del browser.

Questo è valido solo per l’uso del tasto del mouse per l’appunto. Esistono altri modi per accedere alla console o al codice sorgente (leggi come). Ciò significa che il blocco è valido solo per utenti poso esperti di PC e informatica.
Inoltre è possibile bypassare questo blocco semplicemente disattivando l’esecuzione di javascript all’interno del browser (solo per utenti esperti).

Per procedere, basterà incollare il seguente codice html/js all’interno della pagina interessata o in tutto il sito web (leggi come inserire uno specifico codice in tutte le pagine di un sito WordPress).

<script>   <!-- blocco tasto destro del mouse -->
  function blocco_mousedx()
   { return(false); }
  document.oncontextmenu = blocco_mousedx;
</script>

Salva e testa il corretto funzionamento dello script nel sito.

Blocco delle scorciatoie da tastiera

Altro step per il blocco delle risorse del browser è quello di limitare l’uso di appositi tasti e scorciatoie da tastiera, quelli pre-impostati per l’apertura della console o per la visualizzazione del codice sorgente.

Lo script da incollare nelle pagine è il seguente:

<script> <!-- blocco scorciatoie da tastiera -->
 document.onkeydown = function(blocco_tasti) {
  if(event.keyCode == 123) 
{ return false; }
  if(blocco_tasti.ctrlKey && blocco_tasti.shiftKey && blocco_tasti.keyCode == 'I'.charCodeAt(0)) { return false; }
  if(blocco_tasti.ctrlKey && blocco_tasti.shiftKey && blocco_tasti.keyCode == 'C'.charCodeAt(0)) { return false; }
  if(blocco_tasti.ctrlKey && blocco_tasti.shiftKey && blocco_tasti.keyCode == 'J'.charCodeAt(0)) { return false; }
  if(blocco_tasti.ctrlKey && blocco_tasti.keyCode == 'U'.charCodeAt(0)) 
{ return false; } 
}
</script>

Il codice bloccherà definitivamente l’utilizzo delle seguenti scorciatoie da tastiera:

  • F12
  • CTRL+MAIUSC+I
  • CTRL+MAIUSC+J
  • CTRL+MAIUSC+C
  • CTRL+U

Per funzionare adeguatamente e nascondere il codice HTML della pagina, queste funzioni necessitano del il blocco del tasto destro del mouse combinato.

Ora non sarà più possibile visualizzare il codice HTML sorgente del sito in modo diretto, ma non sarà del tutto nascosto. Ricorda inoltre che queste procedure non sono infallibili ed utenti esperti possono facilmente aggirare la restrizione applicata.

Conosci altri metodi per impedire di visualizzare il codice HTML di un sito web? Faccelo sapere nei commenti! Iscriviti alla nostra Newsletter per aggiornamenti su nuovi articoli e seguici su Facebook.


Leggi anche: Cos’è un certificato SSL?

Articoli Recenti:

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

CAPTCHA