From 14c359700b6b1d4408853f878931937ac586059c Mon Sep 17 00:00:00 2001 From: David Carlier Date: Mon, 4 Nov 2019 15:37:56 +0000 Subject: Basic docker build proposal. --- Dockerfile | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 Dockerfile (limited to 'Dockerfile') diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000..af85ee8d --- /dev/null +++ b/Dockerfile @@ -0,0 +1,21 @@ +FROM gcc:8.3.0 + +RUN apt-get update && apt-get install -y --no-install-recommends \ + automake \ + bison \ + clang \ + flex \ + gcc-8-plugin-dev \ + libc++-7-dev \ + libtool \ + libtool-bin \ + llvm-7-tools \ + python-setuptools \ + && rm -fr /var/lib/apt/lists/* +RUN mkdir /app +WORKDIR ["/app"] +COPY . . +ENV CC=gcc-8 +ENV CXX=g++-8 +ENV LLVM_CONFIG=llvm-config-7 +RUN make clean && make distrib && make tests -- cgit 1.4.1 From 67ae54c957926bd382433c2a08ebba9f1dd711da Mon Sep 17 00:00:00 2001 From: David Carlier Date: Mon, 4 Nov 2019 17:15:56 +0000 Subject: Using LLVM/GCC 9 tooling --- Dockerfile | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) (limited to 'Dockerfile') diff --git a/Dockerfile b/Dockerfile index af85ee8d..7defa8e9 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,21 +1,25 @@ -FROM gcc:8.3.0 - +FROM ubuntu:eoan RUN apt-get update && apt-get install -y --no-install-recommends \ automake \ bison \ + build-essential \ clang \ + clang-9 \ flex \ - gcc-8-plugin-dev \ - libc++-7-dev \ + gcc-9 \ + gcc-9-plugin-dev \ + libc++-9-dev \ libtool \ libtool-bin \ - llvm-7-tools \ + libglib2.0-dev \ + llvm-9-tools \ python-setuptools \ + wget \ && rm -fr /var/lib/apt/lists/* RUN mkdir /app WORKDIR ["/app"] COPY . . -ENV CC=gcc-8 -ENV CXX=g++-8 -ENV LLVM_CONFIG=llvm-config-7 +ENV CC=gcc-9 +ENV CXX=g++-9 +ENV LLVM_CONFIG=llvm-config-9 RUN make clean && make distrib && make tests -- cgit 1.4.1 From dede2e976400cec53099ab42fa3f4fa73e324d2c Mon Sep 17 00:00:00 2001 From: van Hauser Date: Tue, 5 Nov 2019 09:16:04 +0100 Subject: dockerfile additions --- Dockerfile | 4 +++- README.md | 8 ++++++++ docs/ChangeLog | 1 + 3 files changed, 12 insertions(+), 1 deletion(-) (limited to 'Dockerfile') diff --git a/Dockerfile b/Dockerfile index 7defa8e9..558968d8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,6 @@ FROM ubuntu:eoan +MAINTAINER David Carlier +LABEL "about"="AFLplusplus docker image" RUN apt-get update && apt-get install -y --no-install-recommends \ automake \ bison \ @@ -22,4 +24,4 @@ COPY . . ENV CC=gcc-9 ENV CXX=g++-9 ENV LLVM_CONFIG=llvm-config-9 -RUN make clean && make distrib && make tests +RUN make clean && make distrib && make install diff --git a/README.md b/README.md index e8d4e6a8..583b7df8 100644 --- a/README.md +++ b/README.md @@ -115,6 +115,14 @@ afl++ binaries by passing the STATIC=1 argument to make: $ make all STATIC=1 ``` +Note that afl++ is faster and better the newer the compilers used. +Hence gcc-9 and especially llvm-9 should be the compilers of choice. +If your distribution does not have them, you can use the Dockerfile: + +```shell +$ docker build -t aflplusplus +``` + ## 1) Challenges of guided fuzzing diff --git a/docs/ChangeLog b/docs/ChangeLog index 3a5961ad..3924226e 100644 --- a/docs/ChangeLog +++ b/docs/ChangeLog @@ -23,6 +23,7 @@ Version ++2.58d (dev): - llvm_mode: float splitting is now configured via AFL_LLVM_LAF_SPLIT_FLOATS - libtokencap: support for *BSD/OSX added - libcompcov floating point splitting support for qemu and unicorn + - Dockerfile by courtesy of devnexen - ripped regex.dictionary from Google afl PR - removed unnecessary warnings -- cgit 1.4.1