o que é XSS (cross site scripting)?
Cross site scripting é um tipo de vulnerabilidade de segurança comumente encontrada em aplicativos da web. Os ataques XSS permitem que os invasores injetem scripts do lado do cliente em páginas da Web visualizadas por outros usuários. Uma vulnerabilidade de script entre sites pode ser explorada por invasores para contornar os controles de acesso, como a política de origem única.
Ninguém revelará sua metodologia para encontrar bugs, porque se todos concordarem, seguiremos as instruções exatas para encontrar bugs.
Então, com o tempo, a metodologia se tornará completamente inútil.
Portanto, compartilharei o conceito básico de pesquisa XSS em vez de dizer as etapas exatas.
Vamos começar nossa discussão com o conceito de XSS.
O que fazemos para a pesquisa XSS?
1. Estamos tentando encontrar um parâmetro (baseado em get ou post-based)
2. Filtre os parâmetros cujo valor é refletido na página.
3. Em seguida, testamos uma carga xss simples, ou seja, <script>alert(0)</script>
4. Se o valor do parâmetro é reflexivo, mas você não pode executar uma carga xss simples devido ao WAF (Web Application Firewall)
Então você tenta ignorar o WAF,
Por exemplo, se a função alert() for uma palavra-chave bloqueada, e se tentarmos executar esta carga útil:
<script>confirm(1)</script>
Mas e se a função confirm() também for bloqueada pelo WAF,
então pode tentar usar esta carga útil:
<script>prompt(1)</script>
Às vezes, substituindo <script> por <ScRiPt> ou <SCRIPT> ou qualquer outra tag de script em letras maiúsculas e minúsculas
Podemos tentar ignorar WAF, WAF é um tema muito amplo, vamos discuti-lo em outra ocasião.
Então, qual você acha que é o passo mais importante?
Isso mesmo, é a busca de parâmetros!
Lembre-se, mais um parâmetro == Alta probabilidade de obter XSS válido
Se você estiver usando apenas o alvo para procurar parâmetros, tudo bem, mas não ótimo.
Se você conseguir encontrar algum parâmetro oculto, há uma grande chance de encontrar um xss funcionando.
Existem alguns casos em que às vezes os desenvolvedores nem mesmo estão cientes de algumas das configurações que podem ser valiosas para os hackers
. A conclusão que quero tirar desta postagem é que é importante encontrar a configuração oculta, bem, agora você pode estar perguntando, como podemos encontrar as opções ocultas?
Resposta: waybackurls por Tomnomnom
Instalar: https://github.com/tomnomnom/waybackurls
Uso: cat domains.txt | waybackurls > urls.txt
Algumas dicas de bônus
==========
1. DOM XSS é muito raro e, portanto, difícil de encontrar
2. XSS refletido é fácil de encontrar
3. XSS armazenado paga bem, mas é um pouco mais difícil de encontrar
4. Se você de alguma forma conseguiu encontrar Self XSS (sem recompensa para Self XSS) , tente vinculá-lo usando CSRF ou CORS nsecure
5. Você sabia que 30% dos hackers tentaram encontrar o Blind XSS?
6. A vulnerabilidade de upload ilimitado de arquivos também pode levar ao XSS