Che cos'è lo scripting cross-site? [duplicare]

4

Prima chiedo c'è una definizione assoluta? Ho fatto un po 'di Google e sembra che tutti dica qualcosa di diverso.

SO dice una persona

An XSS vulnerability exists whenever a string from outside your application can be interpreted as code.

Sembra simile a un'iniezione SQL ma attacca il server web, non l'utente?

Un altro

Cross Site Scripting basically is a security vulnerability of dynamic web pages where an attacker can create a malicious link to inject unwanted executable JavaScript into a Web site. The most usual case of this vulnerabilities occurs when GET variables are printed or echoed without filtering or checking their content.

Ancora una volta sembra che qualcuno possa fare un pasticcio con l'URL per inserire il codice dannoso in GET, ma non sarebbe come attaccare se stessi?

Questo articolo era nella parte superiore di una ricerca di Google ma sembra barbabietolare e non definire nulla. Implica che XSS sia fatto di solito con JavaScript, è vero?

    
posta Celeritas 22.07.2012 - 01:34
fonte

2 risposte

6

Prima chiedo c'è una definizione aboslute?

C'è una definizione assoluta di qualcosa in questi giorni? Troverai la maggior parte delle definizioni per XSS dire la stessa cosa alla fine. XSS sta essenzialmente iniettando script dannosi attraverso l'input utente non igienizzato.

Dai un'occhiata a queste due animazioni: XSS Animation 1 e XSS Animation 2

Sembra simile a un'iniezione SQL ma attacca il server web, non l'utente?

Gli script XSS vengono generalmente eseguiti nel browser dei client e attaccano l'utente (non sto dicendo che non può essere dannoso per il server)

Ancora una volta sembra che qualcuno possa fare un pasticcio con l'URL per inserire il codice dannoso in GET di variabili passate, ma non sarebbe come attaccare se stessi?

Potresti condividere l'URL non sicuro con altri utenti che utilizzano il sito web. Forse è semplice come un collegamento di Facebook che si traduce nella persona che invia tutte le loro informazioni personali a voi.

Implica che XSS sia fatto di solito con JavaScript, vero?

Sì. Ad esempio: inserisci questo in un modulo di siti, %codice% . Se vedi un avviso con xss , il sito è vulnerabile. Da lì sei limitato dalla tua immaginazione e competenza.

Myspace è stato un bagno di sangue per quanto riguarda l'XSS. Guarda il worm Sammy. Ti sorprenderà quante persone / aziende ignorano l'XSS (e la sicurezza in generale). Ho lavorato per un'azienda in cui si poteva facilmente scrivere un semplice worm XSS che cancellasse tutti i dati degli utenti (sul sito Web) e successivamente cancellasse anche tutti i dati dei contatti, eliminando quindi tutti i dati di tutti. Ciò comportava la chiamata dell'API delle applicazioni per conto dell'utente all'interno di JS. Regola generale, non fidarti mai dell'input dell'utente.

    
risposta data 22.07.2012 - 02:35
fonte
3

XSS è un difetto che si verifica solo su siti che generano dinamicamente pagine. I siti Web con pagine statiche non sono vulnerabili a XSS. Si tratta di un'iniezione di codice html o javascript per il server Web da riflettere su un client o sul browser client da eseguire; ma non è l'iniezione di istruzioni SQL come in SQLi dove ha un DB nel back-end.

I difetti XSS sono di tre tipi.

  • Persistente: l'input dell'utente consiste in un codice software dannoso che viene archiviato nell'applicazione Web e viene successivamente reso disponibile in ogni richiesta per leggerlo insieme a una porzione di dati.

  • Non persistente - L'input dell'utente è costituito da codice dannoso che viene restituito nella risposta del server alla richiesta, non viene memorizzato nell'app Web in modo che sia specifico per tale richiesta.

  • basato su DOM - Questo non coinvolge il web server, è locale per il browser web. Penso che questo sia quello che stai cercando.

Guarda questo link per una buona spiegazione su XSS. Per evitare XSS devi eseguire validazioni di input.

    
risposta data 22.07.2012 - 02:08
fonte

Leggi altre domande sui tag