parrotsec/security

Sponsored OSS

By ParrotSec

Updated 2 months ago

Official Parrot Security image pre-loaded with pentest tools

Image
Networking
Security
Operating systems
96

500K+

parrotsec/security repository overview

parrosec/security

This container includes a huge collection of tools that can be used via command line from inside a docker container.

Some tools with graphical interface were excluded for obvious reasons.

example usage:

docker run --rm -ti --network host -v $PWD/work:/work parrotsec/security

Read More

Official Documentation

General Usage Instructions and Examples

Launch a container:

docker run --name pcore-1 -ti parrotsec/security

NOTE: the pcore-1 name is arbitrary and can be customized

Stop the container:

docker stop pcore-1

Resume a previously-stopped container:

docker start pcore-1

Remove a container after use:

docker rm pcore-1

List all the instantiated containers:

docker ps -a

Start multiple containers:

on terminal 1 -> docker run --name pentest1 -ti parrotsec/security

on terminal 2 -> docker run --name pentest2 -ti parrotsec/security

on terminal 3 -> docker run --name msf-listener -ti parrotsec/metasploit

Remove all the containers:

docker rm $(docker ps -qa)

Start a container and automatically remove it on exit:

docker run --rm -ti parrotsec/security

Use Volumes to share files with the host:

It is a good practice to not keep persistent Docker containers, but to remove them on every use and make sure to save important files on a Docker volume.

The following command creates a work folder inside the current directory and mounts it in /work inside the container.

docker run --rm -ti -v $PWD/work:/work parrotsec/security

Use Volumes to share files across multiple containers:

on terminal 1 -> docker run --name pentest -ti -v $PWD/work:/work parrotsec/security

on terminal 2 -> docker run --rm --network host -v $PWD/work:/work -ti parrotsec/security

on terminal 3 -> docker run --rm -v $PWD/work:/work -ti parrotsec/metasploit

Open a port from the container to the host

Every docker container has its own network space connected to a virtual LAN.

All the traffic from within the docker container will be NATted by the host computer.

If you need to expose a port to other machines outside your local computer, use the following exaple:

docker run --rm -p 8080:80 -ti parrotsec/security

Note that the first port is the port that will be opened on your host, and the second one is the container port to bind to.

Here a reference usage of the -p flag:

-p : -p 8080:80

-p :/ -p 8080:80/tcp

-p

:: -p 192.168.1.30:8080:80 (in case of multiple adresses on host network)

Use network host instead of docker NAT

Every docker container has its own network space connected to a virtual LAN.

All the traffic from within the docker container will be NATted by the host computer.

If you need to make the docker container share the same networking space of the host machine, then use the --network host flag as shown below

docker run --rm --network host -ti parrotsec/security

NOTE 1: every port opened in the container will be opened on the host as well.

NOTE 2: you can perform packet sniffing on the host network.

NOTE 3: iptables rules applied inside the container will take effect on the host as well.

Tag summary

Content type

Image

Digest

sha256:2fe6606fe

Size

4.8 GB

Last updated

2 months ago

docker pull parrotsec/security

This week's pulls

Pulls:

583

Last week