新浪微博pc模拟登录(新浪微博PC端模拟登陆) - 长篇鬼故事 - 鬼故事网(guigushi.cc)

长篇鬼故事 - 新浪微博pc模拟登录(新浪微博PC端模拟登陆)

2023-09-14 23:24:08 阅读 :

今天给大家带来的是新浪微博PC端的模拟登陆。

工具

这次使用的工具是Charles和chrome浏览器,看过我之前文章的同学应该知道我使用的Mac电脑,Fiddler不能用,之前用虚拟机很麻烦。很早的时候有装过Charles,但是不太会用,后来发现一篇比较详细的文章,忘了记录了。发现Charles还是非常好用的,而且有个很好的功能,就是可以开启多个Session进行抓取对比,这个功能非常,如果经常做爬虫调试的人一定能知道。我们抓取一个网站的登录过程,然后在模拟的过程中,可以再另一个session中抓取自己模拟登录的过程,然后对比一下自己的请求发送的数据和浏览器请求发送的数据是否一致。之前我调试一直都是通过打印查看,这样一方面很不方便,另外一方面打印也不完整。所以非常推荐大家使用Charles,网上破解也有很多。

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(1)

Charles

打开Charles,要开启SSL代理抓取,这样才能抓取到HTTPS请求,毕竟现在很多网站都已经使用HTTPS请求了

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(2)

HTTPS抓取设置

Host填*表示匹配所有网址,HTTP请求端口是80端口,HTTPS请求端口是443端口,设置好就可以开始抓取了。

抓取请求

打开chrome浏览器,最好清理缓存,然后使用隐身模式访问https://weibo.com/

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(3)

打开隐身窗口

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(4)

无痕模式

在网页上执行一遍登录操作

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(5)

微博登录过程

抓取到登录过程后,我们就可以开始分析了,记住一定要清理缓存。我有好几次抓取都不一样,后来换了Safari浏览器(因为我很少用这个),其实这一步用什么浏览器都无所谓,chrome浏览器主要是用来调试JS用的。

过程分析

查找登录请求

登录一般url里面应该都会有login,而且是post请求,当然不排除其他方式。

https://login.sina.com.cn/sso/login.php?client=ssologin.js(v1.4.19)

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(6)

登录请求url

找到登录请求后,这里主要关注Form表单信息,参数很多,我们需要先大概区分一下哪些可能是固定参数,哪些是变化的参数。

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(7)

参数确定

一目了然可以看到那些是固定的了吧,这些所有的参数其实我们都是可以追根溯源的,但是没那个必要,在这种参数比较多的情况下,太费事了,可以采用多次抓取登录过程,对比请求参数的方式确定部分固定的或者不重要的参数,那么需要我们通过其他方式获取的参数有pcid、door、su、servertime、nonce、rsakv、sp、prelt,这里servertime比较有争议,一般看到这种time或者151开头的10位或者13位数字,都是时间戳,用time.time()获取就可以,但是这里是servertime,我们应该引起注意。

参数分析

下面我们一一来看这几个参数怎么获取

  • su
  • 我们要先说一下这个su,因为其他的参数都和它有关系。这个su在js调试的时候可以看到它的算法,但是其实我们可以根据它的特点先猜测一下,有可能是base64加密的。为什么?

Base64是一种基于64个可打印字符来表示二进制数据的方法,哪64个字符呢? A-Z、a-z、0-9和" "、"/",很多时候base64加密的字符串尾部为 1个或2个 "=", 因为它是把3个字节的二进制拼接,如果最后剩下一个,那么尾部就会添加2个=, 如果剩下两个,尾部就添加1个=,如果刚合适那当然就没有=了

推荐一个工具网站https://tool.lu/encdec/

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(8)

image.png

使用编解码试试看,最终我发现是账号,而且是采用了url encode和base64编码,所有最终我们的su就是

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(9)

image.png

  • pcid、servertime、nonce、rsakv
  • 它的值时gz-48fb749c5c715e0d5caeed045716492e153c,我们先在Charles中搜索一下

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(10)

  • pcid
  • 我们一般都是搜索response的数据,主要是看一下是不是在某一个请求的返回值里面,这里非常棒,我们找到了pcid和值出现的地方https://login.sina.com.cn/sso/prelogin.php?entry=weibo&callback=sinaSSOController.preloginCallBack&su=MTgwOTE3MzQxMzY=&rsakt=mod&checkpin=1&client=ssologin.js(v1.4.19)&_=1518956150179,在这个请求的返回值里面,而且我们还有意外的收获,我们得到了四个参数,和登录请求里面的一样,我们现在确定了四个参数的来源,

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(11)

  • image.png
  • 看一下请求的参数

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(12)

  • image.png
  • 除了su和下面的时间戳其他的参数基本固定,时间戳没什么特点,我们就用int(time.time() * 1000)生成,因为是13位的。su我们上面已经知道了。那么这四个参数也搞定了✌️
  • door
  • door很熟悉吧,是验证码。那么验证码的请求怎么确定,非常简单因为我们的验证码是一张图片,所以找图片请求就可以了

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(13)

  • 验证码
  • 这个往上翻一翻就能很快找到,找到后我们看看它的参数

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(14)

  • 参数
  • p的值就是pcid的值,我们已经知道了。r有点不太好找了,先在Charles里搜一下62026273,没找到,那么应该就是本地生成的,其实你可以写死试试,有没有问题。除了搜这个值以外,我们还可以搜一下这个请求是在哪里生成的,看它附近有没有有用的数据。

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(15)

  • image.png
  • 搜一部分就行了,先用小部分搜,如果结果太多,在多加一些搜索,这里我们找到了一条,点击去看一看,点到JavaScript那个页签,Charles会帮我们格式化js

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(16)

  • image.png
  • 找到了pincodeUrl,再搜索一下pincodeUrl

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(17)

  • image.png
  • 看到没有,开不开心?激不激动?

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(18)

  • 验证码请求
  • prelt
  • 这个参数和验证码请求的那个r参数类似,值搜不到,但是我们可以搜这个prelt,你问r那个为啥不搜?[鄙视眼]你猜猜能搜到多少?

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(19)

  • image.png
  • 同样点进去,切换到JavaScript页签,发现了preloginTime,再搜它吧

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(20)

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(21)

  • image.png
  • 多搜一些你就发现它应该是个时间段,结合prelt本身的值,我们就可以构造出一个值。可以通过多次请求来确定一个范围,另外时间差,而且它用的是本地的时间计算的,那么也不需要多么精确,确定一个范围应该就可以了,所以在一个范围内取随机数就行了

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(22)

  • -sp
  • 最麻烦的来了,sp这么长一段,观察其特点,发现应该是16进制,所有字符都是在0-9、a-f之间,而且参数pwencode的值rsa2,基本上我们就可以确定其采用的是rsa加密算法。这串字符肯定是搜索不到的,可以搜sp,删掉明显不是的,我们一般看的是sp=xx这样的,就是看赋值,从赋值的操作上下文去查看

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(23)

  • image.png
  • 经过过滤分析,只剩下两个地方https://passport.weibo.com/visitor/visitor?entry=miniblog&a=enter&url=https://weibo.com/&domain=.weibo.com&ua=php-sso_sdk_client-0.6.23&_rand=1518956141.4946和https://js1.t.sinajs.cn/t5/register/js/v6/pl/register/loginBox/index.js?version=d7a77880fa9c5f84

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(24)

  • image.png
  • 然后打开chrome浏览器,开发者工具,然后访问https://weibo.com,切换到source页签找到这两个js文件,并搜索sp,通过观察特点基本确认为第二个js文件

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(25)

  • image.png
  • e.sp = b,在b的计算之前打上断点,然后执行登录操作,这里我们还发现了su的计算算法,跟我们上面分析的基本一致

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(26)

  • image.png
  • 通过调试这段代码我们就得到了其加密方式,这里有几个变量me.rsaPubkey、me.servertime、me.nonce、b,通过console中查看b是密码,然后就是这pubkey

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(27)

  • image.png
  • 在上面pcid参数的请求的返回值里面我们看到有这个值。OK这几个变量我们都知道了,下面你了解一下rsa加密算法的python实现,直接贴代码

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(28)

  • image.png

执行登录请求

登录请求的所有参数都已经分析完了,登录后查看response数据

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(29)

image.png

然后再看一下登录请求的下一个请求,发现是通过登录请求的返回值中的url,然后发送此请求

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(30)

image.png

返回值中又出现了另外一个url,我们在下面也找到了,提取url发送请求

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(31)

image.png

看到返回状态了吗?302重定向。发送请求以后查看一下response的url,发现是在它下面的请求地址

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(32)

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(33)

返回值和下面的请求好像有点关联,有下一个请求的参数。别急,先等等,我们就这样一直请求、提取请求、再请求,得有个终点吧,到哪里算一站呢。我们想想登录以后,显示一个页面有用户名。我们只要能得到这个用户名那就说明登录成功了。

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(34)

image.png

这里看到了这个home请求中出现了我的用户昵称,然后上面那个请求的返回状态302,又是重定向。使用上面的方式确认一下。提取userdomain,然后拼接https://weibo.com/

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(35)

image.png

成功了

新浪微博pc模拟登录(新浪微博PC端模拟登陆)(36)

,
本文标题:新浪微博pc模拟登录(新浪微博PC端模拟登陆) - 长篇鬼故事
本文地址:http://www.guigushi.cc/changpianguigushi/37220.html

相关文章

  • 38.88红包啥意思

    38.88红包的意思是“恭喜发财”。在中国,数字8通常意味着“法”。0-9数字谐波数字谐音是一种用数字代替文字的交流方式。数字解读:0——为了完美,为了完美,为了无尽;1-代表独特,你和起点;2-代表爱情和两个人的世界;3-代表想念,代表生活,...

    2023-04-21 长篇鬼故事
  • 鸟巢嘉年华 亚洲文化嘉年华闪耀鸟巢,带你看现场!

    北京五月鲜花盛开鸟巢在夜晚闪闪发光今晚亚洲文化嘉年华在这里举行各国文明之间的交流与对话相互学习的美丽画面这是一场精彩的表演一起感受亚洲多元文化的美好↓《我们的亚细亚》一个交响互动合唱亚洲文化嘉年华的演出在交响互动合唱《我们的亚洲》中拉开帷幕。我们的亚洲由中国交响乐团...

    2023-02-25 长篇鬼故事
  • 冯小刚作品集(冯小刚有哪些经典电影作品 10部冯小刚经典电影推荐)

    冯小刚有哪些经典电影作品 10部冯小刚经典电影推荐冯小刚对赌失败后罕现身,冯小刚有哪些经典作品谁知道冯小刚都拍过什么电影...

    2023-08-15 长篇鬼故事
  • 中发烫发图片 女生中发中卷烫发发型图片 中发烫发洋气又时髦

    卷发呈现出一种浪漫婉约或者热情奔放的女人味,因此很多女生都偏爱卷发发型。无论是浪漫慵懒风的大波浪卷,或是洋气知性的中卷,抑或是尽显蓬松个性的小卷发,无疑都是为了衬托女生更美的存在。而长度适中的中发又是很多女生都喜欢的,那么当中发与中卷烫发相遇时会有怎么的美感呢?整体侧重披散...

    2023-03-30 长篇鬼故事
  • 戴安娜王妃车祸 【真相】戴安娜车祸景点什么情况?始末详情曝光人血馒头好吃吗?

    戴安娜王妃是全球最具影响力的女性之一,她短短的一生留下很多故事和争议,那场致命的车祸也已经过去20年了。与查尔斯的那段婚姻,给了她两个可爱的孩子威廉王子和哈里王子,同时也给了她无尽的伤痛。  外国媒体对戴安娜王妃的评价一向很高。当戴安娜在巴黎发生车祸身亡后,各种猜测和爆料不断。不管是杜撰的还是来自身边人的口述,只要是跟戴安娜有关的事情,媒体都感兴...

    2023-04-30 长篇鬼故事
  • 【秦禧】秦桧和李清照是亲戚吗?王室,数不清的姻亲家族

    秦禧相关介绍,这篇文章捡时事独家原创稿,未经许可严禁转载/作家宋燕。 家里靠父母,出门亲戚——在中国古代社会,一个人的出身决定了他能走多远。宋朝以后,随着科举制度的深入,寒门入室的人越来越多,但“朝中”是缩短奋斗道...

    2023-03-09 长篇鬼故事
  • 怪侠欧阳德主题曲 那些年我们曾一起追过的简远信“神剧”,虽然很狗血,却依然火爆

    近年来,电视荧屏上出现了许多“神剧”,但要说到神剧,就必须提到一个人的名字,简远鑫。这位来自台湾的编剧被网友称为“简·沈边”,是继郑铮之后又一位完美的“神剧”创作者。他写的那部“边看边骂”却“收视率极高”的电视剧,曾经称霸大卫的金档,就像跳马戏的江南大叔一样,能引领全国潮流。无论是讲述贫...

    2023-01-24 长篇鬼故事
  • 奢侈化妆品 要妻子降级化妆品:别太奢侈

    这两天,重庆的刘莉非常担心。为了给刚出生不久的宝宝攒奶粉,丈夫戒了近十年的烟瘾。这本来是一件好事,但反过来,她的丈夫和婆婆要求刘莉也做出改变,让他们降低化妆品的档次...丈夫主动为宝宝戒烟今年27...

    2023-04-23 长篇鬼故事
  • 吴彦祖脱发 吴彦祖晒近照圆寸 岁月不饶人!男神也避免不了脱发?

    近来,吴彦祖在社交平台上晒出了自己的近照,留着圆寸发型,真的是岁月不饶人啊。许多网友看后纷纷吐槽道:“男神快要秃了?”接下来,一起去了解一下吧。 吴彦祖 相信很多人知道吴彦祖吧,他是国内知名的男演员、导演、制片人。吴彦祖年轻的时候,他...

    2023-06-17 长篇鬼故事
  • 因扎吉为什么叫九爷 九组镜头,九段属于九爷的珍藏记忆

    生日快乐,皮波! 今天是因扎吉45岁生日。因扎吉不仅是红黑军团历史上一名优秀的前锋,也是我们的超级皮波,他一直是红黑军团心目中的“九大领主”。红黑军团的第十一年,米兰有他在一线,一切都变得那么简单。他门前的嗅觉和帅气的外表都让我们怀念过去的岁月。今天我们用9套镜头回顾因扎吉的红与黑时代,庆...

    2023-01-09 长篇鬼故事
你可能感兴趣