「软件测试」 抓包token的理解

国内大部分的授权协议都是Oauth2.0。这个协议简单的说通过给用户提供一个令牌(token),而不是通过用户密码来授权,这样的一个好处时,可以方便开发者开发软件,而使用者不需要将密码提供给开发者从而避免一些隐私的问题。 

通过token证明你可以有资格对这个测试环境中的页面进行抓包。

其实抓包是一个很简单的概念,只要对http协议有基本的了解就可以,网上有大量的可以抓包的库。其实只要时基本的实现了http协议的客户端都可以抓包。比如说Python的url,bcloud就是在此基础上实现的。我找到的java的库是okhttp,之前似乎还有httpclient,没用过不多说了。就我用过的url和okhttp来说感觉都差不多,毕竟http协议也不会有太大变化了。 
抓包其实不光是用在模拟登陆,很多很多地方都用得到,比如说做服务器的时候需要分析性能或者分析bug之类的,比如写爬虫之类的,是一个比较基本的技能。

抓包有很多中方法,除了用库分析以外,也有一些软件可以抓包,一般来说如果时浏览器抓包的,浏览器自身自带了很多分析工具网上教程也很多,搜搜就有。 
但是浏览器抓包也有一些不好的地方。有些数据的信息时看不了的。比如说gzip格式的数据,json没有分析之类的,需要自己分析。通常来说都是用web浏览器抓包作为分析资料,用库来模拟实现web浏览器过程。

Cookie、Session 和 token

这里尝试解释一下,如果以后发现问题再修改,其实没完全理清楚。

Cookie出现的主要目的是为了解决HTTP无状态的问题,是HTTP拓展协议。就好像之前所说的问题,用来保存用户的状态信息,比如说用户名,密码信息,购物车信息等等。Cookie通过浏览器来在客户端管理,不同浏览器之间互相独立。也有说法cookie分为内存和硬盘两种储存方式,硬盘上的cookie是浏览器共享的。

Cookie主要有名字、值、缓存时间、路径和域: 
名字和域就是键值对没什么好说的。 
Cookie有缓存时间限制,如果超过时限会消失,如果cookie没有设置缓存时间,则时间为本次会话,浏览器窗口关闭后就消失了。 
路径和域构成了Cookie的作用范围,传送给服务器的cooki必须是作用范围大于请求资源的域才传送。 
Cookie有大小限制,最大4k。另外浏览器通常也也限制每个站点cookie的数量和cookie的总量。

cookie产生的方式:正常来说是通过浏览器或者说http交互的,但是实际上也可以通过程序语言自己构建cookie。

Session:

可以说Cookie是客户端对用户信息的储存,而Session则是实现保存用户状态信息的机制。 
通常来说当用户发像服务器发起一个链接,则服务器会建立一个Session,并且保存这个Session的历史内容,并且向用户发送一个Session ID。通常来说本次Session在用户完成会话之后就关闭了,但是服务器并不会删除这些信息而是将其作为历史记录绑定到用户储存起来。当下一次用户再次连接服务器后,通常来说根据Cookie来再次验证用户,然后结合用户历史记录重新生成一个Session并且重新发送一个SessionID。 
但是还有一点需要说明。通常来说用户并不会通知服务器关闭Session。服务器通常来说会保持Sessioon一段时间,也需是几分钟,几个小时,几天都有可能。如果在此期间,依然用相同的SessionID去访问资源的话,那服务器同样是相应请求的。 
用户可以通过Session ID来实现有状态的会话,但是Session理论上说也可以时无状态的,但是一般不会这样用。

广义上说Session并不是必须再Http协议上,可以再很多层上实现:以OSI为标准:

  • 应用层: 
    • HTTP session:
    • telnet:
  • 会话层: 
    • 基于SIP(Session Initiation protocol)的网络电话
  • 传输层:

    • TCP session

    对于没有实现正式的Session层的传送协议比如说(UDP)或者说存在时间非常短协议(HTTP),需要再更高层上实现Sesssion。典型的就是HTTP Cookie来帮助实现的状态初始化。

Token

有了Cookie和Session的知识,那token就比较好解释了,Token我理解的话就是Session ID的一种。

Cookie和Sesssion其实没有什么可以比较的东西,只能说通过Cookie,再更上一层次的设计上实现了为无状态的HTTP协议的Session机制。

token并不是cookie的一种,可以是cookie验证后的产物,但是token可以以cookie的形式储存,传递的时候也可以用cookie的形式来传送,也可以写入url里传送,也就时所谓的URL重写技术。另外Cookie通常是浏览器维护的,但是token不一定,可以以其他终端的形式维护。

唯一需要说明的是,为何有了Cookie还需要实现Session而不是只用Cookie:

一方面Cookie本身有一定的限制:

  • 首先,cookie并不是万能的。cookie有很多限制,比如说不能跨域访问。跨域访问还有很多其他的问题需要考虑,这里不赘述了。此外token还是一种常用的防止CSRF的手段。
  • 其次,cookie是明文传送的。除非你使用https的协议,http协议是明文传递的。明文传递cookie很容易被盗取,但是token就不会有这么明显的意义。
  • 此外,即使不考虑安全的问题。每次都通过cookie来验证用户状态也是一个麻烦的问题。耗费了大量的资源且不必要。服务器验证之后给用户一个有一定时限的token,这样用户可以通过token免去验证的烦恼。
  • 最后,Cookie本身时可以删除的。

另一方面Session并不只是实现了记录的内容。更多的时候用于标示和跟踪用户的作用。

黄鸟抓包(Huang Niao)是一种流行的网络抓包工具,可以用于分析和捕获网络通信中的数据包。使用黄鸟抓包工具可以帮助我们了解应用程序的通信行为,发现潜在的安全问题,并进行调试和优化。 而Token是一种用于身份验证的令牌,常常用于保护网络API和应用程序。它是由服务器生成并向客户端发送的,以证明客户端的身份和权限。 黄鸟抓包工具可以帮助我们捕获并分析网络通信中的Token,并在调试或开发过程中帮助我们检查Token的正确性和安全性。 下面是一个黄鸟抓包Token教程的简要步骤: 1.下载和安装黄鸟抓包工具:黄鸟抓包工具可以从官方网站或其他可靠的来源下载。根据您的操作系统选择适当的版本,然后按照提示进行安装。 2.配置代理:在您的设备上配置代理,以便将网络流量导向到黄鸟抓包工具。具体设置方法可能因操作系统而异,一般可以在黄鸟抓包工具的说明文档或官方网站上找到相关信息。 3.启动黄鸟抓包工具:打开黄鸟抓包工具,并按照界面上的指示进行设置。您可能需要配置一些网络参数,如监听端口。 4.捕获数据包:在启动黄鸟抓包工具后,它将开始捕获网络通信中的数据包。您可以选择具体的应用程序或者某个特定的网络请求进行捕获和分析。 5.检查Token:在黄鸟抓包工具中,您可以查看和分析捕获到的数据包。寻找与Token相关的请求,并检查Token的有效性、安全性以及与服务器端生成的Token是否匹配。 需要注意的是,使用黄鸟抓包工具进行网络抓包Token分析时,需要遵守法律法规和道德准则。请确保您拥有相关网络服务的合法使用权限,并遵守相关服务提供商的使用规定。 以上是关于黄鸟抓包Token教程的简要介绍,希望对您有所帮助。如需更详细的操作方法和教程,请参考黄鸟抓包工具的官方文档或网站。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值