昨天我给大家分享完小程序后,收获了不少粉丝朋友的观看,紧接着后台就收到了私信,想让我出一期实战演示,今天他来了。今天这期视频我就以瑞幸咖啡的门店数据为案例,教大家如何配合小程序进行加解密,想学的同学记得点赞加关注。 今天给大家分享的是瑞幸咖啡小程序的门店数据接口率像分析,那么它是一个小程序,如果说大家不会抓小程序的呢,可以看一下我的往期视频,单独有对这个小程序抓包做了讲解的。 在视频开始之前,为了保证零基础的同学也能听懂,主播准备了从零到 j s 逆向进阶的学习案例,包含从新手到大神的学习路线,都放在了主页粉丝群,大家可以自行领取。好,那么来看一下这里的话呢,会有一些门店,我们来去搜一下,比如说搜一个上,他会有对应的这些数据嘛?来看一下这里的数据包, 发了四个包,那么前面三个 p n g, p n g g i f 都是图片的,那么它不可能会把数据放到这里面,那就是只有这个叉 h r 了。来看一下这里面的,那么这里面它会是一个密文值的形式,也就是说它是对那个门店的数据做了加密了的。 那来看一下那个载客,载客里面的 c i d, 那 么这个值一般来说是固定值,而 q 的 话呢,这里是一个密文值, d k 和这个散 在这个地方,它的一个散的话是一个纯数字。看起来啊,那就只有这个 q 和散是加密的,我们需要去逆向分析这两个参数,那来搜索一下这个散吧, ctrl shift 加 f, 你 要去搜索这个 q 的, 那肯定太多了嘛,那么来去搜这个长一点的散来加一个冒号吧。回车来找一下它的一个名称符不符合,这里都不太符合, 都不符合的,往上面找一下,这里的话有一个控制串的定义,那很明显不是啊, a d d hold, 这里也不太对来往下面找一下,这里有个什么 a e e 是 什么东西啊? a e e 啊。这种地方你可以给它向上断点啊,但看起来不太像这个位置,因为它还有其他的一些参数,这里看不到其他的一些那个参数来,再往下面看这里呢?这里的话也不是往下面再找, 这里呢?有个 i 五六八零。这个地方很明显应该是一个模块化加载吗?也不太像啊。再往下面看呢,这里往下面找找找。一直找到这个位置的话,有一个什么 i 点 content 点三,这里应该也不太像啊,当然你如果说不确定,也可以在这里去下断点,再来找到这个位置呢,这个位置 v 点 m d 五,然后 q 啊,然后 d k c i d u i d 是 吧?都有,那么应该就是这个位置呗,给他下上断点, 下上断点。之后我们来换一个搜索,比如说搜一个天吧,应该都会有这样的一些名称的店铺啊, 就断在了这个位置嘛,断在了这个位置。首先 f 点 sort, 对 f 来做了一下排序,排序 f 的 话呢,是有四个元素的,宿主 c i d 二三零 二三零一零一啊,然后 d k q 值和这个 u i d, 这个 u i d。 其实最开始我以为它是随机的,我当时是用了那个 python u i d 去随机生成,但后面发现随机生成拿不到数据,它这个是固定值啊,你可以给它固定上, 给它拼接了一下啊,拼接之后的结果呢,是这样的一个结果,再去加了这个 s s 的 话呢,是这个地方的一个 k 值,它在这下面呢,其实是对这个什么 啊? q 啊,它对应的是这个 g 嘛? g 的 话呢,是在这里是做了一个 a e s 加密的 c 传,那个 q s 就是 那个 a e s 的 k 值,这个值也是固定值,你也可以去搜索,是能搜索到的,它在这里是能够获取到的啊,这个是 k 值, 然后交给了这个 md 五之后,就能够去得到这样的一串值,但这个地方他并不是纯正的 md 五,这里你可以去给他输出一下,他是 三十八位的,而且他并没有零到 f, 他 就只是纯数字,所以他这里面肯定是做了一些处理了的。我们来看一下他这里面, 在这里面的话走的是这个逻辑嘛,啊?什么 mark 点 abs, 然后就是 a 兔子群加 n 兔子群加 o 兔子群,给它拼接到一起了,这里是什么? m d 五加密,结果自结数组错误啊,这里是做了一个什么判断啊?这可以不管它。 然后上面这里呢会有一个 e n a e s in craft, d e 啊,这个是解密 d e craft。 那 么按道理来说啊,他这个地方放到了同一个位置,嗯,这个应该是那个 q 的 一个生成位置,这个是那个就是得到数据之后他所解密 用到的一个解密的方法,然后这个是 m d 五的一个方法啊,我当时做的话呢,是直接把这个代码全部复制下来之后给那个 ai, 让他给我做了一下分析, 可以给大家看一下我跟 ai 的 一个逻辑啊,首先是整个的一个代码,然后逻辑是这样的一个逻辑,就是把这个 md 五的那个函数给了他,然后把参数也给了他,给他来分析一下,他整个的分析的就是这样的一个逻辑啊。最后什么字母串进行拼接, 然后让他去做了一下拍损还原啊,为什么是三十八位呢?他说三十二位的整数最大值绝对值是二的,三十一次方减一,等于这样的一个十位啊,最好只是零位啊,拼起来就是三十六位到四十位之间啊,是一个正常的输出,结果拍损还原的是这样的一个代码,去还原其实非常简单 啊,测试的参数去测试了一下,是正常没有问题的好,然后这个就是那个 md 五的一个逻辑,我们再来看一下那个 g 的, 在这个地方你可以在这里去下断点,然后重新去断啊,肯定是没问题的,但我们这里看起来好像也不太影响啊,在这里断住也不影响他。 屁,是那个对象啊,这个对象我们来去输出一下这个对象, 那么这里的话呢,它的一个 login 这个东西值差不多也是固定值啊,都是可以去拿到它来去用的啊。 cid 一, 这个是那个 ctid 啊,这个应该是那个城市的一个 id 值分区赛是一页有多少条数据嘛?然后这个是你的搜索关键词,其他的其实都是差不多固定值。 呃,然后这里的话把 s 就是 那个 k 值和这个 c 为 q 也给到了这个方法,那么这个方法呢,其实对应到的就是那个 e n 啊,这样的一个方法。 那么我这个地方呢,也是把这个逻辑啊,就这个函数给到了 ai, 让他去给我用 python 来还原,整个还原的一个逻辑呢,是这样的一个逻辑,嗯,他传了一个 q 进来嘛,然后输出这个 bash 呢啊,这里他也是做了一个解释啊, 后面是因为报了一次错,然后又给他重新生成了一下啊,去替换了一些东西啊,替换的啊,这样的一些特殊字符来去做了一下替换啊,最后就能够去得到一个 a s 加密的一个结果。还有一个是解密的啊,解密的呢,也是把那个 这个是解密的啊,加密的话呢,是在这上面啊,这个是加密的,这个是解密的,没问题啊, 所以他整个这个解密的话,你可以通过什么来确定呢?他整个加密走完之后会发那个数据包吗?他会得到一个密文值,你可以在这里的这个定义这里下个断点来,就看他会不会断住 来跑一下,他在这里断住了,对不对?断住了这个 t 的 话,是那个密文值吗?这个密文值,然后最后通过了这样的一个逻辑 就,嗯,等一下就能够去得到对应的铭文值的信息了,然后再去那个 jason 点 pass, 就 能够去给它转换成对应的 jason 格式来去在页面上做一个加载, 所以你把整个的一套代码给它用 pass 来生成一下啊, md 五去做的一个加密啊, aes 做的一个加密,然后这个呢是 aes 做的解密, 他的一个逻辑,呃,我这边是定义了一个这个这个对象啊,就字典嘛,然后给它转换成了 jason 格式豆腐串,这个是那个 k 值和传入的那个去 调用的这个慢方法。这个慢方法呢,首先先去做了一下那个 q 的 一个加密生成,就是 q 那 个来看一下啊,这里的话是在这个位置,我们来重新跑一下,好,这就过了来,再换一个上, 那就断住了,就这个地方啊, q 它是等于 g 的, 在这里传入的这些数据给到了它来做一次加密,然后这里就得到了 这个 a, e, s 的 一个加密值,把 q, u, u, i, d 以及 d, k 还有 c, i, d 给它构造成一个列表,然后排序加上这个 k 值给到 md 五来做一次加密,就能够得到这个散值。把它俩构造上一个字典之后去请求 对应了这个密文值的一个接口啊,这个是 hash cookies, 然后这里的 uid 它也是固定的, 得到那个密文值之后我们就再把这个密文值啊,把这个密文值交给这个 aes 解密啊,这个 s 也是那个密钥嘛。然后 c 是 那个 q 来做一次解密就能够去得到正确的数据了,来右键运行看一下,它就能够去拿到对应的数据啊, 所以这个就是瑞幸咖啡它的一个门店数据的一个接口,它主要是用到了 aes 以及 m 六五来去做的一个加密。解密数据呢也是用的 aes, 它是 ecb 模式,并没有用到 i v 值。
粉丝6489获赞4.0万

任性小程序逆向,你是不是一看到那种乱码一样的参数就头大,然后到处找工具想把它翻译成名门?别折腾了,那种乱码本来就是翻译不回去的,今天这期视频教你找到真正藏数据的地方,而不是跟那个翻译不动的乱码较劲,时长八分钟,带大家分析搞定某性咖啡小程序加密 任性又更新版本了,我本来以为呢,就是正常的改改,结果代码一打开上来就是一坨,一会拼字母串啊,一会又是点扣二,看的人头都大了。 这条视频呢,就拿这个新版来做一下实战,看看这个东西到底是个什么玩意儿,该怎么拆。我们直接打开这个网络面板,来抓一下这个数据包,好出发一下这个分页的世界,那你会发现这里出现了一个叫做 shift。 这个数据包好,确认好这个目标的这个数据包之后,你可以去复制,复制为这个背时的格式, 让它生成一个基础爬虫的代码,然后放到这个本地当中来跑一下,试一下能不能正常获取到数据。好右键运行啊,您猜怎么着? 这里的话,他图给你的这个数据根本就不是明文的信息,而是做了一个加密处理的,这个乱七八糟的纸很明显是做了这个加密处理的。所以说我们今天不仅要去研究他的这个请求数据的加密逻辑,还要去研究他的这个响应数据的解密逻辑。好, 看一下他的这个请求数据里面有没有哪一些可疑的数据点。比方说这两个东西啊,这种乱七八糟的纸,很明显啊,就可能是那种需要逆向分析的纸,我们把这两个东西注视掉,看他会不会影响我们的这个结果生成。来右键运行一下, 那你会发现呢,它其实就会影响你的这个结果的生成,因为刚才那个数据啊很长,那你现在你把这两个值,你把它去掉之后获取到的这个值就特别特别的短。很明显我们如果要拿到完整的门店信息的话,必须携带这两个数据, 必须携带这两个参数。那这两个参数到底怎么生成的呢?我们一起来研究一下吧,打开一下这个面板,然后呢我们在这里去进行一个参数分析,直接来跟站分析吧,来搜是搜不到的啊,来跟站在这里打一个这个断点,然后我们再去触发一下啊这个事件, 看一下他能不能断在这里来。 ok, 直接断在这里了,来查看一下你的这个作文里面的这一些请求参数。好,这个纸鞋带上的,那就没问题,我们要去找啊,这个纸他的一个呃深层位置,就是往上面去看,有没有有 去找那个连接点的位置啊?还是有这个值。那继续往上面去找。这个地方的话是一个 promise 点,正所以说我们需要重新下个断点,然后他才会跑下来,那么我们现在再来去触发一下这个枫叶的事件。好,直接跑下来了啊,那继续来观察一下有没有这一个参数。 ok, 有, 继续往上面去找。好,往上面去找,再往上面去找。继续往上面去找,再往上面去找。 哎,这里的话好像就,嗯有点可一样,这个位置这里的话有一个上的指,那继续往上面好,这个地方的话又下不来了,所以又重新在这里下一个断点,然后我们再把之前的这个断点的话就可以释放掉了, 之前断点的话就可以释放掉了,然后我们现在再触发一下这个分界的事件。好端在这里之后你会发现这有个这个上的指,那么继续往上面去跟,好,继续往上面去跟 看一下有没有这个纸,这里的话好像就没有这个纸了,你看一下是在哪个位置好?进入到了这个位置,直到这个位置的话需要去单步调试,去跟上的去分享,就是要去这样去单步调试,然后单步调试,直到走到了哪一个位置呢? 来我们看一下啊,这里的话是到这个地方打上这个断点,然后直线下来之后啊,就是要一直一直去单步调试啊,直到让他去走到这个位置就往后面去,往后面去跟 这个位置在这里下两个断点,下两个断点,然后我们再去示范一下这些断点的话,我们先去掉,就重新来释放这个断点,然后让他去断,在我们刚才下断点的那个位置释放一下来, 再把这些断点写带上, ok, 这个断点可以取消掉了。好,也就是这个位置 你再重新勾选,是吧?然后再勾选,一定要出发最新的,最新的那个事件。 我们现在的话呢可以去展开一下这一个二十的这个数组来看一下。这里面的话呢是有一个 aes 啊, aes 里面是有这个解密和加密的逻辑,然后这里呢还有一个这个 md 五的一个加密来点击进来, 我们就是找到这个地方,直接给他打上一个断点,在他的这个 return 返回的位置确认,这就是我们要找的那个数据的加密解密的位置,来把这三个 return 的 位置打成这个断点, 然后我们再去示范一下啊,您猜怎么着?它就直接断在这里了,然后来看一下啊,这里传入的这个参数,它是铭文的,然后处理完之后呢,就变成了这个密文的数据信息啊,这个值的话就是那个,嗯,网络里面的那个 p 的 值 啊,这个 q 的 值,这就是这个 q 的 值啊,是一个加密的数据,它的这加密的逻辑其实就是一个这个对称加密算法 a s 标准的 r 的 话是一个这个标准加密算法库。 然后我们既然是判断它是一个对称加密算法 a s 啊,就要去找到它这个密钥,密钥的话是这个,嗯,十六个季节一百二十八位的,然后是 e c b 式, e c b 的 这个模式 pk c h 的 这个填充方式啊, 好,确认。好,这个之后呢,我们再去看一下啊,这个 md 五来释放一下这个断点,释放一下。 ok, 现在的话呢是进入到了这个 md 五, md 五它处理之后得到的这个指示证就是那个上值 在这里啊,这个的话就是这个三个值,然后最后的话呢,就是这个位置这个第一,也就是这个解密的逻辑。好,我们依旧释放过来这个解密的逻辑,说你插入的这个值跟你刚才看到那个响应的数据一模一样的啊, 来他的这个数字的格式也是一样的啊, e a 开头的 t 八,对吧? e a t 八七九。好,那么他的这一个解密的逻辑呢?事实上就是一个标准的这个 a s 啊, 标准的这个 a e s 的 一个解密使用的是这个,嗯嗯的话,十六个季节的一百二十八位的这个蜜柚,然后是 e c b 的 模式, p k c h 的 这个填充方式啊,去进行的这一个解密的 还是非常的简单的,虽然说更新了啊,但是呢这个代码基本上是没有没有什么变化的,就是这个加密的逻辑,只不过它这个入口的位置的话稍微难找一点。好,那么我们现在看一下最终实现的这个代码,来右键运行一下 这个值的话是不能写死的啊,这个的话是获取到的我们的,嗯,我们的这个 j s 文件里面生成的这个 q 值,还有这个上的值, ok, 它是可以正常拿到我们的这个数据信息的,你直接在这里搜一下这个月入 好,这是一个明文的数据,可以比较一下,我们如果说不对它进行这个解密处理的话,即使你携带上这个 q 值和上的值, 它依旧还是一个被加密的这一个数据,对吧?你还是看不到它真实的数据信息。所以说呢,要利用这个逆向的思维啊,去找到它的这个解密的逻辑,最终呢就会拿到你需要的这一个数据了。

做爬虫项目接单怎么能不会小程序逆向呢?今天就带兄弟们学习一下小程序的逆向究竟是怎么做的,和外部端逆向又有啥区别?来看任性咖啡的几个小程序的案例。在做小程序逆向啊,要把这个文件先拍摄好,拍摄好这个文件,输入一下这个链接, 在当前的这个面板当中就可以抓取这个数据包,直接来点击一下这个按钮啊。好,点进来之后呢?嗯,这里可以去做一个筛选,就做一个这个页面的切换,切完这个页面就可以抓到这个数据包。嗯,去切换一下,切换一下呗。哦, show me, 看一下相应的数据。咦, a, 这是加密的数据,因为不是门店的信息啊,正常来说的话,它会返回的是这个名门店的信息。 这个是一个 a s, 没记错的话是一个标准的 a s 降相啊生成的。咱下去看他那个姐妹的卧底,再看看这个表单数据,嗯,这有个 q, 这个 q 的 话,没记错的话是一个标准 a s 加密的, 然后有一个散的话,这个散,嗯,我刚开始贪的话,它这个数据长度其实不符合 md 五,到后面探了一下,它好像就是这个 md 五抹盖之后的这个 md 五。 当然呢,关键的搜索方式也不太适合这个场景,所以我直接是从这个启动器 走进去,在这里打这个断点,然后再切换这个页面,它就会断住,断住,看这个 f, f 里面有有这个 q 的 加密的纸,所以直接往上面去跟,往上面去跟。呃,有这个纸没法,这个纸就没变过嘛,这些战基本上都是无用的 好,然后走到了这个 party 点阵,这是一部毁掉的,只是在这里打一个断点, 把之前的这个断点给我删一下,再切换一下页面,只是当前的那个一不毁掉的这个地方,哎,是一个 power series。 嗯,就是往上面找,往上面找就找到这个 q 值,它不再是加密的值,这个跟上。嗯,填填麻烦了,攒足就是往上面去跟就行了。 然后往上面去跟,我是一时找到了。嗯,大概是这个位置吧,就这个位置,这个更是由扁平化的一个 switch case 的 分支流语句 找到这个地方就重点地去观察了一下,因为它做了这个混淆嘛,这种高度混淆代码基本上是有加密生成的逻辑的。 就跟上的话呢,是一直一直就在这些地方打这个端点 啊,这个断联就可以杀一下。好,呃,正在城市上线。下一面吧。啊,就看一下这个 l, 这个 l 的 话呢。嗯,现在是空置,这个地方的断联可以删掉,因为他在这里做了死刑嘛,在上线上, 嗯,这把可以吓死他。嗯,现在好了,就看一下这个 l 好,直线的是恢复正常了,在它里面看到有一个这一个 a s 的 加密解密的代码,然后有一个 m d 五,这个 m d 五就从这里进来之后可以看到这就是这个加密解密的这个方法, 确认它是否加密解密的方法就直接在这里下个断点去确认啊。哼,还是不要讲的话,就用这个,相对于之前做的这个需求来说的话,已经在小程序里面非常简单的一种,就是这种标准加密算法的都是非常简单, 我我们就只在他瑞上半点他就能见了,能见到的话就说明他在执行计划战的过程时候,他在请求的时候,他会走这个代码的,走这个代码的说明什么?就说明他把这个请求数据啊,这些东西还用标准的 a s 的 就算法去进行处理了。 这是标准的一个加木箱缆库,像玩这个 hmc, 少五六啊,少五一号的这些 m d u 五,嗯,这些都在里面。标准加木箱缆库对应上这个,呃,这什么的点 g s 里面也有一个那个这方库叫做快车 g s 下载下来,然后模拟这个标准的意思,加木箱法去实现, 其实它是一个对胜将算法的话呢,就要去找它这个密钥嘛,密钥就是这个 n n n 的 值十六个界限啊,然后还有这个模式和填充方式都在这里,它没有这个 i 维度出手啊。项链 哈,然后再看一下它会不会走出两个代码度,一个是这个解密,因为这个前面的话 e n 的 话是这个加密, 你看他最终返回的这个结果的话,也是一个加密的数据,他如果说是一个解密的方法,他最后返回的是一个这个解密之后的纸, 他插入的一个参数就是一个加密的纸。但是现在这个 t 的 话,因为他是在做这个加密处理,所以说他现在不是被加密了的,他是一个铭文的,因为你要在这里做这个加密的处理,在这里做解密的处理,所以这里传来的应该是那个加密的纸,他现在都还没有变哈,就是因为我们这个断点了,他还是断在这个位置, 那么这里的这一个,嗯,参数的话它还会附用前面的这个参数,它现在当前这个值啊,就端点三星来吧,看一下,就是这个 m d o, 也就是呃,那个丧了,那个丧值,它的生成的代码, 它返回的结果,这其实不是呃,三十二位的就数一数都能看看出来啊, 代码附用一下就可以了,也是从这个啊啊,标准江夏码库里面取出来的 m d 五, 这很清晰,再释放。好,那走一下这个解密的我姐,好,现在走是解密的我姐,所以它传入这个参数的话,就是那个已经是密文的信息,它会传入一个这个加密了的数据,再做这个解密处理, 你看他的这个参数跟前面的这个参数就完全不一样啊,现在我们是单在这里,所以呢这个前的 t 也会沿用当前的这个纵目里面的这个 t 的 折,然后呢现在写的是这个丁慧法,也就是解密,解密的我讲还是用的是这个,嗯,十六个季节的这个密啊去进行的解密, 这肩膀上是一样的,还是非常非常简单。这个代码话我没写多久啊,这一下子就写出来了, 打开给大家看一下,像旧的代码,它才花了十分钟不到的样子, 说很简单,你就是了一个 a s 的 解加密的逻辑,然后还有一个就是那个 m d 五啊,然后就是那个拼完文件,而且没写一下这个代码就拼了,嗯,就已经成功了,就获取到这个数据了。

别人打开瑞幸小程序扫码下单,九点九啊,真香,你打开瑞幸小程序抓包,逆向像头到三点。今天给大家分享的是瑞幸咖啡小程序的门店数据接口率向分析啊,那么来看一下这里的话呢,会有一些门店,我们来去搜一下,比如说搜一个上, 它会有对应的这些数据嘛?来看一下这里的数据包,发了四个包,那么前面三个 p n g, p n g g i f 都是图片的,那么它不可能会把数据放到这里面,那就是只有这个叉 h r 了。来看一下这里面的,那么这里面它会是一个密文值的形式,也就是说它是对那个门店的数据做了加密了的,那 来看一下它那个载客,载客里面的 c i d, 那 么这个值 q 的 话呢?这里是一个密文值, d k 和这个散 在这个地方,它的一个 send 的 话是一个纯数字,看起来啊,那就只有这个 q 和 send 是 加密的,我们需要去逆向分析这两个参数,那来搜索一下这个 send 吧, ctrl shift 加 f, 你 要去搜索这个 q 的, 那肯定太多了嘛,那么来去搜这个长一点的 send, 来加一个冒号吧。回车来找一下它的一个名称,符不符合,这里都不太符合, 都不符合的。往下面找一下,这里的话有一个空轴串的定义啊,很明显不是啊, a d d ho 的, 这里也不太对来往下面找一下,这里有个什么 a e, e 是 什么东西啊? a e e 啊,这种地方你可以给大家向上断点啊,但看起来不太像这个位置,因为它还有其他的一些参数,这里看不到其他的一些那个参数来,再往下面看,这里呢?这里的话也不是往下面再找, 这里好像有个 i 五六八零,这个地方很明显应该是一个模块化加载吗?也不太像啊。再往下面看呢,这里往下面找找找,一直找到这个位置的话,有一个什么 i 点 content 点儿三,这里应该也不太像啊,当然你如果说不确定,也可以在这里去下断点,再来找到这个位置呢,这个位置 v 点 m d 五,然后 q 啊,然后 d k, c, i d, u i d 是 吧?都有,那么应该就是这个位置呗,给它下上断点, 下上断点。之后我们来换一个搜索,比如说搜一个天吧,应该都会有这样的一些名称的店铺啊, 就断在了这个位置嘛,断在了这个位置,首先 f 点 sort, 对 f 来做了一下排序,排序 f 的 话呢,是有四个元素的,宿主, c i d 二三零 二三零一零一啊,然后 d k q 值和这个 u i d, 这个 u i d, 其实最开始我以为它是随机的,我当时是用的那个 python u i d 去随机生成,但后面发现随机生成拿不到数据,它这个是固定值啊,你可以给它固定上, 给它拼接了一下啊,拼接之后的结果呢,是这样的一个结果,再去加了这个 s s 的 话呢,是这个地方的一个 k 值,它在这下面呢,其实对这个什么 啊? q 啊,它对应的是这个 g 嘛? g 的 话呢,是在这里是做了一个 a e s 加密的 c 传,那个 q s 就是 那个 a e s 的 k 值,这个值也是固定值,你也可以去搜索,是能搜索到的,它在这里是能够获取到的啊,这个是 k 值, 然后交给了这个 md 五之后就能够去得到这样的一串值。但这个地方它并不是纯正的 md 五,这里你可以去给它输出一下,它是 三十八位的,而且它并没有零到 f, 它就只是纯数字,所以它这里面肯定是做了一些处理了的。我们来看一下它这里面, 在这里面的话走的是这个逻辑嘛,啊?什么 mark 点 abs, 然后最后是 a 兔子群加 n 兔子群加 o 兔子群给它拼接到一起了, 这里是什么? m 加 m 零五加密,结果自结数组错误啊,这里是做了一个什么判断啊?这个可以不管它,然后上面这里呢会有一个 e n a e s encrypt d e 啊,这个是解密 d 一 craft。 那 么按道理来说啊,他这个地方放到了同一个位置,嗯,这个应该就是那个 q 的 一个生成位置,这个是那个就是得到数据之后他所解密 用到的一个解密的方法。然后这个是 md 五的一个方法啊,我当时做的话呢,是直接把这个代码全部复制下来之后给那个 ai, 让他给我做了一下分析, 可以给大家看一下我给 ai 的 一个逻辑啊,首先是整个的一个代码,然后逻辑是这样的一个逻辑,就是把这个 md 五的那个函数给了它,然后把参数也给了它,给它来分析一下,它整个的分析的就是这样的一个逻辑啊,最后什么字母串进行拼接, 然后让他去做了一下拍损还原。那为什么是三十八位呢?他说三十二位的整数最大值绝对值是二的,三十一次方减一,等于这样的一个十位啊,最好只是零位啊,拼起来就是三十六位到四十位之间啊,是一个正常的输出,结果拍损还原的是这样的一个代码,去还原其实非常简单 啊,测试的参数去测试了一下,是正常没有问题的好,然后这个就是那个 md 五的一个逻辑。我们再来看一下那个 g 的, 在这个地方,你可以在这里去下断点,然后重新去断啊,肯定是没问题的,但我们这里看起来好像也不太影响啊,在这里断住也不影响它 p 是 那个对象啊,这个对象,我们来去输出一下这个对象,那么这里的话呢,它的一个 log in 这个东西值 差不多也是固定值啊,都是可以去拿到它来去用的啊。 cid 一, 这个是那个 ctid 啊,这个应该是那个城市的一个 id 值分区赛是一页有多少条数据嘛?然后这个是你的搜索关键词,其他的其实都是差不多固定值。 呃,然后这里的话把 s 就是 那个 k 值和这个 c 为 two, 也给到了这个方法,那么这个方法呢,其实对应到的就是那个 e n 啊,这样的一个方法。 那么我这个地方呢,也是把这个逻辑啊,就这个函数给到了 ai, 让他去给我用 python 来还原,整个还原的一个逻辑呢,就是这样的一个逻辑,嗯,他传了一个 true 进来嘛,然后输出这个 bash 函数的字母串儿啊,得到了一个结果,那么为什么要去传 true 呢啊?这里他也是做了一个解释啊, 后面是因为报了一次错,然后又给他重新生成了一下啊,去替换了一些东西啊,替换的啊,这样的一些特殊字符来去做了一下替换啊,最后就能够去得到一个 aes 加密的一个结果。还有一个是解密的啊,解密的呢?也是把那个, 哎,这个是解密的吧?看一下啊,好的,这是解密的啊,加密的话呢,是在这上面啊,这个是加密的,这个是解密的。对,没问题啊, 所以它整个这个解密的话,你可以通过什么来确定呢?它整个加密走完之后会发那个数据包嘛?它会得到一个密文字,你可以在这里的这个定义,这里下个断点来,就看它会不会断住, 来跑一下,它在这里断住了,对不对?断住了这个 t 的 话是那个密文值嘛?这个密文值,然后最后通过了这样的一个逻辑 就,嗯,等一下啊,就能够去得到对应的铭文值的信息了,然后再去那个 json 点 pass, 就 能够去给它转换成对应的 json 格式来去在页面上做一个加载。所以你把整个的一套代码啊,给它用 pass 来生成一下 啊。 md 五去做的一个加密啊, a e s 做的一个加密,然后这个呢是 a e s 做的解密, 它的一个逻解。呃,我这里呢是定义了一个这个这个对象啊,就字典嘛,然后给它转换成了 jason 格式,这个串,这个是那个 key 值和传入的那个 true 调用的这个慢方法。这个慢方法呢,首先先去做了一下那个 q 的 一个加密生成,就是 q 那 个来看一下啊,这里的话是在这个位置,我们来重新跑一下。好,这就过了来,再换一个上, 好就断住了,就这个地方啊, q 它是等于 g 的, 在这里传入的这些数据给到了它来做一次加密,然后这里就得到了 这个 a, e, s 的 一个加密值。把 q, u, u, i, d 以及 d, k 还有 c, i, d 给它构造成一个列表,然后排序加上这个 key 值,给到 md 五来做一次加密,就能够去得到这个散值。把它们俩构造上一个字典之后,去请求 对应的这个密文值的一个接口啊,这个是 hash cookies, 然后这里的 u, i, d 它也是固定的, 得到那个密文值之后,我们就再把这个密文值啊,把这个密文值交给这个 a, s 解密啊,这个 s 也是那个密钥嘛。然后 c 是 那个 q 来做一次解密,就能够去得到正确的数据了,来右键运行看一下,他就能够去拿到对应的数据, 所以这个就是瑞幸咖啡它的一个门店数据的一个接口,它主要是用到了 aes 以及 m 六五来去做的一个加密,解密数据呢也是用的 aes, 它是 ecb 模式,并没有用到 i v 值。

宝子们,悦幸咖啡超人气十选一优惠给你们拿到了生衣拿铁、晨曦美式丝绒拿铁多款可选正品兑换券直充,当你自己的月薪账号,就在下方小黄车官方 app 和小程序都能用的有效七十五天到期退随时退,可以放心充哦!

如果瑞幸开一家早餐店,他会怎么宣传?如果瑞幸开早餐店,他绝不会一上来就拼谁的包子馅多,口味独特,也不会靠烂大街的现包现蒸搞噱头,更不会玩充两百送二十的老套路。 他就靠一套收银机加小程序的组合打法,两个月就能干成三公里的早餐第一,而且还不花一分钱广告费, 是不是觉得又是扯淡?瑞幸能把咖啡做成打工人的日常续命水,靠的可不是烧钱,而是用的这套低成本获客加低门槛锁客加高效率赚钱组合拳。这套逻辑放到任何一家餐饮门店照样好使, 而且几百块就能搞定工具,真的是零门槛零风险,看完就能抄第一部门头打一个钩子,精准抓过路客。如果瑞幸开早餐店,他绝对不会在门头上写满包子、油条、豆浆、粥这些, 他会用超大号字体只写一句话,新课一元吃早餐,下面再写一行小字,肉包加豆浆加鸡蛋,原价八元。然后他会在门口就立一个 kt 板,上面写着,扫码结账,自动成为会员,领一元早餐。路过的人只要扫一眼,十个里就会有八个停下来。 毕竟一块钱吃顿热乎早餐,这便宜,傻子才不占。顾客扫码一键授权手机号成为会员,一元下单,三秒搞定锁客,效果比普通收款码强百分之三十。记住,开早餐店,门头不是用来写你卖什么的,而是用来写我能给你什么好处的, 你装修再豪华,别人看不到好处也等于零。第二步,用九点九元月卡锁客,让顾客主动来你家。瑞幸最厉害的不是引流,是锁客, 他是绝对不会搞充一百送二十这种烂大街套路的。他会直接在小程序里设置一个九点九元早餐月卡,顾客只需花九点九元开通月卡,系统自动生成三十张三元优惠券,每天可以用一张。 小程序首页弹窗推月卡,支持线上购买自动续费,顾客还能随时看到剩余天数和可用优惠券,不用专门提醒,顾客自己就能用。咱们算比账,九点九元办卡,只要来四天就回本,剩下二十六天全是赚的。 打工人一算账,肯定毫不犹豫掏钱。一旦办了卡,他早上想吃早餐,第一反应绝对是你家,毕竟去别人家吃,这月卡就白办了。 一个月卡能锁定顾客至少十二次消费,哪怕每次只赚两块钱,一个顾客也能多赚二十四块。 第三幕,自动精准发券,比人工省心一百倍!瑞幸绝对不会给所有顾客发一样的优惠券,而且他根本不用自己记,全靠系统自动搞定。小程序会自动记录每个顾客的消费习惯, 谁每天八点来爱吃肉包加豆浆,谁每周二周四来爱吃肠粉?谁已经一周没来过了?然后你只要提前设置好规则,剩下的全交给系统。连续七天消费的顾客,自动发一张免费茶叶蛋券。 每周消费二到三次的顾客,自动发一张满十减二券。超过七天没来的顾客,自动发一张五元无门槛券。只买过包子的顾客,自动发一张买包子送豆浆券。更绝的是,他还能推预约点单 张哥,明天八点的肉包加豆浆已为你预留,点击确认提前出餐,直接解决打工人怕迟到、怕排队的核心痛点,就这么简单,系统自动跑,不用你操心,转化率比人工私信高十倍都不止! 第四步,极致出餐效率,三十秒取餐不用等!瑞幸的门店永远是小而精,他不会搞大店堂食,他会把百分之九十的面积用来做厨房,只留百分之十的面积做取餐台,甚至连多余的座位都不设。 所有热门早餐全部提前预制,顾客提前在小程序上下单,备注取餐时间,老板提前做好,放到对应编号的取餐架上,顾客到店扫一下取餐码,直接拿走,连话都不用说, 全程不超过三十秒,高峰期出餐效率直接翻一倍,别人一个早上只能接一百单,你能接三百到五百单,利润自然比别人高三倍。而且打工人最在意的就是不用等,只要你出餐快,哪怕比别家贵五毛钱,他们也愿意来。 第五步,看数据做生意只卖爆款不瞎忙瑞幸绝对不会凭感觉上新品,他每天早上收摊后,只需要花一分钟看一眼小程序后台的销售报表,什么卖的好就多做什么,卖的不好就立刻砍掉。 后台能看到最详细的数据,哪个时段销量最高,哪个产品复购率最高,哪个客单价区间的顾客最多。 甚至能精准算出周一早上多做一百份肉包,周五早上少做五十份豆浆,精准到个位数,彻底杜绝食材浪费。如果肉包每天能卖两百个,菜包只能卖二十个,那他就会把菜包砍掉,只卖肉包,这样既能减少浪费,又能提高制作效率, 不用每天准备十几种馅料,累死累活还赚不到钱。第六步,最简单的裂变,让顾客主动帮你拉新 瑞幸的裂变活动永远是最简单最直接的,没有任何套路。核心就是你帮我拉一个新顾客,我给你一份免费早餐。 小程序自动生成每个人的专属邀请码,顾客一键分享给同事,同事注册成为会员后, 两人的账户里自动到账。一份免费早餐,不用卡片,不用登记,不用老板手动核对,全程自动完成裂变效率至少翻五倍,不用印传单,不用投抖加。只要有一百个老顾客,他们就会拉着自己的同事朋友一起来, 一传十,十传百,不到半个月,周边写字楼的打工人就全知道你家了。很多老板说裂面没用, 那是因为你搞的套路太多了,越简单的活动效果越好。最后说一句,很多人觉得瑞象的成功是靠烧钱和技术,其实不是,它的核心是把普通人的日常刚需做到极致,用几百块钱小程序解决获客、锁客、效率这三个核心问题。 现在的早餐行业最不缺的就是好吃的包子和豆浆,最缺的是方便快捷,不用等你天天起早贪黑,凌晨三点就起床,不如学一学瑞幸这套打法,不用花大钱,不用搞复杂的东西,就用收银机,再加个小程序,把顾客锁在自己手里。 记住,低门槛锁客加极致效率,就是普通人开早餐店最稳的护城河。

微信又更新版本了,我本来以为呢,就是正常的改改,结果代码一打开,上来就是一坨 switch, j 加加 k, 一 会拿纸,一会拼字母串啊,一会又是点扣,看的人头都大了。这条视频呢,就拿这个新版来做一下实战,看看这个东西到底是个什么玩意,该怎么拆。牛逼, 我们直接打开这个网络面板,来抓一下这个数据包,好,出发一下这个枫叶的世界,更多 j s 逆向学习资料可以进这里自取哦,那你会发现这里出现了一个叫做 service 的 这一个数据包,好,确认好这个目标的这个 数据包之后,你可以去复制,复制为这个背时格式,让它生成一个基础爬虫的代码,然后放到这个本地当中来跑一下,试一下能不能正常获取到数据。好,右键运行啊,您猜怎么着? 这里的话,他图给你的这个数据根本就不是明文的信息,而是做了一个加密处理的,这个乱七八糟的纸很明显是做了这个加密处理的。所以说我们今天不仅要去研究他的这个请求数据的加密逻辑,还要去研究他的这个响应数据的解密逻辑。好, 看一下他的这个请求数据里面有没有哪一些可疑的数据点。比方说这两个东西啊,这种乱七八糟的纸,很明显啊,就可能是那种需要逆向分析的纸,我们把这两个东西注视掉,看他会不会影响我们的这个结果生成。来右键运行一下, 你会发现呢,他其实就会影响你的这个结果的生成,因为刚才那个数据啊,很长,那你现在你把这两个值,你把它去掉之后,获取到的这个值就特别特别的短,很明显我们如果要拿到完整的门店信息的话,必须携带这两个数据, 必须携带这两个参数,那这两个参数到底怎么生成的呢?我们一起来研究一下吧,打开一下这个面板,然后呢我们在这里去进行一个参数分析,直接来跟站分析吧, 来搜是搜不到的啊,来跟站在这里打一个这个断点,然后我们再去触发一下啊这一个事件,看一下他能不能断在这里 来。 ok, 直接断在这里了,来查看一下你的这个作域里面的这一些请求参数。好,这个值鞋带上的,那就没问题,我们要去找啊,这个值他的一个呃深层位置,就是往上面去看,有没有有 去找那个连接点的位置啊?还是有这个值,那继续往上面去找。这个地方的话是一个 promise 联证,所以说我们需要重新下个断点,然后他才会跑下来,那么我们现在再来去触发一下这个枫叶的事件,好,直接跑下来了啊,那继续来观察一下有没有这一个参数,也有继续往上面去找,好,往上面去找, 再往上面去找,再往上面去找。哎,这里的话好像就,嗯有点可一样,这个位置 这的话有这个上的指,那继续往上面。好,这个地方的话又下过来了,所以又重新在这里下一个断点,然后我们再把之前的这个断点的话就可以释放掉了, 之前的断点的话就可以释放掉了,然后我们现在再触发一下这个封印的事件,好端在这里之后你会发现这有个这个上的指,那么继续往上面去跟,好,继续往上面去跟 看一下有没有这个纸,这里的话好像就没有这个纸了,你看一下是在哪个位置好?进入到了这个位置,直到这个位置的话需要去单步调试,去跟上的去分享,就是这样去单步调试,然后单步调试,直到走到了哪一个位置呢?来我们看一下啊,这里的话是到这个地方打上这个断点,然后直线下来。 好,直线下来之后啊,就是要一直一直去单步调试啊,直到让他去走到这个位置就往后面去,往后面去跟 这个位置,在这里下两个断点啊,下两个断点,然后我们再去示范一下,这些断点的话,我们先去掉,就重新来释放这个断点,然后让他去断,在我们刚才下断点的那个位置释放一下来, 再把这些断点写带上。 ok, 这个断点可以取消掉了。好,也就是这个位置 你再重新勾选,是吧?然后再勾选,一定要出发最新的,最新的那个事件。我们现在的话呢可以去展开一下这一个二十的这个数组来看一下,这里面的话呢是有一个 aes, aes 里面是有这个解密和加密的逻辑,然后这里的话还有一个这个 五的一个加号来点击下,我们就是找到这一个地方,直接给他打上一个断点,在他的这个瑞腾返回的位置确认,这就是我们要找的一个数据的加密解密的位置,来把这三个瑞腾的位置打成这个断点,然后我们再去示范一下啊,您猜怎么着?他就直接断在这里了, 然后来看一下啊,这里传入的这个参数他是明文的,然后处理完之后呢,就变成了这个密文的数据信息啊,这个值的话,就是那个网络里面的那个 p 的 值 啊,这个 q 的 值,这就是这个 q 的 值啊,是一个加密的数据,它的这加密的逻辑形式就是一个这个对称加密算法 a t s, 标准的 r 的 话是一个这个标准加密算法库, 然后我们既然是判断它是一个对称加密法 a s 啊,就要去找到它这个密钥,密钥的话是这个,嗯,十六个季节一百二十八位的,然后是 e c b, 是 e c b 的 这个模式 p k c h 的 这个填充方式啊。好,确认。好,这个之后呢,我们再去看一下啊,这个 md 五,来释放一下这个断点, 释放一下, ok, 现在的话呢,是进入到了这个 md 五, md 五它处理之后得到的这个指示证,就是那个丧子 在这里啊,这个的话就是这个三个值,然后最后的话呢,就是这个位置这个第一页,也就是这个解密的逻辑。好,我们依旧释放过来这个解密的逻辑,说你插入的这个值跟你刚才看到那个响应的数据一模一样的啊,来他的这个数字的格式也是一样的啊, e a 开头的 t 八,对吧? e a t 八七九。好, 那么它的这一个解密的逻辑呢?事实上就是一个标准的这个 a e s 啊,标准的这个 a e s 的 一个解密使用的是这个,嗯嗯的话,十六个季节的一百二十八味的这个蜜柚,然后是 e c b 的 模式 p k c h 的 这个填充方式啊,去进行的这一个解密的 还是非常的简单的,虽然说更新了啊,但是呢这个代码基本上是没有没有什么变化的,就是这个加密的逻辑,只不过他这个入口的位置的话,稍微难找一点。好,那么我们现在看一下最终实现的这个代码,来右键运行一下这个值的话,是不能写死的啊,这个的话是获取到的我们的 我们的这个 gs 文件里面生成的这个 q 值,还有这个上的值, ok, 他 是可以正常拿到我们的这个数据信息的,你直接在这里搜一下这个月入 这是一个明文的数据,可以比较一下,我们如果说不被它进行这个解密处理的话,即使你携带上这个 q 值和散的值, 它依旧还是一个被加密的这个数据,对吧?你还是看不到它真实的数据信息,所以说呢,要利用这个逆向的思维啊,去找到它的这个解密的逻辑,最终呢就会拿到你需要的这个数据了。

咖啡店开业前必做的三个预热动作!想要第一个月把门店做爆并不是不可能,很多老板在开业前,特别是装修过程中,不知道自己能干点什么。以上三个预热动作做好了,开业人气一定不会太差。首先提前做好客流储备。 举个例子,要好好利用店铺装修的伪党大作文章除了印上开店时间,还会印上店铺的码,客户扫码就能进入店铺的线上门店了。首页弹窗呢,就会有一个社群码,只要入群就可以领取十块优惠券,即领即用。这种活动轻松的就将客户拉入了店铺的私域里面,记得一同开启分享有礼功能, 客户只需要转发现上门店,给到好友双方都可以获得优惠券。优惠券呢,限定开业当天才能用,那么等到开业那天,门店就会像原子弹一样爆起来。以上动作呢,都只是开业前的引流沟子, 后续跟上的营销活动更是精彩。日常呢,可以在系统里面发起转盘活动,扔到群里面岂不就是满减优惠券,大奖更是咖啡月卡一张, 再配合上每天只有百分之十的客户参与,一天五六千的营业额也都是轻轻松松的。那一些没有进群的客户呢, 老板也可以在后台筛选出来,直接用服务通知派券,刺激他们回来消费。以上活动呢,只要在小程序设置好了,系统就会自动执行,完全不需要人工参与。这样的小程序,你心动了吗?留言六六。

瑞幸每日门店应检自检该怎么做?其实很简单,记住一个工具加六个检查的口诀就够了。首先介绍一个工具,如今知名连锁门店都在使用线上巡检工具,例如取经 这款微信小程序,无需下载安装艾特或系统基础功能,免费高级版一年也才三百元起步。取经能够借助 ai 识别,将门店现有的纸质检查表一键转为线上版本,检查时打开手机就能轻松填写。此外,取经自带水印相机,自检时发现不合格之处, 凭空或值班经理可直接拍照上传,巡检记录可同步发送给店长。再来说六个检查,一、冰车冰机,先看外表、挡板四角缝隙,再开盖检查侧面缝隙、内壁,还要查看冰铲。二、茶缸校机,用手电筒查看有无异物,观察是否起皮。 三、冰箱内开分食材的校机及内部卫生情况。四、物料架上的物料,检查盖子是否盖好,抹茶粉有无结块,物料盒是否盖紧等。五、糖浆机校机,查看塞子有无结晶,糖浆有无异物, 管子瓶身底座有无丝线。六、咖啡机豆仓,检查有禁用标识的豆仓内是否有豆子,以及咖啡机表面是否干净。自检不能只停留在口头表述或群内通知, 需要有实实在在的照片、文字和检查报告,取经就能满足这一需求。品控或经理按检查项打分,勾选合格与否,检查结束后自动生成报告,做好自检留痕。

瑞幸门店每日应检自检的具体操作你掌握了吗?关键口诀是一个工具加六个检查。首先是一个工具,目前连锁门店普遍采用线上巡检工具,其就是常用的一款。它是微信小程序,无需下载安装 app 或系统基础功能,免费高级版一年最低三百元。 借助启清的 ai 识别功能,门店现有的纸质检查表可一键转化为线上表单,检查时打开手机就能填写,提升检查效率, 而且起清自带水印相机,自检时遇到不合格的地方,品控或值班经理直接拍照上传巡检记录可同步给店长, 实现实时反馈。再来说六个检查,一、冰车冰机先查外表挡板四角缝隙,再开盖检查侧面缝隙、内壁,还要检查冰铲。二、查汤小。七,用手电筒查看有无异物,观察是否起皮。 三、冰箱内开封食材的校期检查以及冰箱内部的卫生清洁情况。四、物料架上的物料检查盖子是否盖好,抹茶粉有无结块,物料盒是否盖紧等。 五、糖浆机小棋,查看塞子有无结晶,糖浆有无异物,管子瓶身底座有无丝线残留。 六、咖啡机豆仓检查带有禁用标识的豆仓内是否有豆子,咖啡机表面是否洁净。自检不能敷衍,必须有照片、文字和检查报告作为佐证,其经可自动生成报告,凭空或经理按项打分,勾选规范完成自检留痕。

哎,任性,给我来十杯生杨枝甘露一百八。哎,我不是看到抖音上九十九块九十杯吗?这是我们中秋节才上的活动,抢到了才能用。它是二十款人气爆品,随心选。 我超爱喝的杨枝甘露陈诗意美式还有雨衣、青提果蔬茶都可以使用,可单次核销完也可以分开核销,真的是越喝越便宜,性价比直接拉满你们刷到赶紧安排。

微信点单小技巧,点击人性小程序,先装模作样选购一番,把想获得加入购物,然后点击去结算,出现在结算页面时,按兵不动,一分钟,让商家感受到你的纠结,再返回,再点结算,再返回一步,最终还是狠下心来不喝了吧的姿态,将购物处理顶品无情删掉一分。操作后忍心坐不住,此时只带手机短信发来提醒,点击领取更低折扣的优惠券。

二十六岁不上班,花两万开了家咖啡店,上个月战绩十一个,只因我学会了瑞幸打法经营店铺。在我看来,瑞幸咖啡的成功无非是做对了这三件事。首先就是从不用收音机,换上了不用人工操作的自动营销系统,这点真的很关键,因为每个进入过店铺的客人都会被系统直接绑定给他们,每个人都打上对应标签,之后我做任何活动都可以像瑞幸那样通知到顾客手机。 第二,设置咖啡月卡,一张月卡里面包含了三十杯饮品,把每一杯的单价控制在八到九块左右,顾客一看这么划算都会愿意办理的,直接锁住顾客后续的多次复购。 而第三招就是电子机章,点满八杯就再送一杯咖啡,我见过不少人,就差最后一两个章,立马叫上自己的朋友一起过来消费,凑齐章数。这个动作提高顾客消费年度的同时也能做到自动裂变。而刚刚讲的这几点都是我在自己的小同学后台设置好系统自动执行的,如果你也感兴趣,可以留言了解。

咖啡店不卖咖啡,卖反向思维。上海这家咖啡店模仿瑞幸打法,做了三个动作,不到半个月差不多有三千多人到店,而且九成都进入了思域。我去喝了几次咖啡,总算是看清楚了这个模式的高明之处。 首先,顾客一进店就扫码点咖啡,会送一张六元无门槛的长青券,一般人都不会拒绝,只要进入了小程序,就都会被后台自动绑定,轻松流入门店思域。第二,老板用了消费返现的功能, 顾客每次点咖啡都会返还一定的金额,比例回到他自己的余额里,只能下次到店再使用,这样比送优惠券更命中他们白嫖的心理。最后一招才是关键。老板在小程序里发起了一个咖啡店共享老板的活动,顾客进入小程序会自动成为小老板。 接着后续他们邀请同事朋友一起来喝咖啡,就可以享受朋友消费的百分之十作为奖励。因为所有客人都是通过小程序下单,老板其实根本不用去宣传,大家看到这个活动就会自觉成为咖啡店的种草达人。 这家咖啡店就是这样,半个月就轻松回本,而且所有活动都只需要一个小程序,后台一键开启,而且自带几十种营销玩法,想了解的餐饮人可以打个咖啡,我分享给您。


无聊的日常里,幸运藏在主动的探索里。 刷视频打发时间。 玩瑞幸解锁小幸运,你的选择是? 原来玩一下就有小幸运 玩!任性的快乐就是随时有惊喜!