DockerSecurityPlayground – A Microservices-based Framework For The Study Of Network Security And Penetration Test Techniques

Docker Security Playground is an software that permits you to:

  • Create community and community safety eventualities, to be able to perceive community protocols,
    laws, and safety problems by way of putting in DSP for your PC.
  • Learn penetration checking out ^( tactics by way of simulating vulnerability ^( labs eventualities
  • Manage a collection of docker-compose venture . Main function of DSP is to be told in penetration checking out ^( and community safety, however its flexibility lets in you the introduction, graphic modifying and managment run / prevent of your entire docker-compose labs. For additional info have a look at the Labs Managment ^( web page. ^(

  • During the set up set github listing param for your forked repository.
  • Now create your labs and percentage it!
  • It is essential that each one photographs that you just use must be to be had to different customers, so:

    • You can post on docker hub so different customers can pull your photographs to be able to use your labs.
    • You can give dockerfiles throughout the .docker-photographs listing, so customers can use to construct your photographs and use your repo.

    If you want a “personal approach” to percentage labs you must percentage the repository in alternative ways, at present time there’s no beef up to percentage personal repositories.
    In DSP you’ll organize a couple of consumer repositories (Repositories tab)


    • Nodejs (v 7 or later)
    • git
    • docker
    • docker-compose
    • compiler gear (g++, c, c++)

    Install must haves and run:

    npm set up

    Troubleshooting throughout set up
    If you may have error relating to node-pty module, attempt to:

    • Install construct-necessities : (In Ubuntu: apt set up -y construct-necessities)
    • Use nodejs LTS (observe-pty has some isseus, as proven right here ^(

    Update the applying:
    When you replace the applying it is very important replace the npm programs (The software makes use of mydockerjs, a npm docker API that I’m growing throughout DSP construction: ^(

    npm run replace


    npm get started  

    To get started the applying. This will release a server listening on 8080 (or every other when you set have setted ENV variable in index.js record) port of your localhost.
    Go to you favorite browser and digit localhost:8080. You’ll be redirected on set up web page, set parameters and click on set up.

    For documentation about DSP utilization cross to Wiki web page:

    • Main Page: ^(
    • User Guide ^(
    • Docker Wrapper ^( Image: ^(

    It is a bit old-fashioned, I can replace it as imaginable !

    Docker Wrapper Image
    DSP implements a label conference known as DockerWrapperImage that permits you to create photographs that disclose motion to execute when a lab is working. Look on the document ^(

    Error Debug
    MacOS ECONNRESET error:

    throw er; // Unhandled 'error' match

    Error: learn ECONNRESET
    at _errnoException (util.js:992:11)
    at TCP.onread (web.js:618:25)

    On Mac it kind of feels that there’s some drawback with some node bundle, so to be able to resolve this run:

    MacE-book-Pro:DockerSecurityPlayground gaetanoperrone$ npm set up [email protected] --save-dev --save-actual

    Other data right here: ^(


    1. Fork it!
    2. Create your characteristic department: git checkout -b my-new-characteristic
    3. Commit your adjustments: git dedicate -am 'Add some characteristic'
    4. Push to the department: git push foundation my-new-characteristic
    5. Submit a pull request, we will test

    Any Questions?
    Use the Issues ^( to be able to ask the whole lot you wish to have!.


    • DSP Vagrant Box utilized in Blackhat Session ^(
    • Blackhat situation in Gitlab ^(

    Relevant DSP Repositories

    • ^( : Official DSP Repository
    • ^( : DSP Template to create every other repository: fork it to begin developing your individual far flung atmosphere
    • ^( : Repository created for Network Security Course of Simon Pietro Romano in University of the Study in Naples, Federico II


    • Technical beef up: Gaetano Perrone, Francesco Caturano
    • Documentation beef up Gaetano Perrone, Francesco Caturano
    • Application design: Gaetano Perrone, Simon Pietro Romano
    • Application construction: Gaetano Perrone, Francesco Caturano
    • Docker wrapper symbol construction: Gaetano Perrone, Francesco Caturano

    Thanks to Giuseppe Criscuolo for the brand design

    Got to ^( to look al the model adjustments.

    Download DockerSecurityPlayground ^(