- 博客(20)
- 收藏
- 关注
原创 咸鱼sign逆向分析与爬虫实现
所以我们要做的是请求两次同一个接口,第一次拿返回cookie中的_m_h5_tk以及_m_h5_tk_enc(两个是绑定的,必须在第二次请求的时候一起传,否则会返回非法令牌的响应),然后加密得到sign发第二次请求。注意看我圈出来的,上面的红框就是返回我们需要的cookie的请求的sign值的加密结果跟明文,下面的红框就是传入了拿到了_m_h5_tk的明文跟加密结果sign值。,后面的都是明文没什么好说的,我首先想的是,明文知道了,加密结果又是个32位的,会不会是标准的md5?趁现在赶紧拿去上分,冲~
2024-10-01 20:02:09 1230
原创 某东-h5st参数逆向分析
这一步完事后,发现还是拿不到正确的响应,环境实在找不到问题了,就打断点调试本地代码(优先看try,if这种容易被引入歧途的位置),在可疑位置debug,看看各个函数的参数,结果是从哪里开始不一样的,然后就一步一步走,最终让我发现了这里。这都把饭喂到嘴边了,没道理吃不下,先不用去研究这个函数,直接拿着明文去试一下sha256加密的结果是否一致,不一致再去看加密函数。哦对,东哥都强行喂饭了,那我也再喂一喂,这个加密是在异步中完成的,我们本地如何拿到结果?跑一下,补一下必须的环境,需要补的环境文章末尾提供。
2024-09-20 14:46:10 879
原创 某red书最新版x-s、x-s-common(下)
我比较懒,就拿到了调换后的数组替换进去了,其它就没什么了,到这里就能拿到encrypt_encodeUtf8返回的大数组。还是缺啥抠啥的逻辑,需要注意的是a0_0x4562函数中有个大数组,这个数组会在其它函数中做处理,位置会调换。这里要注意了,断点是断在第二个x-s-common,上面的那个以及什么v.x8啊v.x9啊,那都不是我们要的代码,不要被误导了。x6是从headers中取的X-t,也就是时间戳,这个要注意,请求的时候要统一一下,首先x9,断点断在encrypt_mcr,然后跳进去,单步执行。
2024-09-11 11:55:06 1129 2
原创 (rs系列)rs6之补环境
rs6同样是两次html请求,第一次是412,cookie的差异性跟4、5同理,需要注意的是rs6无限debugger有三个,并且第三个需要注入hook代码才能过掉。拿到所需代码之后就是熟悉的补环境流程,套路其实都差不多,rs6多检测了一些东西而已(并且检测了格式化,所以代码记得压缩)另外一个不同点就是rs5的ts代码是在html中的,而原本的自执行则跑到了外链js文件中,但处理流程是一样的。最近开始更gongzhonghao,感兴趣的朋友可以关注下,不定期更新干货!wx搜索:当爬虫遇到逆向。
2024-09-10 16:43:48 316
原创 (rs系列)rs5之补环境
rs5跟rs4的不同点:第一次返回的html状态码是412(为主),一样的两次无限debugger,一样的两个cookie名字类似,一样的生成cookie的值第一个字符代表rs的版本,一样的.call入口。不了解rs4的看我上篇文章。流程也一样,抠出两部分的js。最近开始更gongzhonghao,感兴趣的朋友可以关注下,不定期更新干货!wx搜索:当爬虫遇到逆向。讲道理,rs5其实没啥好讲的,跟rs4大差不大,但本着能水就水的原则,还是来水一下吧。***,越说越不想写,坚持一下马上结束。
2024-09-10 16:43:07 635
原创 (rs系列)rs4之补环境
要补的环境不多,代码也是全抠,由于我们需要的是生成的cookie,cookie最后一定会赋值给document,所以我们连导出都不需要,直接在最后调用console.log(document.cookie)就可以了。rs扣代码还是比较麻烦的,本着结果导向的原则,我们选择了补环境的方式来解决问题。详细的补环境过程就不说了,反正是缺什么补什么,需要注意的是第一次返回的html中有不少标签内容都是补环境要加上的,下面直接提供我补完的环境,网站源码就不贴了,需要的自己去网站抠。wx搜索:当爬虫遇到逆向。
2024-09-10 16:42:34 324
原创 某red书最新版x-s、x-s-common(上)
重复几次操作你会发现,在进入下面这个代码之后参数就生成了。没关系,既然可以通过window调用,说明加密函数最终赋值给了全局window,那么我们只需要依葫芦画瓢,把整个js文件代码拷出,补上所需环境,再试着执行window._webmsxyw看是否有被赋值即可。进入p(d.fulfilled),在return处打上断点,跳过来,然后就一直按F8去跳,跳个几次吧(没数),会发现参数竟然加上了。异步调试技巧:看到.then,并且此时加密参数还未生成,可以点进.then第一个参数(函数),打上断点看运行情况。
2024-09-10 16:37:22 870 6
原创 JS逆向学习---简单的rsa
今日目标:aHR0cHM6Ly9jbi5mYXdteC5jb20vaG9tZS9yZWdpc3Rlcg==登录接口有一个加密参数,也就是密码加密值,就是今天的小目标直接搜索,只有一个js文件有结果,第一个便是加密位置很明显,是把明文密码传入做了rsa加密得到enPassword,再把enPassword赋值给了loginpwd。在setPublic开始打断点进行调试。加密的公钥是固定不变的,写死就可以。但为了篇幅能更长,看起来更牛逼,还是把生成过程push一下。打上断点再次发送请求,毫无
2022-05-13 15:25:39 2189 2
原创 JS逆向——微博登录接口参数分析
web端登录页:aHR0cHM6Ly93ZWliby5jb20vbG9naW4ucGhw首先抓包:随意输入账号密码。打开开发者工具会发现,输入完账号密码之后会分别发一次get请求。第二次请求的响应结果比较重要,在后面做逆向会用到,首先请求头中携带参数su: MTU3MTIzNDU2Nzg=,是由用户名进行了base64编码而来。该请求响应如下图:exectime: 7nonce: "OT1XYI"pcid: "gz-578eb0e9e0cecca273279e66ad49add8c260"pu
2022-04-12 16:38:00 2807 3
原创 小红书web端cookie信息生成
小红书web端的cookie包含4个参数:xhsTrackerId, extra_exp_ids, timestamp2, timestamp2.sig。前面两个参数直接携带请求小红书主页即可获取,后两个需要携带data两个参数做post请求获取。如上图,id是经由sign字符加密而来,sign是由UA、版本号、还有一些不知何物的字符拼接组成。下面是抠出来的js代码,用以填入sign生成idfunction get_id() { for (y = function(t) {
2022-03-28 17:37:59 10285 3
原创 Js逆向案例—网易云音乐
首先找到所需响应所在位置,点开Initiator。点开第一个js文件。url未登录状态csrf_token为空,不影响操作点开第一个js文件之后,在弹出的页面所选行打上断点,刷新页面,第一个url并不是我们所要的url,这里我们按F8往下走出现如上图url即为我们要分析的请求,此处data中有两个参数,此处参数既然已经加密完成,那么我们就需要往下走,继续按上图箭头方向往下查找相关加密位置找到window.asrsea函数即可,此为加密入口取消掉原来的断点,在新的位置打上断点再次刷新进入asr.
2022-02-17 10:16:58 1849 2
原创 Js逆向学习—RSA加密网站解析与python还原加密
今天的目标是 中大网校 的模拟登录,看图可知passwordLogin是登录请求,这里是对password进行了某种加密,想要模拟登录成功就需要知道密码的加密逻辑。首先点开Initiator,查看该请求发送过程中执行了哪些js代码,执行顺序为从下到上,jquery开头的js文件pass,剩下的挨个去点击,找相关加密逻辑。点开utils文件,在相关位置打下断点再次发送请求,可以看到此处执行的是url后缀为getTime的请求,返回文章最上方看到,此请求为最先发出的请求,跟密码加密无关,但响应返回了貌.
2022-02-09 17:28:04 1667
原创 JS逆向学习~微信公众平台登陆接口加密参数分析
今日饭后小目标首先随意输入账号密码发送登陆请求,我输入密码‘123456’,点击登录之后捕获右边登录请求一枚在发送参数中能看到我们填写的username以及pwd,这里明显pwd也就是密码是经过加密的,现在我们需要分析pwd的加密过程。加密结果为32位的16进制字符,盲猜是md5加密接下来打开search面板,搜索pwd关键字,这里分享一个小技巧,有些网站存在很多匹配但无意义的字符,比如这里如果直接搜pwd,还会匹配出很多pwdNum,pwdWord之类的词,增加了检索时间,所以建议搜索的时候
2021-11-23 10:31:00 598 1
原创 小红书app复制链接转换为可直接访问链接
当你在小红书复制某篇笔记链接,黏贴出来是这个样子的这种链接只有打开小红书app才能够访问,那么怎么把这种链接转换为可直接访问的格式呢?执行下方代码即可import requestsimport jsondef shortToLong(shortUrl): url = 'http://api.dwzjh.com/api/reduction?url={}'.format(shortUrl) res = requests.get(url).text res_dict = js
2021-11-10 14:34:27 14023 2
原创 Django—从入门到入院(第1天)虚拟环境的配置与准备工作(学python后端开发必看)
先喊一句:Python是世界上最好的语言。(心虚ing)Python的应用领域非常广,其中之一就是后端开发,而目前使用python做开发最主流的web框架就是Django以及Flask。两者相比较来我个人还是偏向于Django,它是一个重量级框架,有大量造好的轮子,我们只需调用即可。话不多说,进入正题!!!学习Django,先准备好你的编辑器与解释器,编辑器推荐pycharm专业版,解释器推荐3.5-3.77的,不建议使用3.8以上的,会有一些不兼容的情况出现。我一直用的是3.6.8。在此先声明一点
2020-11-04 22:51:24 247
原创 Python-爬取携程景点信息
携程在手 说走就走。今天来记录一下爬取携程旅行的教程。首先告诉大家,爬携程还是相对简单的,当然也有难得方法,这里就以实现为最终目标讲解最简单得方法。我要采集得是携程门票一栏得景点信息。还是照惯例用chrome抓包。首先需要获取每个景点详情页的url,我这边找到了直接贴图。原来以为拿到这个页面问题就解决了,可实践发现事情并没有我想的那么简单,这是一个post请求。我把参数都带上进行访问,压根拿不到数据。返回的json文件是这样的。研究了一下,发现参数里有一个变动的加密参数‘traceid’,很明显
2020-09-27 10:29:19 9221 2
原创 记录——Python-RabbitMQ多线程消费队列程序
import threadingimport pika# 处理消息def callback(ch, method, properties, body): print(" [x] Received %r" % body) # channel.basic_ack(delivery_tag=method.delivery_tag) # 取出之后即删除def consume(): credentials = pika.PlainCredentials('guest', .
2020-08-21 17:12:37 1734
原创 python爬虫抓取微信公众号文章(含全文图以及点赞数、在看数、阅读数)
因工作需要写了一个微信公众号文章的爬虫程序,贴一下分享给需要的朋友。首先是抓取文章的url链接,在反复研究之后找到的一个最简单的方法,不需要抓包工具。首先需要自己注册一个微信公众号,有微信即可绑定注册,很简单。打开浏览器搜索‘微信公众号’,按流程注册登录。注册完之后如图:点击左下角‘素材管理’,然后‘新建图文消息’。再在新打开的页面里,最上方找到‘超链接’选项,点击。在弹出的框中点击‘选择其他公众号’,然后就是输入你要爬取的公众号名称。好了,到这里傻瓜式进程结束!正式进入爬虫阶段。。
2020-08-03 20:04:48 21067 23
原创 爬取淘宝商品详情评论,最新版
第一步 抓包打开你想要爬取的商品详情页,这里我是输入手机然后随便点开的一个页面。(这里建议用谷歌浏览器,懂的人都懂不必多说)然后右键点击检查,选择network,找到保存评论的url。在这里提供一个小技巧,我们在打开网页的时候默认评论一栏是没有点开的,所以现有的url里并不存在我们所需要的评论的url。所以可以先把现有的url全部清除,再点击网页中的‘’累计评论‘’,这样找起来会简单的多大家第一次做可以在js里慢慢找,我这里就直接把评论的url地址给大家指出来了。我们点击Headers可以得到相关的ur
2020-06-15 11:03:10 1773
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人