某团h5外卖接口几个参数的加密分析 Web逆向 原创

Nanda 2020-4-28 33045


声明:本文内容仅供学习交流,严禁用于商业用途,请于24小时内删除。


分享一下前几天分析某团时候的成果吧,供各位学习研究时参考,某些内容回复后再看哦。


1,targetUrl

https://h5.waimai.meituan.com/waimai/mindex/searchresults?queryType=12002&keyword=%E8%8D%AF%E5%BA%97&entranceId=0&qwTypeId=11002&mode=search

2,请求数据接口

POST 
https://i.waimai.meituan.com/openh5/search/poi?_=1586871613519&X-FOR-WITH=duzUTL47ENkYwtLJV8uw1K5WJu1zsDjhR%2BKQ8JghmTgMEi6vIqRh24yuKcNfML7kSNHRs5rM1vDwJYUmiTtzMBKx58ppSJaAa%2BDbJu8IDXIkMwAwj71QEGVaMTClPmV3HFylUsBZOL67l%2FGYl49gqFyduBFbsqQ%2BCsoKB1ihRhBkimwnFm6yZYo3bXsvZoPwrlTx1GfStlR46ZHaczyS9Q%3D%3D 
HTTP/1.1
Host: i.waimai.meituan.com
Connection: keep-alive
Content-Length: 1520
Accept: application/json
Sec-Fetch-Dest: empty
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36
DNT: 1
Content-Type: application/x-www-form-urlencoded
Origin: https://h5.waimai.meituan.com
Sec-Fetch-Site: same-site
Sec-Fetch-Mode: cors
Referer: https://h5.waimai.meituan.com/waimai/mindex/searchresults?queryType=12002&keyword=%E8%8D%AF%E5%BA%97&entranceId=0&qwTypeId=11002&mode=search
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8
Cookie: wm_order_channel=default;  _lx_utm=utm_source%3D60066; _lxsdk_cuid=17178eb30e2c8-0fb35522479496-4313f6a-100200-17178eb30e2c8;
geoType=2&cityId=1&secondCategoryId=&start=0&queryType=12002&keyword=%E8%8D%AF%E5%BA%97&categoryType=&entranceId=0&uuid=17178eb30e2c8-0fb35522479496-4313f6a-100200-17178eb30e2c8&platform=3&partner=4&originUrl=https%3A%2F%2Fh5.waimai.meituan.com%2Fwaimai%2Fmindex%2Fsearchresults%3FqueryType%3D12002%26keyword%3D%25E8%258D%25AF%25E5%25BA%2597%26entranceId%3D0%26qwTypeId%3D11002%26mode%3Dsearch&riskLevel=71&optimusCode=10&wm_latitude=&wm_longitude=&wm_actual_latitude=40115159&wm_actual_longitude=116403531&openh5_uuid=17178eb30e2c8-0fb35522479496-4313f6a-100200-17178eb30e2c8&_token=eJxVkWuPojAUhv8LifNliNByKyZmI4oMNx3Gy6ib%2BYBSFRHkUgTc7H%2FfouMkmzQ5T9%2B%2B5%2BRtzh8mNwOmB3ig8IBlrjhnegz.
o8l2ZYRlS0BcJyUgBMqAGmWV2%2F2mCxKsss82XI6b3GwiyzMpQ%2BmqVDyo8FEVGX%2Bw3QopQpKf1mNTCHAlJix7HHaVu5YexH3ZjHJLST7q7S8w9JC4OkwDXXIH9fHfMcVGeSfErK3HezJsU9wHkefgS4aa65EG%2Fo6MOGnUG444udbRBR1VecEJyP9lhM%2BjzL1nVNlEEoG2LLwHuPybTHzM0WDxvg9GUikgVBbBQUihQOw0OWhIkFkK1JVGgxN8JPklALAT3V4F2APneK7OQv0%2FhFRaoDxIpgSehHw0JT1J%2BNPk%2BD0AWiGKbMWoz0up%2FV%2FK8u3R91FqEh4QStprzQifT6jbwrovyjK29MS%2Ft2Ntanr1YDteHJG8iGIfBaj2P4VukTyvpeCpKD81qpKUZ72yKtJbQTblZh6WwMKLb%2B0Ak7tgzJ2qzOg0175Zoy4OGqiwa7EXtRNbTENhBspK5a1LX15njh36ekynWJaM4nQv9UNeux9VBOvGMIkjP2V5y9GoexXXyPvTWdR2%2BjRW6by%2FZQH9RHj4Ml2jGcqG%2Fxuvt8pZvoX1J0yluxGgMXKtKlru5V5DLq5tFkb1EmrURbf8yCsJyt9%2FIAnpLLeyo%2B8R8y4Soulb8Z4AMWzthx3RR%2Ba4KggnPxVpvbEk7pZlZ%2B9u0GlbAWUxITchGL7yVqp6coaIJoXGMF%2FrnLOTtFCeHnL8Uhexgi3BjsnUmMxWNkOBbnDF%2BtQapdfFm8ZUziJ1NzaFxGw93vDmbyOmxMRASIkM5rnLD7TN%2F%2FwFdkQnC

1,cookie分析 

Cookie: cssVersion=e12a4f9b;(与css字体反爬相关, 删除后就没有字体混淆了) 

wm_order_channel=default;(与labelList相关)  

_lx_utm=utm_source%3D60066; 

_lxsdk_cuid=17178eb30e2c8-0fb35522479496-4313f6a-100200-17178eb30e2c8;(两个与访问接口权限相关)


2,cuid生成

var Re = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36";
var screen = {
	height:768,
	width:1366
}
zr = function() {
	for (var t = 1 * new Date, n = 0; t === 1 * new Date && n < 200; )
		n++;
	return t.toString(16) + n.toString(16)
}
function createCookie() {
	var t = (screen.height * screen.width).toString(16);
	return zr() + "-" + Math.random().toString(16).replace(".", "") + "-" + function() {
		var t = Re
			, n = void 0
			, e = void 0
			, i = []
			, r = 0;
		function o(t, n) {
			var e = void 0
				, r = 0;
			for (e = 0; e < n.length; e++)
				r |= i[e] << 8 * e;
			return t ^ r
		}
		for (n = 0; n < t.length; n++)
			e = t.charCodeAt(n),
				i.unshift(255 & e),
			4 <= i.length && (r = o(r, i),
				i = []);
		return 0 < i.length && (r = o(r, i)),
			r.toString(16)
	}() + "-" + t + "-" + zr()
}
console.log(createCookie());


x-for-word 加密与解密: (aes)

var cryptoJS = require("crypto-js");

// 加密
function aesEncrypt(mingText) {
    var mtMode = cryptoJS.mode.CBC;
    var mtPad = cryptoJS.pad.Pkcs7;
    var key = cryptoJS.enc.Latin1.parse("jvzempodf8f9anyt");

    mingText = cryptoJS.enc.Utf8.parse(mingText);

    var encrypt = cryptoJS.AES.encrypt(mingText, key, {
        mode: mtMode,
        padding: mtPad,
        iv:key
    }).toString();

    return encrypt;
}

// 解密 
function aesDecrypt(miText) {
    var mtMode = cryptoJS.mode.CBC;
    var mtPad = cryptoJS.pad.Pkcs7;
    var key = cryptoJS.enc.Latin1.parse("jvzempodf8f9anyt");

    var decrypt = cryptoJS.AES.decrypt(miText, key, {
        mode: mtMode,
        padding: mtPad,
        iv:key
    });

    return decrypt.toString(cryptoJS.enc.Utf8);
}


以上都是加密的逻辑,但是你可以根据某些词在控制台里直接搜,就能定位到加密的位置,然后接下来的分析就看你喽。


最最后,我得出的结果:

似乎什么加密参数都不需要,只需要把ip激活就能返回数据。不信?试着用下面的请求一下。。。

关键词可以替换成自己的,中文关键词的话记得urlEncode一下。

POST https://i.waimai.meituan.com/openh5/search/poi?_=&X-FOR-WITH= HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Cookie: openh5_uuid=123456

keyword=%E8%8D%AF%E5%BA%97&wm_actual_latitude=替换成你的&wm_actual_longitude=替换成你的

是不是也返回数据。。。

这是何等的卧槽,加密我都研究完了你给我看这个。。。



暂时分享到这,主要是几个参数加密的学习,关于ip注册的逻辑,我测试的成功率不高,所以就先不分享了,也欢迎大家就此评论交流。


最新回复 (153)
  • coco123 1月前
    0 154
    111111
  • mcstudy 1月前
    0 153
    666
  • pangde 4月前
    0 152
    666
  • guzhi 4月前
    0 151
    666666
  • 0 150
    我草
  • 0 149
    学习
  • wochuan 5月前
    0 148
    66666666666666
  • fovegage 5月前
    0 147
    666
  • liuqi 5月前
    0 146
    666
  • Polestar 5月前
    0 145
    666
  • a5529009 5月前
    0 144
    学习
  • 0 143
    大神
  • 0 142
    牛逼牛逼·111
  • C 5月前
    0 141
    ...
  • 0 140
    interesting
  • CLAY_Gan 5月前
    0 139
    666
  • 0 138
    666
  • 0 137
    666
  • 0 136
    66666
  • vimin 7月前
    0 135
    666
  • qianyin 7月前
    0 134
    666
  • 0 133
    666
  • zk2020 7月前
    0 132
    6666
  • 0 131
    666
  • xuzc 7月前
    0 130
    666
  • hico 7月前
    0 129
    66666
  • 7月前
    0 128
    666
  • fktest01 8月前
    0 127
    666
  • Wangd 8月前
    0 126
    666
  • zhoubo 8月前
    0 125
    88
  • iceelee 8月前
    0 124
    回复学习。
  • 0 123
    66666
  • kuang 8月前
    0 122
    666
  • 0 121
    1
  • pandas 8月前
    0 120
    666
  • xinxin 9月前
    0 119
    666
  • 0 118
    111111111111111111
  • 0 117
    看一下
  • 0 116
    6666
  • 0 115
    1
  • 0 114
    woc
  • 0 113
    6666666666
  • zhangdada 10月前
    0 112
    66666
  • zsq 10月前
    0 111
    1
  • chenqilei 10月前
    0 110
    1
  • 方世玉 10月前
    0 109
    666
  • Cccold 10月前
    0 108
    666
  • Json 11月前
    0 107
    999
  • l19981260 11月前
    0 106
    111
  • lv 11月前
    0 105
    6666
  • 1253221669 11月前
    0 104
    11
  • LaVine24 11月前
    0 103
    1
  • wubucai 11月前
    0 102
    学习学习
  • 小李广 11月前
    0 101
    666
  • 吴先生 11月前
    0 100
    111
  • zhoubo 11月前
    0 99
    999
  • ares 11月前
    0 98
    666666666666666666666666666
  • 王院鑫 11月前
    0 97
    666
  • 小李广 11月前
    0 96
    666
  • nog111 12月前
    0 95
    卧槽
  • george 2020-10-15
    0 94
    66666666
  • 渣渣 2020-10-15
    0 93
    ——
  • CZW 2020-10-14
    0 92
    666
  • evil 2020-10-14
    0 91
    1
  • zzff 2020-9-30
    0 90
    6
  • dch5568 2020-9-29
    0 89
    666
  • alian 2020-9-22
    0 88
    666
  • nolhc 2020-9-22
    0 87
    666
  • king 2020-9-16
    0 86
    111
  • musk 2020-9-15
    0 85
    111
  • pangde 2020-9-14
    0 84
    11
  • taishan 2020-9-14
    0 83
    1
  • 17623117739 2020-9-11
    0 82
    1
  • 001 2020-9-10
    0 81
    手动握草
  • startzm 2020-9-9
    0 80
    饿了么是不是也有这个ip激活的机制
  • andi 2020-9-9
    0 79
    666
  • luohua 2020-9-7
    0 78
    666
  • 小叶子 2020-9-5
    0 77
    666学习到了
  • Tu0Laj1 2020-8-28
    0 76
    666啊
  • von 2020-8-27
    0 75
    6666666666666
  • sym 2020-8-27
    0 74
    1
  • cc 2020-8-22
    0 73
    111
  • Monarch1995 2020-8-21
    0 72
    666
  • solarhell 2020-8-18
    0 71
    1
  • brucelong 2020-8-4
    0 70
    来喽
  • 0 69
    111
  • 0 68
    路过看看
  • lbmb 2020-7-24
    0 67
    1
  • Aimer 2020-7-14
    0 66
    6666
  • 2020-7-14
    0 65
    电动卧槽
  • hooker5427 2020-7-14
    0 64
    11
  • FFFFF 2020-7-1
    0 63
    1
  • x1376646336 2020-6-30
    0 62
    学习学习
  • 0 61
    我记得去年也是,删除加密参数,也可以爬去,只是翻页后,就提示登陆,主要还是绕过风控
  • haiy 2020-6-29
    0 60
    1
  • 暖年 2020-6-29
    0 59
    666
  • shihw 2020-6-22
    0 58
    666666666666
  • sunweijia 2020-6-19
    0 57
    have a look
  • 18013350909 2020-6-18
    0 56
    666,最近就在弄美团
  • tao11 2020-6-18
    0 55
    666
返回