1.下载mitmproxy

wget https://snapshots.mitmproxy.org/4.0.4/mitmproxy-4.0.4-linux.tar.gz

./mitmweb -p 9000 --web-iface=0.0.0.0 --web-port 9001 --insecure -b 127.0.0.1

tmp目录下没有创建remount的权限

运行命令

sudo mount -o remount,exec /tmp

再次尝试

./mitmweb -p 9000 --web-iface=0.0.0.0 --web-port 9001 --insecure -b 127.0.0.1

原因Glibc库太老

curl -O http://ftp.gnu.org/gnu/glibc/glibc-2.18.tar.gz

tar zxf glibc-2.18.tar.gz
cd glibc-2.18/
mkdir build
cd build/
../configure --prefix=/usr
make -j2
make install 

项目启动

./mitmweb -p 9000 --web-iface=0.0.0.0 --web-port 9001 --ssl-insecure --listen-host 127.0.0.1

 

http://10.224.43.149:9001/#/flows  就可以访问web

.mitmweb执行后,在user目录下回产生.mitmproxy证书目录
3.导出证书
Mimt: 证书在执行mimtdump后,生成在$User/.mimtproxy目录中

启动web以后会生成一个证书,trustStore是证书仓库,java默认路径在:/usr/lib/jvm/jre/lib/security/cacerts

进入仓库以后

导入证书

keytool -import -v -trustcacerts -alias mitmproxy -file /root/.mitmproxy/mitmproxy-ca-cert.cer -storepass changeit -keystore cacerts

keytool -list -keystore cacerts可以查看证书列表

keytool -list -keystore cacerts|grep mitm  可以查看mitmproxy的证书有没有导入

 

项目启动时启动参数加上

-Dhttps.proxyHost=127.0.0.1\
-Dhttps.proxyPort=9000 \

-Djavax.net.ssl.trustStore=/usr/lib/jvm/jre/lib/security/cacerts \
-Djavax.net.ssl.trustStorePassword=changeit \

最后将项目重启,即可抓包