Skip to content

Wakeful-Cloud/cpp-proxy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

C++ Proxy

C++ proxy/intercept prototypes

Prototypes

Documentation

Architecture

This repository contains Docker images for x86-64 (amd64) and ARM v8 64 bit (arm64-v8) in order to simulate running the proxies in a variety of environments including servers, desktops, and mobile/embedded systems. You will likely need to setup QEMU for development unless you're using Docker Desktop on non-Linux systems.

Docker

  1. Install Docker
  2. Build:
docker build . -f amd64.dockerfile -t cpp-proxy:amd64
# Or
docker build . -f arm64-v8.dockerfile -t cpp-proxy:arm64-v8
  1. Run:
# Note: CAP_SYS_PTRACE is required for process_vm_readv and QBDIPreload to work
docker run -it --cap-add CAP_SYS_PTRACE -v "$(pwd):/home/dev/cpp-proxy" --name cpp-proxy-amd64 cpp-proxy:amd64
# Or
docker run -it --cap-add CAP_SYS_PTRACE -v "$(pwd):/home/dev/cpp-proxy" --name cpp-proxy-arm64-v8 cpp-proxy:arm64-v8
  1. Notes:
  • The default user (dev) has password-less sudo setup and uses Zsh
  • The /home/dev/cpp-proxy directory in the container is mapped to the repository root directory on the host, but you will probably need to chown it (eg: sudo chown dev:dev /home/dev -R)