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 DevSlop Project"

From OWASP
Jump to: navigation, search
(Not even first draft version yet. Saving just in case!)
(Not quite a finished first draft)
Line 10: Line 10:
  
 
==Description==
 
==Description==
DevSlop's '''Pixi,''' the first of many entries to come for this OWASP project, is currently publicly available for your hacking and learning pleasure. Pixi is available in a docker container and consists of vulnerable web services, which will hopefully teach users how to test APIs for security and how to write better APIs in the future.[[File:Pixi Image.png|alt= Pixi|thumb|96x96px|Pixi]]
+
DevSlop's '''Pixi,''' the first of many entries to come for this OWASP project, is currently publicly available for your hacking and learning pleasure. Pixi is available in a docker container and consists of vulnerable web services, which will hopefully teach users how to test APIs for security and how to write better APIs in the future. It is intentionally vulnerable, with the hopes that users can learn to test on it and also learn how to create better APIs in the future.[[File:Pixi logo.png|alt= Pixi Logo|thumb|145x145px|Pixi Logo]]
 
 
To get Pixi is simple!
 
 
 
Download Pixi here: <nowiki>https://github.com/thedeadrobots/pixi</nowiki>
 
 
 
Install Docker and start it.
 
 
 
Then type the following at your command prompt:
 
 
 
> git clone <nowiki>https://github.com/thedeadrobots/pixi.git</nowiki>
 
 
 
> docker-compose up
 
 
 
You're all set!  [[File:Pixi logo.png|alt= Pixi Logo|thumb|188x188px|Pixi Logo]]
 
  
 
As more pieces of DevSlop are released they will be introduced here.
 
As more pieces of DevSlop are released they will be introduced here.
 
<span style="color:#ff0000">
 
This is where you need to add your more robust project description. A project description should outline the purpose of the project, how it is used, and the value it provides to application security. Ideally, project descriptions should be written in such a way that there is no question what value the project provides to the software security community. This section will be seen and used in various places within the Projects Portal. Poorly written project descriptions therefore detract from a project’s visibility, so project leaders should ensure that the description is meaningful. 
 
</span>
 
 
The Tool Project Template is simply a sample project that was developed for instructional purposes that can be used to create default project pages for a Tool project.  After copying this template to your new project, all you have to do is follow the instructions in red, replace the sample text with text suited for your project, and then delete the sections in red.  Doing so should make it clearer to both consumers of this project, as well as OWASP reviewers who are trying to determine if the project can be promoted to the next category.  The information requested is also intended to help Project Leaders think about the roadmap and feature priorities, and give guidance to the reviews as a result of that effort.
 
 
Creating a new set of project pages from scratch can be a challenging task.  By providing a sample layout, with instructional text and examples, the OWASP Tool Project Template makes it easier for Project Leaders to create effective security projects and hence helps promote security.
 
 
Contextual custom dictionary builder with character substitution and word variations for pen-testers
 
  
 
==Licensing==
 
==Licensing==
<span style="color:#ff0000">
+
This program is free software: you can redistribute it and/or modify it under the terms of the [http://www.gnu.org/licenses/agpl-3.0.html link GNU Affero General Public License 3.0] as published by the Free Software Foundation.  OWASP DevSlop and any contributions are Copyright &copy; by Nicole Becher & Tanya Janca 2017.   
A project must be licensed under a community friendly or open source license.  For more information on OWASP recommended licenses, please see [https://www.owasp.org/index.php/OWASP_Licenses OWASP Licenses]. While OWASP does not promote any particular license over another, the vast majority of projects have chosen a Creative Commons license variant for documentation projects, or a GNU General Public License variant for tools and code projects.  This example assumes that you want to use the AGPL 3.0 license.
 
</span>
 
 
 
This program is free software: you can redistribute it and/or modify it under the terms of the [http://www.gnu.org/licenses/agpl-3.0.html 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.  OWASP XXX and any contributions are Copyright &copy; by {the Project Leader(s) or OWASP} {Year(s)}.   
 
  
 
| valign="top" style="padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;" |
 
| valign="top" style="padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;" |
  
 
== Project Resources ==
 
== Project Resources ==
<span style="color:#ff0000">
 
This is where you can link to the key locations for project files, including setup programs, the source code repository, online documentation, a Wiki Home Page, threaded discussions about the project, and Issue Tracking system, etc.
 
</span>
 
 
 
[https://github.com/SamanthaGroves Installation Package]
 
[https://github.com/SamanthaGroves Installation Package]
  
[https://github.com/SamanthaGroves Source Code]
+
[https://github.com/thedeadrobots/pixi.git Source Code]
  
[https://github.com/SamanthaGroves What's New (Revision History)]
+
[https://github.com/thedeadrobots/pixi.git What's New (Revision History)]
  
[https://github.com/SamanthaGroves Documentation]
+
Documentation
  
[https://github.com/SamanthaGroves Wiki Home Page]
+
[[OWASP DevSlop Project|Wiki Home Page]]
  
[https://github.com/SamanthaGroves Issue Tracker]
+
Issue Tracker
  
[https://github.com/SamanthaGroves Slide Presentation]
+
[https://www.slideshare.net/TanyaJanca/api-and-web-service-hacking-with-pixi-part-of-owasp-devslop Slide Presentation]
  
[https://github.com/SamanthaGroves Video]
+
[https://www.youtube.com/watch?v=td-2rN4PgRw&feature=youtu.be Video]
  
 
== Project Leader ==
 
== Project Leader ==
<span style="color:#ff0000">
+
[[User:Nicolebecher|Nicole Becher]] [https://twitter.com/thedeadrobots Twitter]
A project leader is the individual who decides to lead the project throughout its lifecycle. The project leader is responsible for communicating the project’s progress to the OWASP Foundation, and he/she is ultimately responsible for the project’s deliverables. The project leader must provide OWASP with his/her real name and contact e-mail address for his/her project application to be accepted, as OWASP prides itself on the openness of its products, operations, and members.
 
</span>
 
  
Project leader's name
+
[[User:Tanyajanca|Tanya Janca]] [https://twitter.com/shehackspurple Twitter]
  
 
== Related Projects ==
 
== Related Projects ==
<span style="color:#ff0000">
+
* [[OWASP Juice Shop Project]]
This is where you can link to other OWASP Projects that are similar to yours.
+
* [[OWASP WebGoat Project]]
</span>
 
* [[OWASP_Code_Project_Template]]
 
* [[OWASP_Documentation_Project_Template]]
 
  
 
==Classifications==
 
==Classifications==
Line 99: Line 62:
  
 
== News and Events ==
 
== News and Events ==
<span style="color:#ff0000">
+
* [19 Sept 2017] DevSlop 3 hour workshop presented as part of the [[AppSecUSA 2017 Developer Summit|AppSec USA 2017 Developer Summit]].
This is where you can provide project updates, links to any events like conference presentations, Project Leader interviews, case studies on successful project implementations, and articles written about your project.
+
* [5 Sept 2017] DevSlop project team interviewed on [https://appsecpodcast.org/2017/09/05/hacking-apis-and-web-services-with-devslop-s02e13/ AppSec Podcast]
</span>
+
* [12 July 2017] [https://www.youtube.com/watch?v=td-2rN4PgRw&feature=youtu.be DevSlop Project announced at Microsoft Tech Days in NYC.]
* [12 Feb 2013] Support for Spanish is now available with this release.
 
* [11 Jan 2014] The 1.0 stable version has been released! Thanks everyone for your feedback and code fixes that made this happen!
 
* [18 Dec 2013] 1.0 Release Candidate is available for download. This release provides final bug fixes and product stabilization. Any feedback (good or bad) in the next few weeks would be greatly appreciated.
 
* [20 Nov 2013] 1.0 Beta 2 Release is available for download. This release offers several bug fixes, a few performance improvements, and addressed all outstanding issues from a security audit of the code.
 
* [30 Sep 2013] 1.0 Beta 1 Release is available for download.  This release offers the first version with all of the functionality for a minimum viable product.   
 
  
 
|}
 
|}
Line 112: Line 70:
 
=FAQs=
 
=FAQs=
  
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
+
'''Where can I get Pixi?'''  [[File:Pixi Image.png|alt= Pixi|thumb|96x96px|'''Pixi''']]
<span style="color:#ff0000">
+
 
Many projects have "Frequently Asked Questions" documents or pages. However, the point of such a document is not the questions. ''The point of a document like this are the '''answers'''''. The document contains the answers that people would otherwise find themselves giving over and over again. The idea is that rather than laboriously compose and post the same answers repeatedly, people can refer to this page with pre-prepared answers. Use this space to communicate your projects 'Frequent Answers.'
+
To get Pixi is simple!
</span>
+
 
 +
Download Pixi here: <nowiki>https://github.com/thedeadrobots/pixi</nowiki>
 +
 
 +
Install Docker and start it.
 +
 
 +
Type the following at your command prompt:
 +
 
 +
> git clone https://github.com/thedeadrobots/pixi.git <enter>
 +
 
 +
> docker-compose up <enter>
 +
 
 +
You're all set!   
 +
 
 +
'''I have a great idea for new DevSlop additions, how do I tell you(s)?'''
 +
 
 +
Email us!  firstname.lastname@owasp.org (Nicole Becher and Tanya Janca). You can do the math.  :) 
 +
 
 +
'''How can I follow updates on the project?'''
 +
 
 +
[https://twitter.com/thedeadrobots Nicole Becher on Twitter] 
 +
 
 +
[https://twitter.com/shehackspurple Tanya Janca on Twitter]
  
 
==How can I participate in your project?==
 
==How can I participate in your project?==
Line 121: Line 100:
  
 
==If I am not a programmer can I participate in your project?==
 
==If I am not a programmer can I participate in your project?==
Yes, you can certainly participate in the project if you are not a programmer or technical. The project needs different skills and expertise and different times during its development. Currently, we are looking for researchers, writers, graphic designers, and a project administrator.  See the Road Map and Getting Involved tab for more details.
+
Yes, you can certainly participate in the project if you are not a programmer or technical. The project needs different skills and expertise and different times during its development. Currently, we are looking for people to give us ideas for new components and problems to add, as well as people to help code them.  See the Road Map and Getting Involved tab for more details.
  
 
= Acknowledgements =
 
= Acknowledgements =
 
==Contributors==
 
==Contributors==
  
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
+
The OWASP DevSlop Project was created by the project leaders, Nicole and TanyaContributors include: Mordecai Kraushar.  
<span style="color:#ff0000">
 
The success of OWASP is due to a community of enthusiasts and contributors that work to make our projects great. This is also true for the success of your project.
 
Be sure to give credit where credit is due, no matter how small! This should be a brief list of the most amazing people involved in your project.
 
Be sure to provide a link to a complete list of all the amazing people in your project's community as well.
 
</span>
 
 
 
The OWASP Tool Project Template is developed by a worldwide team of volunteers. A live update of project [https://github.com/OWASP/Security-Principles/graphs/contributors contributors is found here].  
 
  
 
The first contributors to the project were:
 
The first contributors to the project were:
  
* [https://www.owasp.org/index.php/User:Clerkendweller Colin Watson] who created the OWASP Cornucopia project that the template was derived from
+
* Nicole Becher
* [https://www.owasp.org/index.php/User:Chuck_Cooper Chuck Cooper] who edited the template to convert it from a documentation project to a Tool Project Template
+
* Tanya Janca
* '''YOUR NAME BELONGS HERE AND YOU SHOULD REMOVE THE PRIOR 3 NAMES'''
 
  
 
= Road Map and Getting Involved =
 
= Road Map and Getting Involved =
  
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
+
==Roadmap==
<span style="color:#ff0000">
+
As of <strong>September 2017, the highest priorities for the next 12 months</strong> are:
A project roadmap is the envisioned plan for the project. The purpose of the roadmap is to help others understand where the project is going as well as areas that volunteers may contribute. It gives the community a chance to understand the context and the vision for the goal of the project. Additionally, if a project becomes inactive, or if the project is abandoned, a roadmap can help ensure a project can be adopted and continued under new leadership.
 
Roadmaps vary in detail from a broad outline to a fully detailed project charter. Generally speaking, projects with detailed roadmaps have tended to develop into successful projects. Some details that leaders may consider placing in the roadmap include: envisioned milestones, planned feature enhancements, essential conditions, project assumptions, development timelines, etc. You are required to have at least 4 milestones for every year the project is active.
 
</span>
 
  
==Roadmap==
+
Each DevSlop component will have it's own roadmap.
As of <strong>November, 2013, the highest priorities for the next 6 months</strong> are:
+
 
 +
'''DevSlop Project Roadmap:'''
 +
* Finish completing this Wiki page and get it reviewed/approved
 +
* Move all Pixi code into OWASP GitHub
 +
* Promote Project (interviews, speaking engagements, articles, etc)
 +
* Document Project
 +
* Create Issue Tracker
 +
* Follow Pixi Roadmap
 +
* Accept ideas for future components
 +
* Create HTTP 2.0 app as Component #2
 +
* Create more DevOps apps
 
<strong>
 
<strong>
* Complete the first draft of the Tool Project Template
 
* Get other people to review the Tool Project Template and provide feedback
 
* Incorporate feedback into changes in the Tool Project Template
 
* Finalize the Tool Project template and have it reviewed to be promoted from an Incubator Project to a Lab Project
 
</strong>
 
  
Subsequent Releases will add
+
'''Pixi Roadmap (First DevSlop Component):'''
 +
* Document all the vulnerabilities
 +
* Multi language support
 +
* Finish CTF mode
 
<strong>
 
<strong>
* Internationalization Support
+
==Getting Involved==
* Additional Unit Tests
+
Involvement in the development and promotion of '''DevSlop''' is actively encouraged!  You do not have to be a security expert or a programmer to contribute.  Some of the ways you can help are as follows:
* Automated Regression tests
 
</strong>
 
  
==Getting Involved==
+
=== Ideas ===
Involvement in the development and promotion of <strong>Tool Project Template</strong> is actively encouraged!
+
We need to know where to go next with this project. Have you seen an IT tragedy recently?  Tell us about it!  The more modern and 'different' the better!
You do not have to be a security expert or a programmer to contribute.
 
Some of the ways you can help are as follows:
 
  
 
===Coding===
 
===Coding===
We could implement some of the later items on the roadmap sooner if someone wanted to help out with unit or automated regression tests
+
We could implement some of the later items on the roadmap sooner if someone wanted to help out with coding it.  Someone like you.
 
===Localization===
 
===Localization===
Are you fluent in another language? Can you help translate the text strings in the <strong>Tool Project Template</strong> into that language?
+
Are you fluent in another language? Can you help translate the text strings in the <strong>DevSlop Project</strong> into that language? Pretty please?
===Testing===
 
Do you have a flair for finding bugs in software? We want to product a high quality product, so any help with Quality Assurance would be greatly appreciated. Let us know if you can offer your help.
 
 
===Feedback===
 
===Feedback===
Please use the [https://lists.owasp.org/mailman/listinfo/OWASP_Tool_Project_Template Tool Project Template project mailing list] for feedback about:
+
Please email us to give us feedback: firstname.lastname@owasp.org (Nicole Becher and Tanya Janca)
 
<ul>
 
<ul>
 
<li>What do like?</li>
 
<li>What do like?</li>
Line 185: Line 155:
  
 
=Minimum Viable Product=
 
=Minimum Viable Product=
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
+
The DevSlop Project must provide documentation (in form of videos, blog posts, interviews, within the app, or anything else) to teach users how to use itWithout any information it's hard to know if the users are learning all of the lessons that they need to. It would also be ideal if Pixi and other future components were translated into different languages.
<span style="color:#ff0000">
 
This page is where you should indicate what is the minimum set of functionality that is required to make this a useful product that addresses your core security concern.
 
Defining this information helps the project leader to think about what is the critical functionality that a user needs for this project to be useful, thereby helping determine what the priorities should be on the roadmapAnd it also helps reviewers who are evaluating the project to determine if the functionality sufficiently provides the critical functionality to determine if the project should be promoted to the next project category. 
 
</span>
 
 
 
The Tool Project Template must specify the minimum set of tabs a project should have, provide some an example layout on each tab, provide instructional text on how a project leader should modify the tab, and give some example text that illustrates how to create an actual project.
 
 
 
It would also be ideal if the sample text was translated into different languages.
 
  
 
=Project About=
 
=Project About=
Line 206: Line 168:
  
 
You'd edit the bold bit.
 
You'd edit the bold bit.
 
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
 
<span style="color:#ff0000">
 
This page is where you need to place your legacy project template page if your project was created before October 2013. To edit this page you will need to edit your project information template. You can typically find this page by following this address and substituting your project name where it says "OWASP_Example_Project". When in doubt, ask the OWASP Projects Manager.
 
Example template page: https://www.owasp.org/index.php/Projects/OWASP_Example_Project
 
</span>
 
 
{{:Projects/OWASP_Example_Project_About_Page}}
 
 
 
__NOTOC__ <headertabs></headertabs>  
 
__NOTOC__ <headertabs></headertabs>  
  

Revision as of 20:42, 9 September 2017

OWASP Project Header.jpg

OWASP DevSlop Tool Project

The hacker jungle gym built on DevOps disasters.
 DevSlop Project Logo
DevSlop Project Logo
Modern applications often use APIs and other micro services to deliver faster and better products and services. However, there are currently few training grounds for security testing in such areas. In comes DevSlop, OWASP's newest project, a collection of DevOps security catastrophes made as a vulnerable testing and proving ground for developers and security testers alike.

Description

DevSlop's Pixi, the first of many entries to come for this OWASP project, is currently publicly available for your hacking and learning pleasure. Pixi is available in a docker container and consists of vulnerable web services, which will hopefully teach users how to test APIs for security and how to write better APIs in the future. It is intentionally vulnerable, with the hopes that users can learn to test on it and also learn how to create better APIs in the future.
 Pixi Logo
Pixi Logo

As more pieces of DevSlop are released they will be introduced here.

Licensing

This program is free software: 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. OWASP DevSlop and any contributions are Copyright © by Nicole Becher & Tanya Janca 2017.

Project Resources

Installation Package

Source Code

What's New (Revision History)

Documentation

Wiki Home Page

Issue Tracker

Slide Presentation

Video

Project Leader

Nicole Becher Twitter

Tanya Janca Twitter

Related Projects

Classifications

Project Type Files TOOL.jpg
Incubator Project Owasp-builders-small.png
Owasp-defenders-small.png
Affero General Public License 3.0

News and Events

Where can I get Pixi?
 Pixi
Pixi

To get Pixi is simple!

Download Pixi here: https://github.com/thedeadrobots/pixi

Install Docker and start it.

Type the following at your command prompt:

> git clone https://github.com/thedeadrobots/pixi.git <enter>

> docker-compose up <enter>

You're all set!

I have a great idea for new DevSlop additions, how do I tell you(s)?

Email us! [email protected] (Nicole Becher and Tanya Janca). You can do the math.  :)

How can I follow updates on the project?

Nicole Becher on Twitter

Tanya Janca on Twitter

How can I participate in your project?

All you have to do is make the Project Leader's aware of your available time to contribute to the project. It is also important to let the Leader's know how you would like to contribute and pitch in to help the project meet it's goals and milestones. There are many different ways you can contribute to an OWASP Project, but communication with the leads is key.

If I am not a programmer can I participate in your project?

Yes, you can certainly participate in the project if you are not a programmer or technical. The project needs different skills and expertise and different times during its development. Currently, we are looking for people to give us ideas for new components and problems to add, as well as people to help code them. See the Road Map and Getting Involved tab for more details.

Contributors

The OWASP DevSlop Project was created by the project leaders, Nicole and Tanya. Contributors include: Mordecai Kraushar.

The first contributors to the project were:

  • Nicole Becher
  • Tanya Janca

Roadmap

As of September 2017, the highest priorities for the next 12 months are:

Each DevSlop component will have it's own roadmap.

DevSlop Project Roadmap:

  • Finish completing this Wiki page and get it reviewed/approved
  • Move all Pixi code into OWASP GitHub
  • Promote Project (interviews, speaking engagements, articles, etc)
  • Document Project
  • Create Issue Tracker
  • Follow Pixi Roadmap
  • Accept ideas for future components
  • Create HTTP 2.0 app as Component #2
  • Create more DevOps apps

Pixi Roadmap (First DevSlop Component):

  • Document all the vulnerabilities
  • Multi language support
  • Finish CTF mode

Getting Involved

Involvement in the development and promotion of DevSlop is actively encouraged! You do not have to be a security expert or a programmer to contribute. Some of the ways you can help are as follows:

Ideas

We need to know where to go next with this project. Have you seen an IT tragedy recently? Tell us about it! The more modern and 'different' the better!

Coding

We could implement some of the later items on the roadmap sooner if someone wanted to help out with coding it. Someone like you.

Localization

Are you fluent in another language? Can you help translate the text strings in the DevSlop Project into that language? Pretty please?

Feedback

Please email us to give us feedback: [email protected] (Nicole Becher and Tanya Janca)

  • What do like?
  • What don't you like?
  • What features would you like to see prioritized on the roadmap?

The DevSlop Project must provide documentation (in form of videos, blog posts, interviews, within the app, or anything else) to teach users how to use it. Without any information it's hard to know if the users are learning all of the lessons that they need to. It would also be ideal if Pixi and other future components were translated into different languages.

Addtional Instructions for making changes:

The About 'tab' on that page is done with a MediaWiki template. If you log into the wiki page for your project and click the "Edit" button/link/tab in the top-right between 'Read' and 'View History', you'll see the edit page for the main body of your project page.

If you scroll down below the form to edit that page (below the "Save page", "Show preview", "Show changes" buttons, you'll see some text with a triangle in front of it reading "Templates used on this page:" A list will expand if you click on the triangle/text to show the templates that make up this page. The one you want is the "Projects/OWASP Example Project About Page" - click the (edit) next to this to edit that template. The direct link is: https://www.owasp.org/index.php?title=Projects/OWASP_Example_Project_About_Page&action=edit

The template takes 'input' that are key/value pairs where you'll need to edit the stuff after the equals (=) like: project_name =Place your project name here.

You'd edit the bold bit.