How to create and customize a Docker image for Burp Suite Professional Edition

Adrian CITU
2 min readOct 4, 2017

This ticket explains how to create and customize a Docker image for the Burp Suite Professional Edition. The main difference with a creation of an image for the Burp Suite Free Edition is that you will need to register a valid license during the image creation.

  • Create a Dockerfile for the initial image. You will need to have the burpsuite_pro_Vx.y.z jar file; the jar should be in the bin folder that is on the same level as the Dockerfile. The Docker file looks like this:
FROM openjdk:8u121-jre-alpine RUN apk --update add openssl ca-certificates ttf-dejavu && \ rm -f /var/cache/apk/* && \ mkdir -p /opt/burp /work && \ adduser -D -s /bin/sh user user && \ chown -R user /work 
ADD bin/* /opt/burp/
RUN chown -R user /home/user/.*
USER user
WORKDIR /work EXPOSE 8080
  • Build the image:
docker build -t burppro .
  • Run the image. It will be needed to run the Burp in the UI mode in order to register the license and (eventually) to customize the application (like installing extensions); unfortunately it is not possible to install extensions directly from the command line, so you will have to do it manually.
docker run -ti \
-e DISPLAY=$DISPLAY \
-v /tmp/.X11-unix:/tmp/.X11-unix\
burppro \
java -jar /opt/burp/burpsuite_pro.jar
  • Once you’ve finished the customization, commit the new image in order to save the changes made on the initial image.
docker commit <burppro_container_id> burppro_with_license_with_extension
  • Run the new image (in headless mode).
docker run -p8080:8080 -ti \
burppro_with_license_with_extension \
java -jar -Djava.awt.headless=true /opt/burp/burpsuite_pro.jar

--

--

Adrian CITU
0 Followers

I’m a software engineer living in Brussels. My principal point of interest is software development especially how to write secure and robust software.