move all seperate repos into one. - docker-images - Unnamed repository; edit this file 'description' to name the repository. (DIR) Log (DIR) Files (DIR) Refs (DIR) README --- (DIR) commit c142da92879d845d33d9f5e1235e6ca702b6bbe9 (HTM) Author: Jay Scott <me@jay.scot> Date: Sat, 5 Sep 2020 12:10:53 +0100 move all seperate repos into one. Diffstat: A README | 6 ++++++ A asterisk-warvox/Dockerfile | 14 ++++++++++++++ A asterisk-warvox/README | 32 +++++++++++++++++++++++++++++++ A asterisk-warvox/extensions.conf | 37 +++++++++++++++++++++++++++++++ A asterisk-warvox/iax.conf | 15 +++++++++++++++ A asterisk-warvox/modem.wav | 0 A dnsrecon/Dockerfile | 21 +++++++++++++++++++++ A dnsrecon/README | 21 +++++++++++++++++++++ A htcap/Dockerfile | 24 ++++++++++++++++++++++++ A htcap/README | 23 +++++++++++++++++++++++ A mailcatcher/Dockerfile | 21 +++++++++++++++++++++ A mailcatcher/README | 23 +++++++++++++++++++++++ A theharvester/Dockerfile | 25 +++++++++++++++++++++++++ A theharvester/README | 21 +++++++++++++++++++++ A warvox/Dockerfile | 26 ++++++++++++++++++++++++++ A warvox/README | 24 ++++++++++++++++++++++++ A warvox/setup.sh | 37 +++++++++++++++++++++++++++++++ 17 files changed, 370 insertions(+), 0 deletions(-) --- (DIR) diff --git a/README b/README @@ -0,0 +1,6 @@ +-= docker-images =- + + This is a collection of docker build files for security related tools I +used regularly. These were all in separate git repos at one point, however, I have +merged them into one as I rarely use them now. + (DIR) diff --git a/asterisk-warvox/Dockerfile b/asterisk-warvox/Dockerfile @@ -0,0 +1,14 @@ +FROM debian:jessie +MAINTAINER Jay Scott + +RUN apt-get update && apt-get -y install \ + asterisk \ + mpg123 \ + && rm -rf /var/lib/apt/lists/* + + +COPY *.conf /etc/asterisk/ +COPY modem.wav /usr/share/asterisk/sounds/en/ +EXPOSE 4569 + +CMD /usr/sbin/asterisk -f -U asterisk -G asterisk -vvvg -c (DIR) diff --git a/asterisk-warvox/README b/asterisk-warvox/README @@ -0,0 +1,32 @@ +-= docker : asterisk warvox =- + + +Docker image for an asterisk build to test warvox. Dialing any number will +return one of the following random call types. + +> Unixtime Voice +> Modem +> Busy +> Ringing +> Congested +> Callwaiting +> Fax + + +build +----- + +$ docker build -t local/asterisk-warvox . + + +usage +----- + +$ docker run -ti --rm local/asterisk-warvox + + +reference +--------- + +warvox: https://github.com/rapid7/warvox +asterisk: https://www.asterisk.org/ (DIR) diff --git a/asterisk-warvox/extensions.conf b/asterisk-warvox/extensions.conf @@ -0,0 +1,37 @@ +[general] +static=yes +writeprotect=no +clearglobalvars=no +[globals] +CONSOLE=Console/dsp +IAXINFO=guest +TRUNK=DAHDI/G2 +TRUNKMSD=1 + +[warvox] +exten => 1000,1,Wait(0.25) +exten => 1000,n,Answer() +exten => 1000,n,Playback(spy-local) + +exten => 1001,1,Wait(0.25) +exten => 1001,n,Answer() +exten => 1001,n,SayUnixTime(${FUTURETIME},${timezone},HNS) + +exten => 1002,1,Wait(0.25) +exten => 1002,n,Answer() +exten => 1002,n,playback(modem) +exten => 1002,n,Wait(10) + +exten => 1007,30000(time),NoOp(Time: ${EXTEN} ${timezone}) +exten => 1007,n,Wait(0.25) +exten => 1007,n,Answer() +exten => 1007,n,Set(FUTURETIME=$[${EPOCH} + 12]) +exten => 1007,n,SayUnixTime(${FUTURETIME},Zulu,HNS) +exten => 1007,n,SayPhonetic(z) +exten => 1007,n,SayUnixTime(${FUTURETIME},${timezone},HNS) +exten => 1007,n,Playback(spy-local) +exten => 1007,n,WaitUntil(${FUTURETIME}) +exten => 1007,n,Playback(beep) +exten => 1007,n,Return() + + (DIR) diff --git a/asterisk-warvox/iax.conf b/asterisk-warvox/iax.conf @@ -0,0 +1,15 @@ +[general] + +bandwidth=low +disallow=lpc10 +jitterbuffer=no +forcejitterbuffer=no +autokill=yes + +[warvox] +type=friend +host=dynamic +secret=warvox +context=warvox +allow=all +requirecalltoken=no (DIR) diff --git a/asterisk-warvox/modem.wav b/asterisk-warvox/modem.wav Binary files differ. (DIR) diff --git a/dnsrecon/Dockerfile b/dnsrecon/Dockerfile @@ -0,0 +1,21 @@ +FROM alpine:latest +MAINTAINER Jay Scott + +RUN apk add --update \ + git \ + python3 \ + py-pip \ + gcc \ + libxml2-dev \ + libxslt-dev \ + libc-dev \ + python3-dev \ + && rm -rf /var/cache/apk/* + +# Install dnsrecon from git along with deps +WORKDIR /usr/share +RUN git clone https://github.com/darkoperator/dnsrecon.git \ + && cd dnsrecon \ + && pip3 install --no-cache-dir -r requirements.txt + +ENTRYPOINT ["/usr/share/dnsrecon/dnsrecon.py"] (DIR) diff --git a/dnsrecon/README b/dnsrecon/README @@ -0,0 +1,21 @@ +-= docker: dnsrecon =- + +Super small docker image for the latest version of dnsrecon. + + +build +----- + +$ docker build -t local/dnsrecon . + + +usage +----- + +$ docker run -ti --rm local/dnsrecon + + +reference +--------- + +dnsrecon: https://github.com/darkoperator/dnsrecon (DIR) diff --git a/htcap/Dockerfile b/htcap/Dockerfile @@ -0,0 +1,24 @@ +FROM debian:latest +MAINTAINER Jay scott + +WORKDIR /root +RUN apt-get update && apt-get -y install \ + bzip2 \ + git-core \ + python \ + sqlite3 \ + tar \ + wget \ +&& rm -rf /var/lib/apt/lists/* + +# Installing phantomJS +WORKDIR /root +RUN wget -q https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2 \ + && tar -xvjf phantomjs-2.1.1-linux-x86_64.tar.bz2 \ + && mv /root/phantomjs-2.1.1-linux-x86_64/bin/phantomjs /usr/bin/phantomjs \ + && git clone https://github.com/segment-srl/htcap.git \ + && ln -s /usr/share/htcap/htcap.py /usr/local/bin/htcap \ + && ln -s /usr/share/htcap/scripts/htmlreport.py /usr/local/bin/htcap_report \ + && ln -s /usr/share/htcap/scripts/quickscan.sh /usr/local/bin/htcapquick + +ENTRYPOINT ["htcap/htcap.py"] (DIR) diff --git a/htcap/README b/htcap/README @@ -0,0 +1,23 @@ +-= docker: htcap =- + +Docker image for the latest version of htcap. This image does not include +arachni used with the scanner module, it does however include sqlmap. + +build +----- + +$ docker build -t local/htcap . + + +usage +----- + +$ docker run -ti --rm local/htcap + + +reference +--------- + +htcap: https://github.com/fcavallarin/htcap +sqlmap: http://sqlmap.org/ +arachni: https://www.arachni-scanner.com/ (DIR) diff --git a/mailcatcher/Dockerfile b/mailcatcher/Dockerfile @@ -0,0 +1,21 @@ +FROM alpine:latest +MAINTAINER Jay Scott + +RUN apk add --update --no-cache \ + ruby \ + ruby-dev \ + ruby-etc \ + ruby-bigdecimal \ + build-base \ + libstdc++ \ + sqlite \ + sqlite-dev \ + && gem install json --no-document \ + && gem install mailcatcher --no-document --prerelease \ + && apk del --purge ruby-dev build-base \ + && rm -rf /usr/lib/ruby/gems/2.5.0/cache + +EXPOSE 1025 +EXPOSE 1080 + +CMD ["mailcatcher", "-f", "--ip=0.0.0.0"] (DIR) diff --git a/mailcatcher/README b/mailcatcher/README @@ -0,0 +1,23 @@ +-= docker: mailcatcher =- + +Super small 36MB image of the latest, pre-release 0.8.0.beta2, of mailcatcher. +Connect to http://127.0.0.1:1080 to view messages and send messages via +127.0.0.1:1025. + + +build +----- + +$ docker build -t jayscott/mailcatcher . + + +usage +----- + +$ docker run -p 1080:1080 -p 1025:1025 -ti --rm jayscott/mailcatcher + + +reference +--------- + +mailcatcher: https://rubygems.org/gems/mailcatcher/ (DIR) diff --git a/theharvester/Dockerfile b/theharvester/Dockerfile @@ -0,0 +1,25 @@ +FROM alpine:3.11 +MAINTAINER Jay Scott + + +WORKDIR /usr/share +# Limit the number of docker layers +RUN apk add --update --no-cache \ + bash \ + git \ + python3 \ + build-base \ + py3-pip \ + python3-dev \ + libffi-dev \ + libxml2-dev \ + libxslt-dev \ + && pip3 install --upgrade pip \ + && git clone https://github.com/laramies/theHarvester.git \ + && pip3 install -r theHarvester/requirements.txt \ + && chmod +x theHarvester/theHarvester.py \ + && apk del --purge libxslt-dev libxml2-dev py3-pip git build-base libffi-dev python3-dev \ + && rm -rf /var/cache/apk/* + +WORKDIR /usr/share/theHarvester +ENTRYPOINT ["/usr/share/theHarvester/theHarvester.py"] (DIR) diff --git a/theharvester/README b/theharvester/README @@ -0,0 +1,21 @@ +-= docker: theharvester =- + +Docker image for the latest version of theharvester from Edge Security. + + +build +----- + +$ docker build -t jayscott/theharvester . + + +usage +----- + +$ docker run -ti --rm jayscott/theharvester + + +reference +--------- + +theharvester: https://github.com/laramies/theHarvester (DIR) diff --git a/warvox/Dockerfile b/warvox/Dockerfile @@ -0,0 +1,26 @@ +FROM ruby:2.2.5 +MAINTAINER Jay Scott + +WORKDIR /home/warvox +RUN apt-get update && apt-get -y install \ + gnuplot \ + lame \ + build-essential \ + libssl-dev \ + libcurl4-openssl-dev \ + postgresql-contrib \ + git-core \ + curl \ + libpq-dev \ + && git clone https://github.com/rapid7/warvox /home/warvox \ + && ln -s /usr/bin/ruby2.1 /usr/bin/ruby \ + && sed -i "s/hdm\/reportable/beardyjay\/reportable/g" Gemfile \ + && bundle install \ + && make \ + && apt -y remove libpq-dev libcurl4-openssl-dev libssl-dev git-core build-essential \ + && rm -rf /var/lib/apt/lists/* + +ADD setup.sh / +EXPOSE 7777 + +CMD ["/setup.sh"] (DIR) diff --git a/warvox/README b/warvox/README @@ -0,0 +1,24 @@ +-= docker: warvox =- + +The default login for the warvox web interface is admin/godsexlove and you can +connect to port http://127.0.0.1:7777 locally once running. + + +build +----- + +$ docker build -t jayscott/warvox . + + +usage +----- + +$ docker pull postgres +$ docker run -d --name postgres -e POSTGRES_HOST_AUTH_METHOD=trust postgres +$ docker run -p 7777:7777 -ti --link postgres:db jayscott/warvox + + +reference +--------- + +warvox: https://github.com/rapid7/warvox/ (DIR) diff --git a/warvox/setup.sh b/warvox/setup.sh @@ -0,0 +1,37 @@ +#!/bin/bash +# +# based of a setup script by pandrew/metasploit +# + +VOXUSER="warvox" +VOXPASS="changeme" + +USEREXIST="$(psql -h $DB_PORT_5432_TCP_ADDR -p 5432 -U postgres postgres -tAc "SELECT 1 FROM pg_roles WHERE rolname='$VOXUSER'")" +if [[ ! $USEREXIST -eq 1 ]] +then + psql -h $DB_PORT_5432_TCP_ADDR -p 5432 -U postgres postgres -c "create role $VOXUSER WITH SUPERUSER login password '$VOXPASS'" +fi + +DBEXIST="$(psql -h $DB_PORT_5432_TCP_ADDR -p 5432 -U postgres postgres -l | grep warvox)" +if [[ ! $DBEXIST ]] +then + psql -h $DB_PORT_5432_TCP_ADDR -p 5432 -U postgres postgres -c "CREATE DATABASE warvox OWNER $VOXUSER;" +fi + +sh -c "echo 'production: + adapter: postgresql + database: warvox + username: $VOXUSER + password: $VOXPASS + host: $DB_PORT_5432_TCP_ADDR + port: 5432 + pool: 75 + timeout: 5' > /home/warvox/config/database.yml" + +cd /home/warvox +make database +cp /home/warvox/config/secrets.yml.example /home/warvox/config/secrets.yml +bin/adduser admin godsexlove +export RAILS_SERVE_STATIC_FILES=true +RAILS_ENV=production bundle exec rake assets:precompile +bin/warvox --address 0.0.0.0