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

Nanda 10月前 14394


声明:本文内容仅供学习交流,严禁用于商业用途,请于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注册的逻辑,我测试的成功率不高,所以就先不分享了,也欢迎大家就此评论交流。


最新回复 (128)
  • hico 5天前
    0 129
    66666
  • 12天前
    0 128
    666
  • fktest01 29天前
    0 127
    666
  • Wangd 1月前
    0 126
    666
  • zhoubo 1月前
    0 125
    88
  • iceelee 1月前
    0 124
    回复学习。
  • 0 123
    66666
  • kuang 1月前
    0 122
    666
  • 0 121
    1
  • pandas 1月前
    0 120
    666
  • xinxin 1月前
    0 119
    666
  • 0 118
    111111111111111111
  • 0 117
    看一下
  • 0 116
    6666
  • 0 115
    1
  • 0 114
    woc
  • 0 113
    6666666666
  • 0 112
    66666
  • zsq 3月前
    0 111
    1
  • 0 110
    1
  • 0 109
    666
  • Cccold 3月前
    0 108
    666
  • Json 3月前
    0 107
    999
  • 0 106
    111
  • lv 3月前
    0 105
    6666
  • 0 104
    11
  • LaVine24 3月前
    0 103
    1
  • wubucai 3月前
    0 102
    学习学习
  • 0 101
    666
  • 0 100
    111
  • zhoubo 4月前
    0 99
    999
  • ares 4月前
    0 98
    666666666666666666666666666
  • 0 97
    666
  • 0 96
    666
  • nog111 4月前
    0 95
    卧槽
  • george 4月前
    0 94
    66666666
  • 渣渣 4月前
    0 93
    ——
  • CZW 4月前
    0 92
    666
  • evil 4月前
    0 91
    1
  • zzff 5月前
    0 90
    6
  • dch5568 5月前
    0 89
    666
  • alian 5月前
    0 88
    666
  • nolhc 5月前
    0 87
    666
  • king 5月前
    0 86
    111
  • musk 5月前
    0 85
    111
  • pangde 5月前
    0 84
    11
  • taishan 5月前
    0 83
    1
  • 0 82
    1
  • 001 5月前
    0 81
    手动握草
  • startzm 5月前
    0 80
    饿了么是不是也有这个ip激活的机制
  • andi 5月前
    0 79
    666
  • luohua 6月前
    0 78
    666
  • 0 77
    666学习到了
  • Tu0Laj1 6月前
    0 76
    666啊
  • von 6月前
    0 75
    6666666666666
  • sym 6月前
    0 74
    1
  • cc 6月前
    0 73
    111
  • 0 72
    666
  • 0 71
    1
  • 0 70
    来喽
  • 0 69
    111
  • 0 68
    路过看看
  • lbmb 7月前
    0 67
    1
  • Aimer 7月前
    0 66
    6666
  • 7月前
    0 65
    电动卧槽
  • 0 64
    11
  • FFFFF 8月前
    0 63
    1
  • 0 62
    学习学习
  • 0 61
    我记得去年也是,删除加密参数,也可以爬去,只是翻页后,就提示登陆,主要还是绕过风控
  • haiy 8月前
    0 60
    1
  • 暖年 8月前
    0 59
    666
  • shihw 8月前
    0 58
    666666666666
  • 0 57
    have a look
  • 0 56
    666,最近就在弄美团
  • tao11 8月前
    0 55
    666
  • 0 54
    666666
  • Masol7 8月前
    0 53
    666
  • 0 52
    现在美团好像需要_lxsdk_s字段才能返回数据
  • 0 51
    6666
  • wxs 9月前
    0 50
    卧槽
  • zhufo44 9月前
    0 49
    666
  • 0 48
    卢本伟牛逼
  • bella 9月前
    1 47
    如何绕过美团的风控 是现在爬虫的最难的问题
  • 0 46
    666
  • 0 45
    666
  • 0 44
    999
  • asan1148 9月前
    0 43
    666
  • 0 42
    666
  • lizhe 9月前
    0 41
    手动握草
    -------------------------------------
    作者: Nanda
    来源: 夜幕爬虫安全论坛
    原文链接: https://bbs.nightteam.cn/thread-413.htm
    版权声明: 若无额外声明,本帖为作者原创帖,转载请附上帖子链接!
  • lalala 9月前
    0 40
    666
  • 0 39
    666666
  • 0 38
    666666666666666666
  • 0 37
    666666666
  • Jane 9月前
    0 36
    6
  • life 9月前
    0 35
    手动卧槽
  • zzz 9月前
    0 34
    666,真是大佬多
  • jovan 9月前
    0 33
    6666
  • 0 32
    没有加密呀
  • chying 9月前
    0 31
    666
  • xq8 9月前
    0 30
    1
返回