工具Fiddler/python3

打开Fiddler,清空一下Fidder里面的请求记录

打开app,进行登录,注意Fiddler里的请求变化

在弹出app登录的时候Fiddler里已经有了四个请求,如下:

注意看一下第一个请求的URL中的信息   "login.do?",那需要分析的就是这个请求了

右键这个请求,copy->Headers only,然后把所有请求信息全部拿出来,请求信息如下,在请求的时候已经有了cookie信息,不知道cookie是从哪里生成的 #之后对比的时候发现这个cookie是上一次请求时的cookie(参考上一篇文章 http://www.cnblogs.com/Jacck/p/7704832.html),也就是说有个地方记录的最后的请求cookie信息然后下一次登录还带着这个cookie去请求登录

GET http://xxx.com/account/login.do?userId=xxx&token=xxx HTTP/1.1
Host: xxx.com
Connection: keep-alive
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.59 Safari/537.36
Accept-Encoding: gzip,deflate
Accept-Language: en-us,en
Cookie: xxx HTTP/1.1 200 OK
Server: nginx/1.2.2
Date: Sat, 21 Oct 2017 07:24:13 GMT
Content-Type: text/html; charset=utf-8
Transfer-Encoding: chunked
Connection: keep-alive
Cache-Control: private
X-AspNetMvc-Version: 5.2
X-AspNet-Version: 4.0.30319
Set-Cookie: xxx; path=/; HttpOnly
X-Powered-By: ASP.NET
Content-Encoding: gzip

把请求的url单独拿出来放到浏览器中直接访问,显示信息如下,分析一下浏览器请求详细信息

Fiddler中刚才浏览器的请求在这

右键,Copy->Herders only,把请求信息拿到,如下

GET http://xxx.com/account/login.do?userId=xxx&token=xxx HTTP/1.1
Host: xxx.com
Connection: keep-alive
Cache-Control: max-age=0
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36
Upgrade-Insecure-Requests: 1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.8
Cookie: qgqp_b_id=xxx; st_pvi=xxx; _qddaz=QD.emt8s7.goudx0.j8ubqjuz; pgv_pvi=xxx HTTP/1.1 200 OK
Server: nginx/1.2.2
Date: Sat, 21 Oct 2017 07:44:15 GMT
Content-Type: text/html; charset=utf-8
Transfer-Encoding: chunked
Connection: keep-alive
Cache-Control: private
X-AspNetMvc-Version: 5.2
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Content-Encoding: gzip

对比一下app登录时候的请求信息,还是有些地方不一样,但是除了cookie的请求头都可以直接创建,试着把除cookie信息之外的请求头信息头都设置成一样再次发送请求

python 请求代码如下

import requests

url = 'http://xxx.com/account/login.do?userId=xxx&token=xxx'
headers={
"Host":"xxx.com",
"Connection": "keep-alive",
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
"User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.59 Safari/537.36",
"Accept-Encoding": "gzip,deflate",
"Accept-Language": "en-us,en" }
r = requests.get(url,headers=headers)
print (r.text)

请求结果如下

模拟登录信息失败,所以cookie信息一定要有,而这个cookie去哪里拿呢

试着把Fiddler里面登录成功的那个cookie拿出来带着那个cookie再请求一次#第一次用app登录 Fidder分析的第一个请求,在request headers里面加一个Cookie值,代码就不贴出来了

运行结果如下:

这是怎么回事呢? 带了Cookie也请求不到

去app中点击某个查询去看看他现在的Cookie是什么

app内显示网络不正常刷新了一下,然后去看看Fiddler里发生了什么

请求中又有了一个登陆请求,查看他的cookie是什么

对比了一下 Cookie中多了一个参数名字“ct” #应该是current time的意思吧


返回的时候

Set-Cookie又把一个参数修改掉了“cm”参数

python配合Fiddler获取windows app登录时生成cookie实例的更多相关文章

  1. 安卓,支付宝app登录时,提示 服务器安全证书已过期或不可信任,请问怎么解决

    安卓,支付宝app登录时,提示 服务器安全证书已过期或不可信任,请问怎么解决 请把手机时间调成当前时间.

  2. APP登录时Token认证过程

    1.App登录Token登录机制: 一般第一次安装App后,会让你进行注册后登录,而只要登录成功后,以后的每次启动App都是登录状态, 不需要每次启动时再登录.但有些App你若长期没有启动,它会提示你 ...

  3. Python使用wmi获取Windows相关信息

    在使用Python获取Windows系统上的相关的信息可以使用WMI接口来获取, 什么是wmi? WMI是一项核心的Windows管理技术,WMI作为一种规范和基础结构,通过它可以访问.配置.管理和监 ...

  4. python wmi模块 获取windows内部信息

    WMI (Windows Management Instrumentation) 模块可用于获取 Windows 内部信息,在使用Python获取Windows系统上的相关的信息可以使用WMI接口来获 ...

  5. 用PYTHON + PYWIN32 + WMI获取WINDOWS系统基本信息

    网上原码,去了DECODE编码的问题. PyScripter这个PYTHON的IDE工具在WIN下表现不错哟. 感觉比SPYDER,ERIC,SUBLEME TEXT3之类的好用呀.. #!/usr/ ...

  6. 利用python 与 wmi 获取WINDOWS基本信息

    #!/usr/bin/env python3.5 # -*- coding:utf8 -*- import platform import subprocess import wmi def serv ...

  7. 使用Fiddler获取手机app数据

    参考资料:https://www.jianshu.com/p/9e05a2522758 Fiddler下载地址   https://www.telerik.com/download/fiddler

  8. php注册登录时生成的验证码

    http://blog.sina.com.cn/s/blog_8173443e01012l82.html 记得我学php时第一件事就是研究登陆注册.当然,登陆少不了验证码.两年过去了,昨天突然想用个验 ...

  9. 有关WINDOWS XP登录密码的几种方法

    网上关于破解WINDOWS XP登录密码的几种方法很多,但许多根本不行.我现在总结自己试过几种,这几种方法其实均比较菜的,但可行的.WINDOWS XP登录是由SAM 文件管理的,总体来说“山姆大叔” ...

随机推荐

  1. AxWebBrowser 实现的多进程浏览器 (一)

    我们使用 C#/VB.NET 进行 Trident 内核浏览器编程,大多都是单进程的,当打开的页面较多时比较容易出现卡死等情况. 单进程浏览器简单示例: Public Class formBrowse ...

  2. Docker部署MySQL容器

    从仓库下载镜像 sudo docker pull mysql:5.7   创建容器 docker run --name="mysql" \ -p 3306:3306 \ -v /U ...

  3. C++模板的实现(模板函数和模板类,附带模板实现顺序表和链表代码)

    文章链接:https://blog.csdn.net/qq_38646470/article/details/80209469

  4. C#四则运算器(多态方法实现)

    在上一节C#课上,我们学习了用类的继承的方式来做一个四则运算器,然而老师的代码在课上演示的效果并不理想,而且没有使用多态的思想实现,今天我们就来用多态的方式实现四则运算器. 1. 题目及要求 2. A ...

  5. Django中settings设计模式(单例模式)

    配置文件: 需求:配置文件,默认配置和手动配置分开,参考django的配置文件方案,默认配置文件放在项目容器内部,只让用户做常用配置. /bin/settings.py(手动配置) PLUGIN_IT ...

  6. 将本地开发完的SDK代码上传到SVN上面:an error occurred while contacting the repository The server may be unreachable or the URL may be incorrect

    将本地开发完的SDK代码上传到SVN上面:an error occurred while contacting the repository  The server may be unreachabl ...

  7. maven 阿里仓库配置文件

    <?xml version="1.0" encoding="UTF-8"?> <!-- Licensed to the Apache Soft ...

  8. 《UML大战需求分析》-读后感二

    活动图将流成分解为一个一个的活动,通过活动的先后顺序来展示流程,而状态机图是从某个事物的状态是如何转变的角度来展示流程,首先确定事物,然后找出状态,状态之间的箭头叫转换,箭头上的文字说明了是什么事情导 ...

  9. HDU 3853 LOOPS 期望dp

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3853 LOOPS Time Limit: 15000/5000 MS (Java/Others)Me ...

  10. Results the mutual for the first time(alpha阶段总结)

    由于前天听大家的成果展时,做得笔记不够完善,有一两个组找不到信息,如果没有评到的组望谅解. 分数分配: 由于组内某些原因,我们现重新分组: 试用版: 总结前阶段的工作: 在前一段时间,我们第一个spr ...