str_cg 发表于 2022-4-1 12:48

python洞见者监控

本帖最后由 str_cg 于 2022-4-1 13:01 编辑

本来requets请求一直提交不出去,用burpsuite重放又正常,折腾了几天,用@limuyan44提供的思路,发现他对host length进行了验证,修改成实际提交的正确值就可以了。
抓包我用的小黄鸟,其他的也可以,抓包软件设置好后,打开洞见者,下拉刷新,抓到https://app.anonym-hi.com/base/mobile/api/tasklist 这个链接,封装https请求就可以了。
代码很简单。
放进了云函数里自动触发,推送的库我用的pushplus   http://pushplus.hxtrip.com/login?redirectUrl=/message
附上完整代码:
# -*- coding: utf8 -*-
import requests
#pushplus的推送
def send(token, title, content, template):
    data={
      "token": token,
      "title": title,
      "content": content,
      "template": template
    }
    headers={"Content-Type": "application/json"}
    res=requests.post("http://pushplus.hxtrip.com/send", headers=headers, json =data)
    print(res.status_code,res.text)
#监控主体
def main_handler(event, context):
    headers = {
      'sign': '抓包的值',
      'token': '抓包的值',
      'RN': '0',
      'flag': '1',
      'lang': 'zh_cn',
      'deviceid': '抓包的值',
      'deviceType': '抓包的值',
      'osType': 'Xiaomi',
      'versionCode': '28',
      'versionName': '2.3.5',
      'Content-Type': 'application/json; charset=UTF-8',
      #注意服务器会对Content-Length进行验证
      'Content-Length': '129',
      'Host': 'app.anonym-hi.com',
      'Connection': 'Keep-Alive',
      'Accept-Encoding': 'gzip',
      'User-Agent': 'okhttp/3.12.0',
    }

    data = '{"tenant_id":"","orderType":1,"country":"","current":1,"lnglat":"抓包的值","size":10,"city":"抓包的值"}'

    response = requests.post('https://app.anonym-hi.com/base/mobile/api/tasklist', headers=headers, data=data,
                           verify=False)

    res_data = response.json()["data"]["records"]

    messbox = ""

    for i in res_data:
      if i["surplus"] == 0:
            print(f'{i["items"]["task_name"]}--[{i["restaurant_name"]}]一无所有')
      if i["surplus"] != 0:
            value = f'{i["items"]["task_name"]}--[{i["restaurant_name"]}]有库存了,快冲!!!'
            print(value)
            messbox = messbox + value
    if messbox:
      send("pushplus的cookie", "洞见者监控", f"{messbox}", "html")
    return 0
   

叫我小王叔叔 发表于 2022-4-1 14:45

大佬这么快就整理好了,我就想问问那个Content-Length那个如何计算?我以后遇到这种情况该怎么办?

str_cg 发表于 2022-4-1 14:47

叫我小王叔叔 发表于 2022-4-1 14:45
大佬这么快就整理好了,我就想问问那个Content-Length那个如何计算?我以后遇到这种情况该怎么办?

可以复制成curl ,或者一个一个+1试,能返回正确的值就行了

叫我小王叔叔 发表于 2022-4-1 14:49

str_cg 发表于 2022-4-1 14:47
可以复制成curl ,或者一个一个+1试,能返回正确的值就行了

这好像是最原始的办法了吧,不懂这玩意儿怎么算,是算字符串长度吗?

serlinna 发表于 2022-4-1 15:38

学习了,6666!

wuaikirin 发表于 2022-4-1 17:43

推送可以自己搞一个企业微信进行推送,content-length请求的时候不用写死,请求出去的时候回自动带上

str_cg 发表于 2022-4-1 19:09

wuaikirin 发表于 2022-4-1 17:43
推送可以自己搞一个企业微信进行推送,content-length请求的时候不用写死,请求出去的时候回自动带上

不写死对端服务器验证不通过{:301_1005:}

MJF 发表于 2022-4-4 19:30

新人问一个很简单得问题,怎么封装https请求{:1_907:}

MJF 发表于 2022-4-4 19:51

MJF 发表于 2022-4-4 19:30
新人问一个很简单得问题,怎么封装https请求

想把我的手机寄给楼主该了{:1_911:}

abcde51111 发表于 2022-5-9 21:11

ios 14
抓到了所有的值
请求报错:
{"code":"RX2000","data":{},"fail":true,"msg":"请求参数校验失败","success":false,"timestamp":"2022-05-09T13:14:32.521Z"}

将 headers 替换为抓包的所有内容
就提示
ValueError: Invalid header name b'sign:'

删除sign
还是报错
{"code":"RX2000","data":{},"fail":true,"msg":"请求参数校验失败","success":false,"timestamp":"2022-05-09T13:15:15.311Z"}


楼主有遇到这种情况吗
页: [1] 2
查看完整版本: python洞见者监控