
une application serverless sacrément vulnérable

Damn Vulnerable Serverless Application (DVSA) est une application volontairement vulnérable qui vise à servir d’aide aux professionnels de la sécurité pour tester leurs compétences et leurs outils dans un environnement légal, à aider les développeurs à mieux comprendre les processus de sécurisation des applications serverless et à permettre aux étudiants comme aux enseignants d’apprendre la sécurité des applications serverless dans un environnement de classe contrôlé.
L’objectif de DVSA est de mettre en pratique certaines des vulnérabilités serverless les plus courantes, avec une interface simple et directe.
Veuillez noter que ce logiciel comporte des vulnérabilités documentées et non documentées. C’est volontaire. Nous vous encourageons à essayer de découvrir autant de problèmes que possible.
N’installez pas DVSA sur un compte de production
Nous déclinons toute responsabilité quant à la manière dont quiconque utilise cette application (DVSA). Nous avons clarifié les finalités de l’application et elle ne doit pas être utilisée de manière malveillante. Nous avons émis des avertissements et pris des mesures pour empêcher les utilisateurs d’installer DVSA sur des comptes de production.
Déployez DVSA depuis le AWS Serverless Application Repository
Une fois le déploiement terminé, cliquez sur 'View CloudFormation Stack'
Sous 'Outputs', vous trouverez l’URL de l’application (DVSA Website URL)
npm i node-gyp. Vous pouvez utiliser npm config set python /path/to/your/python2)$ ./dvsa.sh client-build$ ./dvsa.sh client-connect --stack <STACK_NAME>$ ./dvsa.sh client-update --stack/--bucket$ ./dvsa.sh client-update -h/--help pour plus d’options$ ./dvsa.sh client-start
backend/deployment/ et utiliser la fonction backend/deployment/dvsa_init.py qui s’exécute à la fin du déploiement pour effectuer les actions requises.$ ./dvsa.sh package-template (OPTIONNEL : -h/--help pour plus d’options)
Vous pouvez utiliser SAM Local pour démarrer les fonctions Lambda et les API
Vous pouvez également utiliser LocalStack
Remarque : Si vous souhaitez pointer votre client local vers votre backend local, exécutez $ ./dvsa.sh client-connect et REMPLACEZ l’endpoint de ServiceEndpoint par http://localhost:3000 (cela utilisera toujours les pools Cognito dans AWS).

DVSA envoie les reçus par e-mail. Vous pouvez utiliser la page Inbox intégrée à l’application pour recevoir les e-mails et obtenir les reçus. Chaque utilisateur se verra automatiquement attribuer une adresse e-mail provenant de 1secmail.com, qui sera automatiquement vérifiée. De vrais e-mails seront envoyés sur son compte et apparaîtront dans la page Inbox de l’application.
Si vous souhaitez que les utilisateurs reçoivent des e-mails sur leur véritable compte e-mail enregistré (par ex. Gmail) :
aws ses verify-email-identity --email-address <your_email>

Consultez LESSONS pour des informations sur le piratage de DVSA.
Consultez VIDEOS pour savoir comment déployer, utiliser et pirater DVSA.
OWASP Top 10 - Serverless Interpretation
Deep-Dive into Serverless Attacks - Series
OWASP Serverless Top 10 Project
Compte Twitter (piratable)
Canal Slack #project-sls-top-10
DVSA a été créé par Tal Melamed
Damn Vulnerable Serverless Application (DVSA) est un logiciel libre : vous pouvez le redistribuer et/ou le modifier selon les termes de la GNU General Public License telle que publiée par la Free Software Foundation, soit la version 3 de cette licence, soit (à votre choix) toute version ultérieure.
Damn Vulnerable Serverless Application (DVSA) est distribuée dans l’espoir qu’elle sera utile, mais SANS AUCUNE GARANTIE ; sans même la garantie implicite de QUALITÉ MARCHANDE ou d’ADAPTATION À UN USAGE PARTICULIER. Consultez la GNU General Public License pour plus de détails.
Vous devriez avoir reçu une copie de la GNU General Public License avec Damn Vulnerable Serverless Application (DVSA). Si ce n’est pas le cas, consultez http://www.gnu.org/licenses/.