README.md
Rendering markdown...
# Makefile - GoSign Desktop MitM PoC
DEBNAME := gosigndesktop_6.6.6_amd64.deb
PKGDIR := deb-src
OUTDIR := .
DEBPATH := $(OUTDIR)/$(DEBNAME)
VENV_DIR := .venv
PYTHON3 := python3
VENV_PYTHON := $(VENV_DIR)/bin/python
PROXY_PORT := 8666
.PHONY: all build deb venv run unproxy clean
all: build
build: deb venv
deb:
@echo "Building .deb from $(PKGDIR) -> $(DEBPATH)"
@if [ ! -d "$(PKGDIR)" ]; then \
echo "ERROR: directory '$(PKGDIR)' not found"; exit 1; \
fi
dpkg-deb --build "$(PKGDIR)" "$(DEBPATH)"
venv:
@echo "Creating virtualenv in $(VENV_DIR)"
@if [ ! -d "$(VENV_DIR)" ]; then \
$(PYTHON3) -m venv "$(VENV_DIR)"; \
else \
echo "Virtualenv already exists"; \
fi
$(VENV_PYTHON) -m pip install -r requirements.txt
run:
@echo "Starting mitmdump with gosigndesktop_mitm_poc.py on port ${PROXY_PORT}"
"$(VENV_DIR)"/bin/mitmdump -s gosigndesktop_mitm_poc.py --listen-port ${PROXY_PORT}
unproxy:
@echo "Removing proxy settings from GoSign Desktop config (~/.gosign/dike.conf)"
@sed -i 's/^use=.*/use=NOPROXY/; s/^address=.*/address=/; s/^port=.*/port=/' ~/.gosign/dike.conf > /dev/null
clean: unproxy
@echo "Cleaning generated .deb and virtualenv"
@rm -f "$(DEBPATH)"
@rm -rf "$(VENV_DIR)"
@rm -rf __pycache__