• ctf工具之:mitmproxy实践测试


    1、安装居然使用的pip

    pip install mitmproxy

    导入证书,密码为空

     

     2、启用mitmweb

    修改firefox的代理指向local:8080口即可
    pause

     直接可以查看方式

    搜索里输入login

    对于http协议  直接看到了密码原文

    3、后台日志方式

    录入和回放

    mitmdump -w baidu.txt
    pause 录制结束
    mitmdump -nC baidu.txt
    pause  回放结束
    

    在txt可以搜索关键字

    4、附加脚本方式

    这个例子可以看到对req和res的变量显示

    mitmdump -s lyc.py
    pause
    
    1. from mitmproxy import ctx
    2. # 所有发出的请求数据包都会被这个方法所处理
    3. # 所谓的处理,我们这里只是打印一下一些项;当然可以修改这些项的值直接给这些项赋值即可
    4. def request(flow):
    5. # 获取请求对象
    6. request = flow.request
    7. # 实例化输出类
    8. info = ctx.log.info
    9. # 打印请求的url
    10. info('-------------------------------------------->>>>>>>>>>')
    11. info(request.url)
    12. # 打印请求方法
    13. info(request.method)
    14. # 打印host头
    15. info(request.host)
    16. # 打印请求端口
    17. info(str(request.port))
    18. # 打印所有请求头部
    19. info(str(request.headers))
    20. # 打印cookie头
    21. info(str(request.cookies))
    22. # 所有服务器响应的数据包都会被这个方法处理
    23. # 所谓的处理,我们这里只是打印一下一些项
    24. def response(flow):
    25. # 获取响应对象
    26. response = flow.response
    27. # 实例化输出类
    28. info = ctx.log.info
    29. info('--------------------------------------------<<<<<<<<<<<<<<<<<')
    30. # 打印响应码
    31. info(str(response.status_code))
    32. # 打印所有头部
    33. info(str(response.headers))
    34. # 打印cookie头部
    35. info(str(response.cookies))
    36. # 打印响应报文内容
    37. info(str(response.text))

    比如附加header的例子

    mitmdump  -s addheader.py
    pause 录制结束
    
    1. #!/usr/bin/python
    2. # -*- coding: UTF-8 -*-
    3. """
    4. @author:chenshifeng
    5. @file:test_mitm.py
    6. @time:2020/11/29
    7. """
    8. from mitmproxy import http
    9. def request(flow: http.HTTPFlow):
    10. # 增加请求的头信息
    11. flow.request.headers["myheader"] = "shifeng"
    12. print(flow.request.headers)

  • 相关阅读:
    亚信安慧AntDB数据并行加载工具的实现(二)
    JAVA基础(三十六)——常用类之String类
    《网络协议》07. 其他协议
    Lua语法之简单变量
    基于springboot+vue的幼儿园管理系统 elementui
    Linux Server 终止后立即重启报错 bind error: Address already in use
    关于Swagger优化
    服务器常用端口号及作用
    Dubbo 面试题总结
    主主复制主从复制3台服务器部分不能同步问题
  • 原文地址:https://blog.csdn.net/viviliving/article/details/128119585