dockerscan: A Docker analysis & hacking tools
Project site | http://github.com/cr0hn/dockerscan |
Issues | https://github.com/cr0hn/dockerscan/issues/ |
Author | Daniel Garcia (cr0hn) / Roberto Munoz (robskye) |
Documentation | http://dockerscan.readthedocs.org |
Last Version | 1.0.0-Alpha-02 |
Python versions | 3.5 or above |
A Docker analysis tools
> python3.5 -m pip install -U pip
> python3.5 -m pip install dockerscan
Show options:
> dockerscan -h
Currently Docker Scan support these actions:
Scan: Scan a network trying to locate Docker Registries
Registry
- Delete: Delete remote image / tag
- Info: Show info from remote registry
- Push: Push an image (like Docker client)
- Upload: Upload a random file
Image
Analyze: Looking for sensitive information in a Docker image.
- Looking for passwords in environment vars.
- Try to find any URL / IP in the environment vars.
- Try to deduce the user used internally to run the software. This is not trivial. If the entry point is a .sh file. Read the file and try to find call to sudo-like: “sudo”, “gosu”, “sh -u”… And report the user found.
Extract: extract a docker image
Info: Get a image meta information
Modify:
- entrypoint: change the entrypoint in a docker
- trojanize: inject a reverser shell into a docker image
- user: change running user in a docker image
The purpose of Dockerscan is different. It's foccussed in the attack phase.
Although Dockescan has some functionalities to detect vulnerabilities in Docker images and Docker registries, the objective is the attack.
Documentation is still in progress... sorry!
For the moment we only have the slides presented at RootedCON Spain, the conference where Docker Scan was presented:
Or you can watch it in video format (recommended):
Also, you can watch a dockerscan usage demo:
Any collaboration is welcome!
There are many tasks to do. You can check the Issues and send us a Pull Request.
This project is distributed under BSD license