利用mitmproxy进行抓包

  这几天在利用mitmdump抓取手机app包的时候,一直连接不上去,非常坑,首先我是在window平台,只能使用mitmdump,当时找主机的ip的时候,没有找到我主机的ip。后来才知道怎么找到,然后找到正确的主机ip之后,要将防火墙关闭,并在手机上配置相应的信息。

     1.寻找正确的ip

        打开控制面板:

              (1)直接点击图标打开(普通程序员)

               (2)在cmd中输入control(屌丝程序员)

    

          点击网络和Intenet

     

          点击网络和共享中心,这就是你连接的wifi,你需要手机配置当前的wifi的ip,点击右侧的wlan

           

                               

                       点击详细信息,这一项就是你主机的ip

                               

 

 

     2   关闭防火墙

             找到主机真正的ip之后,将防火墙进行关闭,打开window defender,

点击防火墙,将你正在使用中的网络的防火墙关闭

 

3  配置手机

            这个就省略了,最后访问mitm.it这个网站,选择安卓,下载相应的证书,这样就可以。

 

  脚本可以参考这个https://yq.aliyun.com/articles/603782?utm_content=m_1000003864

  以及官网github的例子:https://github.com/mitmproxy/mitmproxy/tree/master/examples/simple

   下面在一些简介的例子:

 (1) 将请求的连接的代码进行更改,下面是对css更改,将字体进行相反

           

from mitmproxy import http


def response(flow: http.HTTPFlow) -> None:
    reflector = b"<style>body {transform: scaleX(-1);}</style></head>"
    flow.response.content = flow.response.content.replace(b"</head>", reflector)

 

(2) 将你请求的网址进行更改:

def request(flow: http.HTTPFlow) -> None:
    # pretty_url takes the "Host" header of the request into account, which
    # is useful in transparent mode where we usually only have the IP otherwise.
    ctx.log.info(str(flow.request.pretty_url))
   
    if "m.baidu.com" in  flow.request.pretty_url :
        flow.response = http.HTTPResponse.make(
            200,  # (optional) status code
            b"Hello World",  # (optional) content
            {"Content-Type": "text/html"}  # (optional) headers
)

当你请求的url含有baidu时,就会返回兹定于的内容

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值