mirror of
https://github.com/zardus/ctf-tools
synced 2024-12-14 15:02:33 +00:00
Merge pull request #62 from LosFuzzys/archlinux
archlinux support + tool updates + misc improvements
This commit is contained in:
commit
51aa759543
90 changed files with 589 additions and 137 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -1,6 +1,7 @@
|
||||||
*/*
|
*/*
|
||||||
bin/*
|
bin/*
|
||||||
!*/install
|
!*/install
|
||||||
!*/install-root
|
!*/uninstall
|
||||||
|
!*/install-root-*
|
||||||
!*/upgrade
|
!*/upgrade
|
||||||
!*/test
|
!*/test
|
||||||
|
|
10
Dockerfile
10
Dockerfile
|
@ -1,7 +1,11 @@
|
||||||
from ubuntu:trusty
|
from ubuntu:trusty
|
||||||
maintainer yans@yancomm.net
|
maintainer yans@yancomm.net
|
||||||
|
|
||||||
RUN adduser ctf
|
RUN apt-get update && apt-get install -y build-essential libtool g++ gcc \
|
||||||
|
texinfo curl wget automake autoconf python python-dev git subversion \
|
||||||
|
unzip virtualenvwrapper
|
||||||
|
|
||||||
|
RUN useradd -m ctf
|
||||||
COPY .git /home/ctf/tools/.git
|
COPY .git /home/ctf/tools/.git
|
||||||
RUN chown -R ctf.ctf /home/ctf/tools
|
RUN chown -R ctf.ctf /home/ctf/tools
|
||||||
|
|
||||||
|
@ -14,9 +18,7 @@ USER ctf
|
||||||
WORKDIR /home/ctf/tools
|
WORKDIR /home/ctf/tools
|
||||||
RUN git checkout .
|
RUN git checkout .
|
||||||
RUN bin/manage-tools -s setup
|
RUN bin/manage-tools -s setup
|
||||||
|
RUN echo "workon ctftools" >> /home/ctf/.bashrc
|
||||||
|
|
||||||
WORKDIR /home/ctf
|
WORKDIR /home/ctf
|
||||||
RUN bash -c "source /etc/bash_completion.d/virtualenvwrapper && mkvirtualenv ctf"
|
|
||||||
RUN echo "workon ctf" >> /home/ctf/.bashrc
|
|
||||||
|
|
||||||
ENTRYPOINT bash -i
|
ENTRYPOINT bash -i
|
||||||
|
|
42
Dockerfile.archlinux
Normal file
42
Dockerfile.archlinux
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
from base/archlinux
|
||||||
|
|
||||||
|
RUN echo 'Server = http://mirror1.htu.tugraz.at/archlinux/$repo/os/$arch' \
|
||||||
|
> /etc/pacman.d/mirrorlist
|
||||||
|
RUN echo "[multilib]" >> /etc/pacman.conf
|
||||||
|
RUN echo "Include = /etc/pacman.d/mirrorlist" >> /etc/pacman.conf
|
||||||
|
|
||||||
|
RUN pacman -Syy \
|
||||||
|
&& pacman -S --noconfirm archlinux-keyring \
|
||||||
|
&& pacman -Scc --noconfirm
|
||||||
|
RUN pacman-key --refresh-keys
|
||||||
|
RUN pacman -Syu --noconfirm \
|
||||||
|
&& pacman-db-upgrade \
|
||||||
|
&& pacman -Scc --noconfirm \
|
||||||
|
&& pacman -Syu --noconfirm \
|
||||||
|
&& pacman -Scc --noconfirm
|
||||||
|
RUN trust extract-compat
|
||||||
|
RUN pacman -Syu --noconfirm --needed \
|
||||||
|
curl wget python2 python3 git subversion \
|
||||||
|
python2-pip python-pip \
|
||||||
|
unzip python-virtualenvwrapper \
|
||||||
|
zsh grml-zsh-config \
|
||||||
|
sudo \
|
||||||
|
&& pacman -Scc --noconfirm
|
||||||
|
|
||||||
|
RUN useradd -m ctf
|
||||||
|
RUN echo "ctf ALL=NOPASSWD: ALL" > /etc/sudoers.d/ctf
|
||||||
|
RUN chsh -s /usr/bin/zsh ctf
|
||||||
|
|
||||||
|
COPY .git /home/ctf/tools/.git
|
||||||
|
RUN chown -R ctf.ctf /home/ctf/tools
|
||||||
|
|
||||||
|
USER ctf
|
||||||
|
|
||||||
|
WORKDIR /home/ctf/tools
|
||||||
|
RUN git checkout .
|
||||||
|
RUN bin/manage-tools -s setup
|
||||||
|
RUN echo 'source $(which virtualenvwrapper.sh)' >> ~/.zshrc
|
||||||
|
RUN echo 'workon ctftools' >> ~/.zshrc
|
||||||
|
|
||||||
|
WORKDIR /home/ctf
|
||||||
|
CMD ["zsh", "-i"]
|
11
README.md
11
README.md
|
@ -13,6 +13,7 @@ Installers for the following tools are included:
|
||||||
| binary | [angr](http://angr.io) | Next-generation binary analysis engine from Shellphish. | <!--tool--> <!--no-test-->
|
| binary | [angr](http://angr.io) | Next-generation binary analysis engine from Shellphish. | <!--tool--> <!--no-test-->
|
||||||
| binary | [barf](https://github.com/programa-stic/barf-project) | Binary Analysis and Reverse-engineering Framework. | <!--tool--><!--times-out-->
|
| binary | [barf](https://github.com/programa-stic/barf-project) | Binary Analysis and Reverse-engineering Framework. | <!--tool--><!--times-out-->
|
||||||
| binary | [bindead](https://bitbucket.org/mihaila/bindead/wiki/Home) | A static analysis tool for binaries. | <!--tool--><!--failing-->
|
| binary | [bindead](https://bitbucket.org/mihaila/bindead/wiki/Home) | A static analysis tool for binaries. | <!--tool--><!--failing-->
|
||||||
|
| binary | [binjitsu](https://github.com/binjitsu/binjitsu) | Useful CTF utilities. pwntools fork. | <!--tool--><!--no-test-->
|
||||||
| binary | [checksec](https://github.com/slimm609/checksec.sh) | Check binary hardening settings. | <!--tool--><!--test-->
|
| binary | [checksec](https://github.com/slimm609/checksec.sh) | Check binary hardening settings. | <!--tool--><!--test-->
|
||||||
| binary | [codereason](https://github.com/trailofbits/codereason) | Semantic Binary Code Analysis Framework. | <!--tool--><!--failing-->
|
| binary | [codereason](https://github.com/trailofbits/codereason) | Semantic Binary Code Analysis Framework. | <!--tool--><!--failing-->
|
||||||
| binary | [crosstool-ng](http://crosstool-ng.org/) | Cross-compilers and cross-architecture tools. | <!--tool--><!--no-test-->
|
| binary | [crosstool-ng](http://crosstool-ng.org/) | Cross-compilers and cross-architecture tools. | <!--tool--><!--no-test-->
|
||||||
|
@ -21,11 +22,13 @@ Installers for the following tools are included:
|
||||||
| binary | [elfparser](http://www.elfparser.com/) | Quickly determine the capabilities of an ELF binary through static analysis. | <!--tool--><!--test-->
|
| binary | [elfparser](http://www.elfparser.com/) | Quickly determine the capabilities of an ELF binary through static analysis. | <!--tool--><!--test-->
|
||||||
| binary | [evilize](http://www.mathstat.dal.ca/~selinger/md5collision/) | Tool to create MD5 colliding binaries | <!--tool--><!--test-->
|
| binary | [evilize](http://www.mathstat.dal.ca/~selinger/md5collision/) | Tool to create MD5 colliding binaries | <!--tool--><!--test-->
|
||||||
| binary | [gdb](http://www.gnu.org/software/gdb/) | Up-to-date gdb with python2 bindings. | <!--tool--><!--failing-->
|
| binary | [gdb](http://www.gnu.org/software/gdb/) | Up-to-date gdb with python2 bindings. | <!--tool--><!--failing-->
|
||||||
|
| binary | [gef](https://github.com/hugsy/gef) | Enhanced environment for gdb. | <!--tool--><!--no-test-->
|
||||||
| binary | [hongfuzz](https://github.com/google/honggfuzz) | A general-purpose, easy-to-use fuzzer with interesting analysis options. | <!--tool--><!--test-->
|
| binary | [hongfuzz](https://github.com/google/honggfuzz) | A general-purpose, easy-to-use fuzzer with interesting analysis options. | <!--tool--><!--test-->
|
||||||
| binary | [panda](https://github.com/moyix/panda) | Platform for Architecture-Neutral Dynamic Analysis. | <!--tool--><!--no-test-->
|
| binary | [panda](https://github.com/moyix/panda) | Platform for Architecture-Neutral Dynamic Analysis. | <!--tool--><!--no-test-->
|
||||||
| binary | [pathgrind](https://github.com/codelion/pathgrind) | Path-based, symbolically-assisted fuzzer. | <!--tool--><!--test-->
|
| binary | [pathgrind](https://github.com/codelion/pathgrind) | Path-based, symbolically-assisted fuzzer. | <!--tool--><!--test-->
|
||||||
| binary | [peda](https://github.com/longld/peda) | Enhanced environment for gdb. | <!--tool--><!--test-->
|
| binary | [peda](https://github.com/longld/peda) | Enhanced environment for gdb. | <!--tool--><!--test-->
|
||||||
| binary | [preeny](https://github.com/zardus/preeny) | A collection of helpful preloads (compiled for many architectures!). | <!--tool--><!--no-test-->
|
| binary | [preeny](https://github.com/zardus/preeny) | A collection of helpful preloads (compiled for many architectures!). | <!--tool--><!--no-test-->
|
||||||
|
| binary | [pwndbg](https://github.com/zachriggle/pwndbg) | Enhanced environment for gdb. Especially for pwning. | <!--tool--><!--no-test-->
|
||||||
| binary | [pwntools](https://github.com/Gallopsled/pwntools) | Useful CTF utilities. | <!--tool--><!--no-test-->
|
| binary | [pwntools](https://github.com/Gallopsled/pwntools) | Useful CTF utilities. | <!--tool--><!--no-test-->
|
||||||
| binary | [python-pin](https://github.com/blankwall/Python_Pin) | Python bindings for pin. | <!--tool--><!--test-->
|
| binary | [python-pin](https://github.com/blankwall/Python_Pin) | Python bindings for pin. | <!--tool--><!--test-->
|
||||||
| binary | [qemu](http://qemu.org) | Latest version of qemu! | <!--tool--><!--times-out-->
|
| binary | [qemu](http://qemu.org) | Latest version of qemu! | <!--tool--><!--times-out-->
|
||||||
|
@ -67,7 +70,8 @@ Installers for the following tools are included:
|
||||||
| web | [burpsuite](http://portswigger.net/burp) | Web proxy to do naughty web stuff. | <!--tool--><!--failing-->
|
| web | [burpsuite](http://portswigger.net/burp) | Web proxy to do naughty web stuff. | <!--tool--><!--failing-->
|
||||||
| web | [commix](https://github.com/stasinopoulos/commix) | Command injection and exploitation tool. | <!--tool--><!--test-->
|
| web | [commix](https://github.com/stasinopoulos/commix) | Command injection and exploitation tool. | <!--tool--><!--test-->
|
||||||
| web | [dirb](http://dirb.sourceforge.net/) | Web path scanner. | <!--tool--><!--test-->
|
| web | [dirb](http://dirb.sourceforge.net/) | Web path scanner. | <!--tool--><!--test-->
|
||||||
| web | [dirs3arch](https://github.com/maurosoria/dirs3arch) | Web path scanner. | <!--tool--><!--test-->
|
| web | [dirsearch](https://github.com/maurosoria/dirsearch) | Web path scanner. | <!--tool--><!--test-->
|
||||||
|
| web | [mitmproxy](https://mitmproxy.org/) | CLI Web proxy and python library. | <!--tool--><!--no-test-->
|
||||||
| web | [sqlmap](http://sqlmap.org/) | SQL injection automation engine. | <!--tool--><!--test-->
|
| web | [sqlmap](http://sqlmap.org/) | SQL injection automation engine. | <!--tool--><!--test-->
|
||||||
| web | [subbrute](https://github.com/TheRook/subbrute) | A DNS meta-query spider that enumerates DNS records, and subdomains. | <!--tool--><!--test-->
|
| web | [subbrute](https://github.com/TheRook/subbrute) | A DNS meta-query spider that enumerates DNS records, and subdomains. | <!--tool--><!--test-->
|
||||||
| stego | [sound-visualizer](http://www.sonicvisualiser.org/) | Audio file visualization. | <!--tool--><!--failing-->
|
| stego | [sound-visualizer](http://www.sonicvisualiser.org/) | Audio file visualization. | <!--tool--><!--failing-->
|
||||||
|
@ -114,7 +118,10 @@ manage-tools search preload
|
||||||
```
|
```
|
||||||
|
|
||||||
Where possible, the tools keep the installs very self-contained (i.e., in to tool/ directory), and most uninstalls are just calls to `git clean` (**NOTE**, this is **NOT** careful; everything under the tool directory, including whatever you were working on, is blown away during an uninstall).
|
Where possible, the tools keep the installs very self-contained (i.e., in to tool/ directory), and most uninstalls are just calls to `git clean` (**NOTE**, this is **NOT** careful; everything under the tool directory, including whatever you were working on, is blown away during an uninstall).
|
||||||
To support python dependencies, however, make sure to create a virtualenv before installing and using tools (i.e., `mkvirtualenv --system-site-packages ctf`. The `--system-site-packages` is there for easier reuse of apt-gotten python packages where necessary).
|
One exception to this are python tools, which are installed using the `pip`
|
||||||
|
package manager if possible. A `ctftools` virtualenv is created during the
|
||||||
|
`manage-tools setup` command and can be accessed using the command
|
||||||
|
`workon ctftools`.
|
||||||
|
|
||||||
## Help!
|
## Help!
|
||||||
|
|
||||||
|
|
|
@ -9,6 +9,11 @@ mv afl-* afl
|
||||||
cd afl
|
cd afl
|
||||||
make -j $(nproc)
|
make -j $(nproc)
|
||||||
cd qemu_mode
|
cd qemu_mode
|
||||||
|
# try to detect if python2 and 3 are installed
|
||||||
|
if which python2 >/dev/null; then
|
||||||
|
sed -i 's/python/python2/' ./build_qemu_support.sh
|
||||||
|
sed -i 's!configure!configure --python=\$(which python2)!' ./build_qemu_support.sh
|
||||||
|
fi
|
||||||
./build_qemu_support.sh
|
./build_qemu_support.sh
|
||||||
cd ../../
|
cd ../../
|
||||||
|
|
||||||
|
|
4
afl/install-root-archlinux
Executable file
4
afl/install-root-archlinux
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
pacman -Syu --noconfirm --needed bison qemu
|
|
@ -1,4 +1,5 @@
|
||||||
#!/bin/bash -e
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get -y build-dep qemu
|
apt-get -y build-dep qemu
|
||||||
apt-get -y install bison
|
apt-get -y install bison
|
4
android-sdk/install-root-archlinux
Executable file
4
android-sdk/install-root-archlinux
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
pacman -Syu --noconfirm --needed jre7-openjdk jdk7-openjdk
|
|
@ -1 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get -y install openjdk-7-jre openjdk-7-jdk
|
apt-get -y install openjdk-7-jre openjdk-7-jdk
|
|
@ -1,4 +1,5 @@
|
||||||
#!/bin/bash -e
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
# for angr
|
# for angr
|
||||||
apt-get -y install virtualenvwrapper python2.7-dev build-essential libxml2-dev libxslt1-dev git libffi-dev cmake libreadline-dev libtool debootstrap debian-archive-keyring libglib2.0-dev libpixman-1-dev
|
apt-get -y install virtualenvwrapper python2.7-dev build-essential libxml2-dev libxslt1-dev git libffi-dev cmake libreadline-dev libtool debootstrap debian-archive-keyring libglib2.0-dev libpixman-1-dev
|
|
@ -1,2 +0,0 @@
|
||||||
apt-get update
|
|
||||||
apt-get install -y default-jre
|
|
4
apktool/install-root-archlinux
Normal file
4
apktool/install-root-archlinux
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
pacman -Syu --noconfirm --needed jre8-openjdk
|
4
apktool/install-root-debian
Executable file
4
apktool/install-root-debian
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
apt-get install -y default-jre
|
|
@ -1,3 +1,4 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get -y install binutils-multiarch-dev
|
apt-get -y install binutils-multiarch-dev
|
6
beef/install
Executable file
6
beef/install
Executable file
|
@ -0,0 +1,6 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
git clone --depth 1 https://github.com/beefproject/beef
|
||||||
|
|
||||||
|
cd beef
|
||||||
|
bundle
|
7
beef/install-root-archlinux
Executable file
7
beef/install-root-archlinux
Executable file
|
@ -0,0 +1,7 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
pacman -Syu --noconfirm --needed \
|
||||||
|
ruby python2 ruby-bundler \
|
||||||
|
git make gcc openssl patch readline \
|
||||||
|
zlib libyaml libffi bzip2 autoconf automake \
|
||||||
|
libtool bison sqlite
|
9
beef/install-root-debian
Executable file
9
beef/install-root-debian
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
echo "Need to get ruby with RVM... Unsupported for now"
|
||||||
|
exit 1
|
||||||
|
apt-get install build-essential openssl libreadline6 \
|
||||||
|
libreadline6-dev zlib1g zlib1g-dev libssl-dev \
|
||||||
|
libyaml-dev libsqlite3-0 libsqlite3-dev sqlite3 \
|
||||||
|
libxml2-dev libxslt1-dev autoconf libc6-dev \
|
||||||
|
libncurses5-dev automake libtool bison subversion
|
43
bin/ctf-tools-pip
Executable file
43
bin/ctf-tools-pip
Executable file
|
@ -0,0 +1,43 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -e -o pipefail
|
||||||
|
#set -x
|
||||||
|
|
||||||
|
# let's stick with python 2 as default
|
||||||
|
PY_VERSION=2
|
||||||
|
# check this scripts file ending
|
||||||
|
if [[ "$0" =~ pip3 ]]; then
|
||||||
|
PY_VERSION=3
|
||||||
|
fi
|
||||||
|
if [[ "$0" =~ pip2 ]]; then
|
||||||
|
PY_VERSION=2
|
||||||
|
fi
|
||||||
|
|
||||||
|
PY_INTERPRETER=$(which "python$PY_VERSION" || which python)
|
||||||
|
|
||||||
|
CTF_TOOLS_VE="ctftools"
|
||||||
|
if [[ $PY_VERSION -eq 3 ]]; then
|
||||||
|
CTF_TOOLS_VE="${CTF_TOOLS_VE}3"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -z "${WORKON_HOME+x}" ]]; then
|
||||||
|
export WORKON_HOME="$HOME/.virtualenvs"
|
||||||
|
fi
|
||||||
|
if [[ ! -d "$WORKON_HOME" ]]; then
|
||||||
|
mkdir -p "$WORKON_HOME"
|
||||||
|
fi
|
||||||
|
|
||||||
|
VE_DIR="$WORKON_HOME/$CTF_TOOLS_VE"
|
||||||
|
|
||||||
|
if [[ ! -d "$VE_DIR" || ! -e "$VE_DIR/bin/activate" ]]; then
|
||||||
|
echo "#### Creating python$PY_VERSION virtualenv '$CTF_TOOLS_VE' ####" >&2
|
||||||
|
virtualenv --system-site-packages -p "$PY_INTERPRETER" "$VE_DIR"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -z "${VIRTUAL_ENV+x}" || "$VIRTUAL_ENV" != "$VE_DIR" ]]; then
|
||||||
|
if [[ -n "${VIRTUAL_ENV+x}" ]]; then
|
||||||
|
deactivate
|
||||||
|
fi
|
||||||
|
source "$VE_DIR/bin/activate"
|
||||||
|
fi
|
||||||
|
|
||||||
|
exec pip "$@"
|
1
bin/ctf-tools-pip3
Symbolic link
1
bin/ctf-tools-pip3
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
ctf-tools-pip
|
207
bin/manage-tools
207
bin/manage-tools
|
@ -1,4 +1,6 @@
|
||||||
#!/bin/bash -e
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
# set -x
|
||||||
|
|
||||||
function usage()
|
function usage()
|
||||||
{
|
{
|
||||||
|
@ -7,14 +9,11 @@ Usage: $(basename $0) [-s] (list|setup|install|uninstall|bin|search) tool
|
||||||
|
|
||||||
Where:
|
Where:
|
||||||
-s allow running things with sudo (i.e., to install debs)
|
-s allow running things with sudo (i.e., to install debs)
|
||||||
tool the name of the tool. if "all", does the action on all
|
tool the name of the tool. if "all", does the action on all tools
|
||||||
tools
|
|
||||||
|
|
||||||
Actions:
|
Actions:
|
||||||
setup set up the environment (adds ctf-tools/bin to your
|
setup set up the environment (adds ctf-tools/bin to your \$PATH in .bashrc)
|
||||||
\$PATH in .bashrc)
|
list list all tools (-i: only installed, -u: only uninstalled)
|
||||||
list list all tools (-i: only installed, -u: only
|
|
||||||
uninstalled)
|
|
||||||
install installs a tool
|
install installs a tool
|
||||||
uninstall uninstalls a tool
|
uninstall uninstalls a tool
|
||||||
reinstall reinstalls a tool
|
reinstall reinstalls a tool
|
||||||
|
@ -30,6 +29,126 @@ function tool_log()
|
||||||
echo "$(tput setaf 4 2>/dev/null)TOOLS | $TOOL |$(tput sgr0 2>/dev/null) $@"
|
echo "$(tput setaf 4 2>/dev/null)TOOLS | $TOOL |$(tput sgr0 2>/dev/null) $@"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function detect_distribution()
|
||||||
|
{
|
||||||
|
if which pacman 2>&1 >/dev/null; then
|
||||||
|
echo "archlinux"
|
||||||
|
elif which apt-get 2>&1 >/dev/null; then
|
||||||
|
if lsb_release -a | grep -i ubuntu 2>&1 >/dev/null; then
|
||||||
|
echo "ubuntu"
|
||||||
|
else
|
||||||
|
echo "debian"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo ""
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function base_build_setup_debian()
|
||||||
|
{
|
||||||
|
PACKAGE_REQS="build-essential libtool g++ gcc texinfo curl wget automake autoconf python python-dev git subversion unzip virtualenvwrapper"
|
||||||
|
PACKAGE_COUNT=$(echo $PACKAGE_REQS | tr ' ' '\n' | wc -l)
|
||||||
|
if [ $(dpkg -l $PACKAGE_REQS | grep "^ii" | wc -l) -ne $PACKAGE_COUNT ]
|
||||||
|
then
|
||||||
|
if [ "$ALLOW_SUDO" -eq 1 ]; then
|
||||||
|
sudo apt-get -y install $PACKAGE_REQS
|
||||||
|
else
|
||||||
|
TOOL=SETUP tool_log "Please install the following packages: $PACKAGE_REQS"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! dpkg --print-foreign-architectures | grep -q i386
|
||||||
|
then
|
||||||
|
if [ "$ALLOW_SUDO" -eq 1 ]
|
||||||
|
then
|
||||||
|
sudo dpkg --add-architecture i386
|
||||||
|
sudo apt-get update
|
||||||
|
else
|
||||||
|
TOOL=SETUP tool_log "Certain tools need i386 libraries (enable with 'dpkg --add-architecture i386; apt-get update')."
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function base_build_setup_arch()
|
||||||
|
{
|
||||||
|
PACKAGE_REQS="curl wget python2 python3 git subversion unzip python-virtualenvwrapper"
|
||||||
|
if [ "$ALLOW_SUDO" -eq 1 ]; then
|
||||||
|
sudo pacman -Syu --noconfirm --needed $PACKAGE_REQS
|
||||||
|
sudo pacman -Syu --noconfirm --needed base-devel || true
|
||||||
|
else
|
||||||
|
TOOL=SETUP tool_log "Please install the following packages: $PACKAGE_REQS"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! grep "^\[multilib\]$" /etc/pacman.conf >/dev/null; then
|
||||||
|
if [ "$ALLOW_SUDO" -eq 1 ]; then
|
||||||
|
sudo sh -c 'cat >> /etc/pacman.conf' <<EOF
|
||||||
|
|
||||||
|
[multilib]
|
||||||
|
Include = /etc/pacman.d/mirrorlist
|
||||||
|
EOF
|
||||||
|
else
|
||||||
|
TOOL=SETUP tool_log "Certain tools need i386 libraries (enable multilib in /etc/pacman.conf')."
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$ALLOW_SUDO" -eq 1 ] \
|
||||||
|
&& grep "^\[multilib\]$" /etc/pacman.conf >/dev/null \
|
||||||
|
&& ! sudo pacman -Qk gcc-multilib >/dev/null
|
||||||
|
then
|
||||||
|
sudo pacman -Syy --noconfirm
|
||||||
|
#sudo pacman -Syu --noconfirm multilib-devel
|
||||||
|
# unfortunately we cannot do --noconfirm if we might choose to replace
|
||||||
|
# a package such as gcc with gcc-multilib, therefore this workaround
|
||||||
|
printf "\ny\ny\ny\n" | sudo pacman -Syu multilib-devel
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function base_build_setup()
|
||||||
|
{
|
||||||
|
case "$1" in
|
||||||
|
"ubuntu")
|
||||||
|
;& # fallthrough
|
||||||
|
"debian")
|
||||||
|
base_build_setup_debian
|
||||||
|
;;
|
||||||
|
"archlinux")
|
||||||
|
base_build_setup_arch
|
||||||
|
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
TOOL=SETUP tool_log "Cannot detect or unsupported distribution"
|
||||||
|
esac
|
||||||
|
|
||||||
|
## setup PATH for several shells
|
||||||
|
|
||||||
|
echo "export PATH=\"$PWD/bin:\$PATH\"" >> ~/.bashrc
|
||||||
|
|
||||||
|
if [ -e ~/.zshrc ]
|
||||||
|
then
|
||||||
|
echo "export PATH=\"$PWD/bin:\$PATH\"" >> ~/.zshrc
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -e ~/.config/fish/config.fish ]; then
|
||||||
|
echo "set -x PATH $PWD/bin \$PATH " >> ~/.config/fish/config.fish
|
||||||
|
fi
|
||||||
|
|
||||||
|
# create the py2 virtualenv
|
||||||
|
"$PWD/bin/ctf-tools-pip" freeze 2>&1 >/dev/null
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if [[ $# -eq 0 ]]; then
|
||||||
|
usage
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
DISTRI=$(detect_distribution)
|
||||||
|
|
||||||
while [[ $1 == -* ]]
|
while [[ $1 == -* ]]
|
||||||
do
|
do
|
||||||
case $1 in
|
case $1 in
|
||||||
|
@ -44,10 +163,16 @@ do
|
||||||
shift
|
shift
|
||||||
done
|
done
|
||||||
|
|
||||||
[ -z "$ALLOW_SUDO" ] && export ALLOW_SUDO=0
|
[[ -z ${ALLOW_SUDO+x} ]] && export ALLOW_SUDO=0
|
||||||
|
|
||||||
ACTION=$1
|
if [[ $# -ge 1 ]]; then
|
||||||
TOOL=$2
|
ACTION="$1"
|
||||||
|
fi
|
||||||
|
if [[ $# -eq 2 ]]; then
|
||||||
|
TOOL="$2"
|
||||||
|
else
|
||||||
|
TOOL=""
|
||||||
|
fi
|
||||||
|
|
||||||
if [ "$TOOL" == "all" ]
|
if [ "$TOOL" == "all" ]
|
||||||
then
|
then
|
||||||
|
@ -65,35 +190,8 @@ cd $(dirname "${BASH_SOURCE[0]}")/..
|
||||||
|
|
||||||
case $ACTION in
|
case $ACTION in
|
||||||
setup)
|
setup)
|
||||||
PACKAGE_REQS="build-essential libtool g++ gcc texinfo curl wget automake autoconf python-dev git subversion unzip"
|
|
||||||
PACKAGE_COUNT=$(echo $PACKAGE_REQS | tr ' ' '\n' | wc -l)
|
|
||||||
if [ $(dpkg -l $PACKAGE_REQS | grep "^ii" | wc -l) -ne $PACKAGE_COUNT ]
|
|
||||||
then
|
|
||||||
if [ "$ALLOW_SUDO" -eq 1 ]
|
|
||||||
then
|
|
||||||
sudo apt-get -y install $PACKAGE_REQS
|
|
||||||
else
|
|
||||||
TOOL=SETUP tool_log "Please install the following packages: $PACKAGE_REQS"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if ! dpkg --print-foreign-architectures | grep -q i386
|
|
||||||
then
|
|
||||||
if [ "$ALLOW_SUDO" -eq 1 ]
|
|
||||||
then
|
|
||||||
sudo dpkg --add-architecture i386
|
|
||||||
sudo apt-get update || true
|
|
||||||
else
|
|
||||||
TOOL=SETUP tool_log "Certain tools need i386 libraries (enable with 'dpkg --add-architecture i386; apt-get update')."
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "PATH=\"$PWD/bin:\$PATH\"" >> ~/.bashrc
|
|
||||||
if [ -e ~/.zshrc ]
|
|
||||||
then
|
|
||||||
echo "PATH=\"$PWD/bin:\$PATH\"" >> ~/.zshrc
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
base_build_setup "$DISTRI"
|
||||||
;;
|
;;
|
||||||
list)
|
list)
|
||||||
for t in *
|
for t in *
|
||||||
|
@ -118,8 +216,32 @@ case $ACTION in
|
||||||
|
|
||||||
tool_log "starting install, logging to $PWD/install.log"
|
tool_log "starting install, logging to $PWD/install.log"
|
||||||
rm -f install.log
|
rm -f install.log
|
||||||
[ -x ./install-root -a "$ALLOW_SUDO" -eq 1 ] && sudo ./install-root >> install.log 2>&1
|
|
||||||
if ./install >>install.log 2>&1
|
# first get distri specific dependencies
|
||||||
|
if [[ $(find . -name 'install-root*' | wc -l) -ge 1 ]]; then
|
||||||
|
INSTALL_ROOT_SCRIPT="./install-root-$DISTRI"
|
||||||
|
# use debian install script if we are on ubuntu and no ubuntu
|
||||||
|
# specific install script exists
|
||||||
|
if [[ "$DISTRI" == "ubuntu" \
|
||||||
|
&& ! -x "$INSTALL_ROOT_SCRIPT" \
|
||||||
|
&& -x "./install-root-debian" ]]
|
||||||
|
then
|
||||||
|
INSTALL_ROOT_SCRIPT="./install-root-debian"
|
||||||
|
fi
|
||||||
|
if [[ -x "$INSTALL_ROOT_SCRIPT" && "$ALLOW_SUDO" -eq 1 ]]; then
|
||||||
|
if ! sudo env DISTRI=$DISTRI "$INSTALL_ROOT_SCRIPT" >> install.log 2>&1;
|
||||||
|
then
|
||||||
|
tool_log "INSTALL FAILED"
|
||||||
|
cat install.log >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
tool_log "Warning: make sure build dependencies are installed!"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# execute install script
|
||||||
|
if env DISTRI=$DISTRI ./install >>install.log 2>&1
|
||||||
then
|
then
|
||||||
tool_log "install finished"
|
tool_log "install finished"
|
||||||
else
|
else
|
||||||
|
@ -134,8 +256,9 @@ case $ACTION in
|
||||||
uninstall)
|
uninstall)
|
||||||
cd $TOOL
|
cd $TOOL
|
||||||
|
|
||||||
[ -x ./uninstall ] && ./uninstall
|
tool_log "starting uninstall, logging to $PWD/uninstall.log"
|
||||||
git clean -dffx .
|
[ -x ./uninstall ] && ./uninstall >> uninstall.log 2>&1
|
||||||
|
git clean -dffx . >/dev/null 2>&1
|
||||||
tool_log "uninstall finished"
|
tool_log "uninstall finished"
|
||||||
|
|
||||||
cd ..
|
cd ..
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get -y install maven libprotobuf-dev openjdk-7-jre openjdk-7-jdk
|
apt-get -y install maven libprotobuf-dev openjdk-7-jre openjdk-7-jdk
|
5
binjitsu/install
Executable file
5
binjitsu/install
Executable file
|
@ -0,0 +1,5 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
#ctf-tools-pip install --upgrade 'git+https://github.com/binjitsu/binjitsu.git'
|
||||||
|
git clone --depth=1 'https://github.com/binjitsu/binjitsu.git'
|
||||||
|
ctf-tools-pip install --upgrade -e binjitsu
|
3
binjitsu/install-root-archlinux
Executable file
3
binjitsu/install-root-archlinux
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
pacman -Syu --noconfirm --needed binutils openssl libffi
|
|
@ -1,5 +1,6 @@
|
||||||
#!/bin/bash -e
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
apt-get -y install software-properties-common
|
||||||
apt-add-repository -y ppa:pwntools/binutils
|
apt-add-repository -y ppa:pwntools/binutils
|
||||||
apt-get update
|
apt-get update
|
||||||
apt-get -y install binutils-.*-linux-gnu libffi-dev libssl-dev
|
apt-get -y install binutils-.*-linux-gnu libffi-dev libssl-dev
|
3
binjitsu/uninstall
Executable file
3
binjitsu/uninstall
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
ctf-tools-pip uninstall -y binjitsu || true
|
4
burpsuite/install-root-archlinux
Executable file
4
burpsuite/install-root-archlinux
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
pacman -Syu --noconfirm --needed jre7-openjdk
|
|
@ -1,3 +1,4 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get -y install openjdk-7-jre
|
apt-get -y install openjdk-7-jre
|
|
@ -1,3 +1,4 @@
|
||||||
#!/bin/bash -e
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get -y install build-essential gcc g++ make cmake libboost-dev libprotobuf-dev protobuf-compiler libboost-thread-dev libboost-system-dev libboost-filesystem-dev libboost-program-options-dev libboost-date-time-dev libboost-regex-dev
|
apt-get -y install build-essential gcc g++ make cmake libboost-dev libprotobuf-dev protobuf-compiler libboost-thread-dev libboost-system-dev libboost-filesystem-dev libboost-program-options-dev libboost-date-time-dev libboost-regex-dev
|
3
crosstool/install-root-archlinux
Executable file
3
crosstool/install-root-archlinux
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
pacman -Syu --noconfirm gperf flex bison help2man gawk ncurses
|
|
@ -1,3 +1,4 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get -y install libasound2:i386 libasyncns0:i386 libatk1.0-0:i386 libc6:i386 libcaca0:i386 libcairo2:i386 libdatrie1:i386 libdbus-1-3:i386 libdrm2:i386 libexpat1:i386 libffi6:i386 libflac8:i386 libfontconfig1:i386 libfreetype6:i386 libgdk-pixbuf2.0-0:i386 libgl1-mesa-glx:i386 libglapi-mesa:i386 libglib2.0-0:i386 libglu1-mesa:i386 libgraphite2-3:i386 libgtk2.0-0:i386 libharfbuzz0b:i386 libjbig0:i386 libjpeg-turbo8:i386 libjson-c2:i386 liblzma5:i386 libncursesw5:i386 libogg0:i386 libpango-1.0-0:i386 libpangocairo-1.0-0:i386 libpangoft2-1.0-0:i386 libpcre3:i386 libpixman-1-0:i386 libpng12-0:i386 libpulse0:i386 libsdl1.2debian:i386 libsdl-image1.2:i386 libsdl-ttf2.0-0:i386 libselinux1:i386 libslang2:i386 libsndfile1:i386 libthai0:i386 libtiff5:i386 libtinfo5:i386 libvorbis0a:i386 libvorbisenc2:i386 libwebp5:i386 libwrap0:i386 libx11-6:i386 libx11-xcb1:i386 libxau6:i386 libxcb1:i386 libxcb-dri2-0:i386 libxcb-dri3-0:i386 libxcb-glx0:i386 libxcb-present0:i386 libxcb-render0:i386 libxcb-shm0:i386 libxcb-sync1:i386 libxcomposite1:i386 libxcursor1:i386 libxdamage1:i386 libxdmcp6:i386 libxext6:i386 libxfixes3:i386 libxi6:i386 libxinerama1:i386 libxrandr2:i386 libxrender1:i386 libxshmfence1:i386 libxxf86vm1:i386 zlib1g:i386
|
apt-get -y install libasound2:i386 libasyncns0:i386 libatk1.0-0:i386 libc6:i386 libcaca0:i386 libcairo2:i386 libdatrie1:i386 libdbus-1-3:i386 libdrm2:i386 libexpat1:i386 libffi6:i386 libflac8:i386 libfontconfig1:i386 libfreetype6:i386 libgdk-pixbuf2.0-0:i386 libgl1-mesa-glx:i386 libglapi-mesa:i386 libglib2.0-0:i386 libglu1-mesa:i386 libgraphite2-3:i386 libgtk2.0-0:i386 libharfbuzz0b:i386 libjbig0:i386 libjpeg-turbo8:i386 libjson-c2:i386 liblzma5:i386 libncursesw5:i386 libogg0:i386 libpango-1.0-0:i386 libpangocairo-1.0-0:i386 libpangoft2-1.0-0:i386 libpcre3:i386 libpixman-1-0:i386 libpng12-0:i386 libpulse0:i386 libsdl1.2debian:i386 libsdl-image1.2:i386 libsdl-ttf2.0-0:i386 libselinux1:i386 libslang2:i386 libsndfile1:i386 libthai0:i386 libtiff5:i386 libtinfo5:i386 libvorbis0a:i386 libvorbisenc2:i386 libwebp5:i386 libwrap0:i386 libx11-6:i386 libx11-xcb1:i386 libxau6:i386 libxcb1:i386 libxcb-dri2-0:i386 libxcb-dri3-0:i386 libxcb-glx0:i386 libxcb-present0:i386 libxcb-render0:i386 libxcb-shm0:i386 libxcb-sync1:i386 libxcomposite1:i386 libxcursor1:i386 libxdamage1:i386 libxdmcp6:i386 libxext6:i386 libxfixes3:i386 libxi6:i386 libxinerama1:i386 libxrandr2:i386 libxrender1:i386 libxshmfence1:i386 libxxf86vm1:i386 zlib1g:i386
|
4
dirb/install-root-archlinux
Executable file
4
dirb/install-root-archlinux
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
pacman -Syu --noconfirm --needed curl gnutls
|
|
@ -1,3 +1,4 @@
|
||||||
#!/bin/bash -e
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get -y install libcurl4-gnutls-dev
|
apt-get -y install libcurl4-gnutls-dev
|
|
@ -1,7 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
|
|
||||||
mkdir bin
|
|
||||||
git clone --depth 1 https://github.com/maurosoria/dirs3arch.git
|
|
||||||
|
|
||||||
cd bin
|
|
||||||
ln -s ../dirs3arch/dirs3arch.py .
|
|
7
dirsearch/install
Executable file
7
dirsearch/install
Executable file
|
@ -0,0 +1,7 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
mkdir bin
|
||||||
|
git clone --depth 1 https://github.com/maurosoria/dirsearch.git
|
||||||
|
|
||||||
|
cd bin
|
||||||
|
ln -s ../dirsearch/dirsearch.py .
|
4
dislocker/install-root-archlinux
Executable file
4
dislocker/install-root-archlinux
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
pacman -Syu --noconfirm --needed mbedtls fuse
|
|
@ -1,3 +1,4 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get -y install libfuse-dev libpolarssl-dev
|
apt-get -y install libfuse-dev libpolarssl-dev
|
|
@ -1,3 +1,4 @@
|
||||||
#!/bin/bash -e
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get install -y libqt5widgets5
|
apt-get install -y libqt5widgets5
|
4
firmware-mod-kit/install-root-archlinux
Executable file
4
firmware-mod-kit/install-root-archlinux
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
pacman -Syu --noconfirm --needed zlib xz python2-magic
|
|
@ -1,3 +1,4 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get -y install liblzma-dev python-magic zlib1g-dev
|
apt-get -y install liblzma-dev python-magic zlib1g-dev
|
|
@ -1,13 +1,3 @@
|
||||||
#!/bin/bash -e
|
#!/bin/bash -e
|
||||||
|
|
||||||
git clone --depth 1 https://github.com/ALSchwalm/foresight.git
|
ctf-tools-pip3 install --upgrade 'git+https://github.com/ALSchwalm/foresight.git'
|
||||||
|
|
||||||
# python3 virtualenv
|
|
||||||
virtualenv -p $(which python3) python3
|
|
||||||
source python3/bin/activate
|
|
||||||
pip install -e foresight
|
|
||||||
|
|
||||||
mkdir -p bin
|
|
||||||
cd bin
|
|
||||||
ln -s ../python3/bin/foresee .
|
|
||||||
cd ..
|
|
||||||
|
|
3
foresight/uninstall
Executable file
3
foresight/uninstall
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
ctf-tools-pip3 uninstall -y foresight || true
|
4
gdb/install-root-archlinux
Executable file
4
gdb/install-root-archlinux
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
pacman -Syu --needed --noconfirm texinfo
|
|
@ -1,3 +1,4 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get -y install texinfo
|
apt-get -y install texinfo
|
28
gef/install
Executable file
28
gef/install
Executable file
|
@ -0,0 +1,28 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
git clone --depth 1 https://github.com/hugsy/gef.git
|
||||||
|
|
||||||
|
mkdir bin
|
||||||
|
cat > bin/gdb-gef <<EOF
|
||||||
|
#!/bin/sh
|
||||||
|
exec gdb -q -ex init-gef "$@"
|
||||||
|
EOF
|
||||||
|
chmod +rx bin/gdb-gef
|
||||||
|
|
||||||
|
cd gef
|
||||||
|
if ! grep "init-gef" ~/.gdbinit; then
|
||||||
|
cat >> ~/.gdbinit <<EOF
|
||||||
|
|
||||||
|
####
|
||||||
|
# added by ctf-tools
|
||||||
|
define init-gef
|
||||||
|
source $PWD/gef.py
|
||||||
|
end
|
||||||
|
document init-gef
|
||||||
|
Initializes the GEF (GDB Enhanced Features) plugin
|
||||||
|
end
|
||||||
|
####
|
||||||
|
|
||||||
|
EOF
|
||||||
|
fi
|
|
@ -1,3 +0,0 @@
|
||||||
#!/bin/bash -e
|
|
||||||
|
|
||||||
apt-get -y install libssl-dev
|
|
4
hashpump-partialhash/install-root-archlinux
Executable file
4
hashpump-partialhash/install-root-archlinux
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
pacman -Syu --noconfirm --needed openssl
|
4
hashpump-partialhash/install-root-debian
Executable file
4
hashpump-partialhash/install-root-debian
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
apt-get -y install libssl-dev
|
|
@ -5,7 +5,7 @@ cd HashPump
|
||||||
make -j $(nproc)
|
make -j $(nproc)
|
||||||
cd ..
|
cd ..
|
||||||
|
|
||||||
pip install -e HashPump
|
ctf-tools-pip install --upgrade -e HashPump
|
||||||
|
|
||||||
mkdir bin
|
mkdir bin
|
||||||
cd bin
|
cd bin
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
#!/bin/bash -e
|
|
||||||
|
|
||||||
apt-get -y install libssl-dev
|
|
4
hashpump/install-root-archlinux
Executable file
4
hashpump/install-root-archlinux
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
pacman -Syu --noconfirm --needed openssl
|
4
hashpump/install-root-debian
Executable file
4
hashpump/install-root-debian
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
apt-get -y install libssl-dev
|
3
hashpump/uninstall
Executable file
3
hashpump/uninstall
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
ctf-tools-pip uninstall -y hashpumpy || true
|
5
honggfuzz/install-root-archlinux
Executable file
5
honggfuzz/install-root-archlinux
Executable file
|
@ -0,0 +1,5 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
apt-get install libbfd-dev libunwind8-dev
|
||||||
|
pacman -Syu --noconfirm --needed libunwind binutils
|
|
@ -1,3 +1,4 @@
|
||||||
#!/bin/bash -e
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get install libbfd-dev libunwind8-dev
|
apt-get install libbfd-dev libunwind8-dev
|
4
littleblackbox/install-root-archlinux
Executable file
4
littleblackbox/install-root-archlinux
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
pacman -Syu --noconfirm --needed openssl libpcap sqlite
|
|
@ -1,3 +1,4 @@
|
||||||
#!/bin/bash -e
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get -y install libssl-dev libpcap-dev libsqlite3-dev
|
apt-get -y install libssl-dev libpcap-dev libsqlite3-dev
|
3
mitmproxy/install
Executable file
3
mitmproxy/install
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
ctf-tools-pip install --upgrade mitmproxy
|
3
mitmproxy/uninstall
Executable file
3
mitmproxy/uninstall
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
ctf-tools-pip uninstall -y mitmproxy || true
|
4
msieve/install-root-archlinux
Executable file
4
msieve/install-root-archlinux
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
pacman -Syu --noconfirm --needed gmp
|
|
@ -1,3 +1,4 @@
|
||||||
#!/bin/bash -e
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get -y install libgmp3-dev libgmp-dev
|
apt-get -y install libgmp3-dev libgmp-dev
|
|
@ -1 +0,0 @@
|
||||||
apt-get -y install nasm libssl-dev libpcap-dev subversion curl autoconf libtool libc++-dev llvm-3.3-dev clang-3.3 unzip
|
|
5
panda/install-root-archlinux
Executable file
5
panda/install-root-archlinux
Executable file
|
@ -0,0 +1,5 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
pacman -Syu --needed --noconfirm nasm openssl libpcap subversion curl \
|
||||||
|
autoconf libtool libc++ unzip clang llvm
|
5
panda/install-root-debian
Executable file
5
panda/install-root-debian
Executable file
|
@ -0,0 +1,5 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
apt-get -y install nasm libssl-dev libpcap-dev subversion curl \
|
||||||
|
autoconf libtool libc++-dev llvm-3.3-dev clang-3.3 unzip
|
|
@ -1,3 +1,4 @@
|
||||||
#!/bin/bash -e
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get -y install libc6-dev-i386 libc6-dev
|
apt-get -y install libc6-dev-i386 libc6-dev
|
26
peda/install
26
peda/install
|
@ -1,5 +1,29 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
git clone --depth 1 https://github.com/longld/peda.git
|
git clone --depth 1 https://github.com/longld/peda.git
|
||||||
|
|
||||||
|
mkdir bin
|
||||||
|
cat > bin/gdb-peda <<EOF
|
||||||
|
#!/bin/sh
|
||||||
|
exec gdb -q -ex init-peda "$@"
|
||||||
|
EOF
|
||||||
|
chmod +rx bin/gdb-peda
|
||||||
|
|
||||||
cd peda
|
cd peda
|
||||||
echo "source $PWD/peda.py" >> ~/.gdbinit
|
#echo "source $PWD/peda.py" >> ~/.gdbinit
|
||||||
|
if ! grep "init-peda" ~/.gdbinit; then
|
||||||
|
cat >> ~/.gdbinit <<EOF
|
||||||
|
|
||||||
|
####
|
||||||
|
# added by ctf-tools
|
||||||
|
define init-peda
|
||||||
|
source $PWD/peda.py
|
||||||
|
end
|
||||||
|
document init-peda
|
||||||
|
Initializes the PEDA (Python Exploit Development Assistant for GDB) framework
|
||||||
|
end
|
||||||
|
####
|
||||||
|
|
||||||
|
EOF
|
||||||
|
fi
|
||||||
|
|
29
pwndbg/install
Executable file
29
pwndbg/install
Executable file
|
@ -0,0 +1,29 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
git clone --depth 1 git clone https://github.com/zachriggle/pwndbg
|
||||||
|
|
||||||
|
mkdir bin
|
||||||
|
cat >> bin/pwndbg <<EOF
|
||||||
|
#!/bin/sh
|
||||||
|
exec gdb -q -ex init-pwndbg "$@"
|
||||||
|
EOF
|
||||||
|
chmod +rx bin/pwndbg
|
||||||
|
|
||||||
|
cd pwndbg
|
||||||
|
if ! grep "init-pwndbg" ~/.gdbinit; then
|
||||||
|
cat >> ~/.gdbinit <<EOF
|
||||||
|
|
||||||
|
####
|
||||||
|
# added by ctf-tools
|
||||||
|
define init-pwndbg
|
||||||
|
source $PWD/gdbinit.py
|
||||||
|
end
|
||||||
|
document init-pwndbg
|
||||||
|
Initializes the pwndbg gdb extension (https://github.com/zachriggle/pwndbg)
|
||||||
|
end
|
||||||
|
####
|
||||||
|
|
||||||
|
EOF
|
||||||
|
fi
|
||||||
|
|
|
@ -1,30 +1,4 @@
|
||||||
#!/bin/bash -e
|
#!/bin/bash -e
|
||||||
|
|
||||||
# pwnutils
|
git clone --depth=1 https://github.com/Gallopsled/pwntools.git
|
||||||
git clone --depth 1 https://github.com/Gallopsled/pwntools.git
|
ctf-tools-pip install --upgrade -e pwntools
|
||||||
cd pwntools
|
|
||||||
pip install -r requirements.txt
|
|
||||||
cd ..
|
|
||||||
|
|
||||||
# binutils
|
|
||||||
#curl https://ftp.gnu.org/gnu/binutils/binutils-2.25.tar.gz | tar xz
|
|
||||||
#mkdir binutils-build
|
|
||||||
#cd binutils-build
|
|
||||||
#export AR=ar
|
|
||||||
#export AS=as
|
|
||||||
#../binutils-2.25/configure --prefix=$(dirname $PWD)/binutils-inst --enable-multilib
|
|
||||||
#make -j $(nproc)
|
|
||||||
#make install
|
|
||||||
|
|
||||||
mkdir -p bin
|
|
||||||
cd bin
|
|
||||||
for i in $(yes n | pip uninstall pwntools | grep bin)
|
|
||||||
do
|
|
||||||
mv $i $(basename $i).real
|
|
||||||
cat <<END > $(basename $i)
|
|
||||||
#!/bin/bash
|
|
||||||
PATH=/usr/bin:\$PATH $PWD/$(basename $i).real "\$@"
|
|
||||||
END
|
|
||||||
chmod 755 $(basename $i)
|
|
||||||
done
|
|
||||||
cd ..
|
|
||||||
|
|
3
pwntools/install-root-archlinux
Executable file
3
pwntools/install-root-archlinux
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
pacman -Syu --noconfirm --needed binutils openssl libffi
|
6
pwntools/install-root-ubuntu
Executable file
6
pwntools/install-root-ubuntu
Executable file
|
@ -0,0 +1,6 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
apt-get -y install software-properties-common
|
||||||
|
apt-add-repository -y ppa:pwntools/binutils
|
||||||
|
apt-get update
|
||||||
|
apt-get -y install binutils-.*-linux-gnu libffi-dev libssl-dev
|
3
pwntools/uninstall
Executable file
3
pwntools/uninstall
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
ctf-tools-pip uninstall -y pwntools || true
|
|
@ -1,4 +1,4 @@
|
||||||
#!/bin/bash -e
|
#!/bin/bash -e
|
||||||
|
|
||||||
git clone --depth 1 https://github.com/mwielgoszewski/python-paddingoracle.git
|
git clone --depth 1 https://github.com/mwielgoszewski/python-paddingoracle.git
|
||||||
pip install -e python-paddingoracle
|
ctf-tools-pip install -e python-paddingoracle
|
||||||
|
|
3
python-paddingoracle/uninstall
Executable file
3
python-paddingoracle/uninstall
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
ctf-tools-pip uninstall -y python-paddingoracle || true
|
|
@ -2,6 +2,10 @@
|
||||||
|
|
||||||
curl http://wiki.qemu-project.org/download/qemu-2.4.1.tar.bz2 | tar xvj
|
curl http://wiki.qemu-project.org/download/qemu-2.4.1.tar.bz2 | tar xvj
|
||||||
cd qemu-2.4.1
|
cd qemu-2.4.1
|
||||||
./configure --prefix=$(dirname $PWD)
|
if [[ "$(python --version 2>&1)" =~ Python\ 3 ]]; then
|
||||||
|
./configure "--prefix=$(dirname $PWD)" "--python=$(which python2)"
|
||||||
|
else
|
||||||
|
./configure "--prefix=$(dirname $PWD)"
|
||||||
|
fi
|
||||||
make -j $(nproc)
|
make -j $(nproc)
|
||||||
make install
|
make install
|
||||||
|
|
3
qemu/install-root-archlinux
Executable file
3
qemu/install-root-archlinux
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
pacman -Syu --noconfirm --needed python2
|
3
qemu/install-root-debian
Executable file
3
qemu/install-root-debian
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash -e
|
||||||
|
|
||||||
|
apt-get install -y python
|
6
qira/install-root-archlinux
Executable file
6
qira/install-root-archlinux
Executable file
|
@ -0,0 +1,6 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
pacman -Syu --noconfirm --needed python2-pip openssl libjpeg-turbo zlib \
|
||||||
|
unzip wget graphviz gmp llvm clang ocaml llvm-ocaml python2-virtualenv \
|
||||||
|
wget flex bison libtool automake autoconf pkg-config libevent glib2
|
|
@ -1,4 +1,5 @@
|
||||||
#!/bin/bash -e
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get -y install python-pip libssl-dev build-essential python-dev python-pip debootstrap libjpeg-dev zlib1g-dev unzip wget graphviz software-properties-common libgmp-dev llvm-3.4-dev time clang-3.4 ocaml ocaml-native-compilers camlp4-extra opam clang python-virtualenv wget flex bison libtool automake autoconf autotools-dev pkg-config libglib2.0-dev libevent-2.0-5
|
apt-get -y install python-pip libssl-dev build-essential python-dev python-pip debootstrap libjpeg-dev zlib1g-dev unzip wget graphviz software-properties-common libgmp-dev llvm-3.4-dev time clang-3.4 ocaml ocaml-native-compilers camlp4-extra opam clang python-virtualenv wget flex bison libtool automake autoconf autotools-dev pkg-config libglib2.0-dev libevent-2.0-5
|
||||||
apt-get -y build-dep qemu
|
apt-get -y build-dep qemu
|
4
snowman/install-root-archlinux
Executable file
4
snowman/install-root-archlinux
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
pacman -Syu --needed --noconfirm boost boost-libs cmake
|
|
@ -1,3 +1,4 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get -y install libboost-dev cmake libqt4-dev
|
apt-get -y install libboost-dev cmake libqt4-dev
|
6
sonic-visualizer/install-root-archlinux
Executable file
6
sonic-visualizer/install-root-archlinux
Executable file
|
@ -0,0 +1,6 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
pacman -Syu --noconfirm --needed bzip2 fftw libsndfile libsamplerate \
|
||||||
|
vamp-plugin-sdk rubberband sord liblo liblrdf liboggz libfishsound \
|
||||||
|
libid3tag portaudio libmad qt5-base
|
|
@ -1,3 +1,4 @@
|
||||||
#!/bin/bash -e
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get -y install libbz2-dev libfftw3-dev libsndfile1-dev libsamplerate0-dev vamp-plugin-sdk librubberband-dev libsord-dev liblo-dev liblrdf0-dev liboggz2-dev libfishsound1-dev libid3tag0-dev libportaudio-dev libmad0-dev qt5-qmake
|
apt-get -y install libbz2-dev libfftw3-dev libsndfile1-dev libsamplerate0-dev vamp-plugin-sdk librubberband-dev libsord-dev liblo-dev liblrdf0-dev liboggz2-dev libfishsound1-dev libid3tag0-dev libportaudio-dev libmad0-dev qt5-qmake
|
4
sqlmap/install-root-archlinux
Executable file
4
sqlmap/install-root-archlinux
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
pacman -Syu --noconfirm --needed sqlite
|
|
@ -1,3 +1,4 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get -y install libsqlite3-dev
|
apt-get -y install libsqlite3-dev
|
4
sslsplit/install-root-archlinux
Executable file
4
sslsplit/install-root-archlinux
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
pacman -Syu --noconfirm --needed libevent
|
|
@ -1,3 +1,4 @@
|
||||||
#!/bin/bash -e
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get -y install libevent-dev
|
apt-get -y install libevent-dev
|
|
@ -1,3 +1,4 @@
|
||||||
#!/bin/bash -e
|
#!/bin/bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
apt-get -y install automake1.4
|
apt-get -y install automake1.4
|
|
@ -1,9 +1,3 @@
|
||||||
#!/bin/bash -e
|
#!/bin/bash -e
|
||||||
|
|
||||||
git clone --depth 1 https://github.com/hellman/xortool.git
|
ctf-tools-pip install --upgrade 'git+https://github.com/hellman/xortool.git'
|
||||||
pip install -e ./xortool
|
|
||||||
|
|
||||||
mkdir -p bin
|
|
||||||
cd bin
|
|
||||||
ln -s ../xortool/xortool/{xortool,xortool-xor} .
|
|
||||||
cd ..
|
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
#!/bin/bash -e
|
#!/bin/bash -e
|
||||||
|
|
||||||
pip uninstall -y xortool
|
ctf-tools-pip uninstall -y xortool || true
|
||||||
|
|
Loading…
Reference in a new issue