
CSPTPlayground is an open-source playground to find and exploit Client-Side Path Traversal (CSPT).
Bem-vindo ao CSPT Playground, um aplicativo que oferece a oportunidade de aprender, descobrir e explorar o Path Traversal no Lado do Cliente (CSPT).
O Path Traversal no Lado do Cliente (CSPT) é uma vulnerabilidade que permite a um atacante manipular os caminhos de arquivo usados por uma aplicação do lado do cliente. Isso pode levar a diversas vulnerabilidades: incluindo Cross-Site Scripting, vazamento de dados sensíveis, Cross-Site Request Forgery e muitas outras.
Este aplicativo é um playground especificamente projetado para demonstrar e explorar vulnerabilidades de Path Traversal no Lado do Cliente. Ele fornece uma plataforma para experimentar com múltiplos exploits, como CSPT2CSRF (Path Traversal no Lado do Cliente para Cross-Site Request Forgery) e CSPT2XSS (Path Traversal no Lado do Cliente para Cross-Site Scripting).
Vários gadgets e sinks foram implementados neste aplicativo para demonstrar os riscos potenciais e as consequências do CSPT. Outras fontes, como store CSPT ou outros impactos, ainda não foram cobertas, como poluição de protótipo, DOM clobbering, etc...
Se você ainda é novo no CSPT, não deixe de ler nossa postagem no blog e whitepaper.
Espero que você goste, boa exploração!
Empacotamos o backend, o frontend e o banco de dados com docker. Se você tiver o docker instalado, pode executá-lo com:
docker compose up
A aplicação React está acessível em http://localhost:3000 e a API Express em http://localhost:8000
Você pode alterar o host e a porta do backend com os argumentos docker REACT_APP_BACKEND_HOST e REACT_APP_BACKEND_PORT.
docker-compose build --build-arg REACT_APP_BACKEND_HOST=<hostname>
docker compose up
Você pode executar os serviços sem docker. O desenvolvimento foi feito com node v20.9.0.
docker run --name mongodb -d -p 27017:27017 mongodb/mongodb-community-server
cd ./backend/app/ && npm install && npm start
cd ./frontend/app/ && npm install && npm start
O CSPT Playground prospera com as contribuições da comunidade. Seja você um desenvolvedor, pesquisador, designer ou caçador de bugs, sua experiência é inestimável para nós. Recebemos relatórios de bugs, feedback e pull requests. Sua participação nos ajuda a continuar melhorando o aplicativo, tornando-o uma ferramenta mais forte para a comunidade.
As interações são melhor realizadas através do rastreador de issues do GitHub, mas você também pode nos contatar nas redes sociais (@Doyensec). Esperamos ouvir de você!
Um agradecimento especial aos nossos contribuidores. Sua dedicação e comprometimento foram fundamentais para fazer desta extensão o que ela é hoje.
Atuais:
Este projeto foi feito com o apoio de Doyensec.