This site is the archived OWASP Foundation Wiki and is no longer accepting Account Requests.
To view the new OWASP Foundation website, please visit https://owasp.org
Difference between revisions of "OWASP Serverless Goat"
m (Minor edit) (Tag: Visual edit) |
(Minor edits) (Tag: Visual edit) |
||
Line 5: | Line 5: | ||
== Introduction== | == Introduction== | ||
− | OWASP ServerlessGoat is a deliberately insecure realistic AWS Lambda serverless application, maintained by OWASP. You can install WebGoat, learn about the vulnerabilities, how to exploit them, and how to remediate each issue. The project also includes documentation explaining the issues and how they should be remediated with best-practices. | + | OWASP ServerlessGoat is a deliberately insecure realistic AWS Lambda serverless application, maintained by OWASP. |
+ | |||
+ | You can install WebGoat, learn about the vulnerabilities, how to exploit them, and how to remediate each issue. The project also includes documentation explaining the issues and how they should be remediated with best-practices. | ||
As serverless adoption is expected to continue growing and reach new audiences, we see the importance of education on topics such as how to build robust, secure and reliable AWS Lambda serverless applications. This project will expose developers and security practitioners to basic serverless security concepts, risks, attacks and mitigation best-practices. | As serverless adoption is expected to continue growing and reach new audiences, we see the importance of education on topics such as how to build robust, secure and reliable AWS Lambda serverless applications. This project will expose developers and security practitioners to basic serverless security concepts, risks, attacks and mitigation best-practices. | ||
− | + | OWASP ServerlessGoat is packaged as an AWS SAM application that's available for deployment through the [https://aws.amazon.com/serverless/serverlessrepo/ AWS Serverless Application Repository] - this provides three important benefits: | |
− | * | + | * A single click installation process. No compilation, building or packaging required |
− | * | + | * The application uses default serverless application repository permissions (SAM policy templates), making it more realistic |
− | + | * The installation doesn't create custom IAM roles or resource policies on the account in which it is deployed in | |
− | * | ||
− | + | == Disclaimer == | |
− | + | OWASP does not take responsibility for the way in which any one uses the ServerlessGoat application. OWASP made the purposes of the application clear and it should not be used maliciously. We have given warnings and taken measures to prevent users from installing ServerlessGoat on production accounts. | |
− | |||
== Details== | == Details== | ||
Line 23: | Line 23: | ||
The vulnerabilities that are included are: | The vulnerabilities that are included are: | ||
− | * Event-data | + | * Event-data injection (SAS-01) |
− | + | * Insecure Serverless Deployment Configuration (SAS-03) | |
− | * Insecure Serverless Deployment Configuration | + | * Over-privileged function permissions & roles (SAS-04) |
− | * Over-privileged function permissions & roles | + | * Inadequate function monitoring and logging (SAS-05) |
− | * Inadequate function monitoring and logging (SAS-05 | + | * Insecure 3rd Party Dependencies (SAS-06) |
− | * Insecure 3rd Party Dependencies (SAS-06) | + | * Application layer Denial of Service (SAS-08) |
− | * Application layer Denial of Service (SAS-08) | + | * Improper exception handling and verbose error messages (SAS-10) |
− | * | + | * Other undisclosed *critical* issues, as a bonus! |
==Licensing== | ==Licensing== | ||
Line 53: | Line 53: | ||
== Project Sponsors == | == Project Sponsors == | ||
− | The project was initially developed by PureSec: | + | The project was initially developed by Ory Segal & Yuri Shapira @ [https://www.puresec.io/ PureSec]: |
[[File:PureSec-Logo.png|frameless|link=https://www.puresec.io/]] | [[File:PureSec-Logo.png|frameless|link=https://www.puresec.io/]] | ||
Line 59: | Line 59: | ||
== Cheat Sheet == | == Cheat Sheet == | ||
− | + | You can find a full walkthrough (with spoilers of course) in the [https://github.com/OWASP/Serverless-Goat/blob/master/LESSONS.md LESSONS.md] file in the Git repo | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
==Getting Involved== | ==Getting Involved== |
Revision as of 12:55, 29 December 2018
IntroductionOWASP ServerlessGoat is a deliberately insecure realistic AWS Lambda serverless application, maintained by OWASP. You can install WebGoat, learn about the vulnerabilities, how to exploit them, and how to remediate each issue. The project also includes documentation explaining the issues and how they should be remediated with best-practices. As serverless adoption is expected to continue growing and reach new audiences, we see the importance of education on topics such as how to build robust, secure and reliable AWS Lambda serverless applications. This project will expose developers and security practitioners to basic serverless security concepts, risks, attacks and mitigation best-practices. OWASP ServerlessGoat is packaged as an AWS SAM application that's available for deployment through the AWS Serverless Application Repository - this provides three important benefits:
DisclaimerOWASP does not take responsibility for the way in which any one uses the ServerlessGoat application. OWASP made the purposes of the application clear and it should not be used maliciously. We have given warnings and taken measures to prevent users from installing ServerlessGoat on production accounts. DetailsThe application is a service which receives a URL to a Word document (with a .doc extension - Office 97-2004), and will reply with an HTML page containing the extracted text. The vulnerabilities that are included are:
LicensingThe OWASP ServerlessGoat project is free for use. You can redistribute it and/or modify it under the terms of the link GNU Affero General Public License 3.0 as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. DeploymentServerlessGoat is a simple AWS Lambda application, which serves as a MS-Word .doc file to plain text converter service. It receives a URL to a .doc file as input, and will return the text inside the document back to the API caller. The application is packaged and published for deployment through the AWS Serverless Application Repository. Steps for deployment:
Roadmap
Project SponsorsThe project was initially developed by Ory Segal & Yuri Shapira @ PureSec: Cheat SheetYou can find a full walkthrough (with spoilers of course) in the LESSONS.md file in the Git repo Getting InvolvedYou do not have to be a security expert or a programmer to contribute. Contact the Project Leader(s) to get involved, we welcome any type of suggestions and comments. |
Project ResourcesDeployment via the AWS Serverless App Repository Project LeaderProject Mailing ListTBD Github RepoClassifications |