Há uma ampla classe de vulnerabilidades de segurança de aplicativos conhecidas como "scripts de sites interativos armazenados", o que geralmente significa que, quando você visita um site (independentemente de sua reputação), algum código não foi criado pelo o dono do site começa a executar no seu computador. 99,9999% do tempo, o código que inicia a execução é JavaScript. Às vezes, o JavaScript pode disparar com êxito a execução de outro código, como Flash, applets Java, ActiveX e assim por diante. Eles também podem causar pop-ups, instalar cookies de rastreamento mal-intencionados e obter itens como tamanho da tela, string do agente do usuário, o site de onde você veio e até mesmo configurar o Cross Frame Scripting, um ataque relacionado interagindo com o site atual, mas interagindo com o site de um invasor.
A razão pela qual esses ataques acontecem é que os sites permitem que entradas não validadas sejam inseridas no site e, em seguida, recuperadas posteriormente para exibição. Às vezes isso acontece por causa de um servidor da Web inseguro e, às vezes, eles simplesmente não fazem validação de entrada adequada.
Isso é extremamente comum em sites como fóruns, quadros de mensagens e seções "Comentários" de sites do sistema de gerenciamento de conteúdo (CMS); basicamente, em qualquer lugar que os usuários podem inserir seus próprios dados. O superusuário, na verdade, é um exemplo desse site.
Existem maneiras de se defender e / ou prevenir esses ataques, mas são extremamente comuns. O projeto de segurança de aplicativos da web aberto diz que o XSS armazenado é / foi a falha de segurança de aplicativo mais perigosa em 2010. Ele fornece maneiras para os proprietários de sites tentarem testar seu site para essas vulnerabilidades usando seus testes, por exemplo, aqui .