0.前言

海康威视主要涉足安防领域,视频监控是其核心业务,客户主要面向政府职能部门,如:公安系统等,曾参与北京奥运会、60年国庆大阅兵和上海世博会的安保工作。

1.请求分析。

1.1 Http请求:Http请求分为 请求方法URI协议/版本、请求头、请求正文。登录用的用户名密码信息不是放在请求URL里面就是放在请求正文里面。

下面以最常见的POST请求与GET请求为例:

post

POST( http://(URL在此隐去)/loginAction.do) HTTP/1.1
Accept: text/html, application/xhtml+xml, image/jxr, /
Referer: http://(URL在此隐去)/
Accept-Language: zh-CN
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; >rv:11.0) like Gecko
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
Content-Length: 24
Host: IP在此隐去
Connection: Keep-Alive
Pragma: no-cache
Cookie: JSESSIONID=adcrBT4BZcrANhWnwBhDv1

zjh=123456&mm=123456

按照标准,请求头和请求正文之间有一个空行。
用户的用户名密码信息放在请求正文里面,如下

zjh=123456&mm=123456

GET

GET https://www.telerik.com/UpdateCheck.aspx?isBeta=False HTTP/1.1
User-Agent: Fiddler/4.6.2.32002 (.NET 4.6.1; WinNT 10.0.10586.0; >zh-CN; 4xAMD64; Auto Update; Full Instance)
Pragma: no-cache
Host: www.telerik.com
Accept-Language: zh-CN
Referer: http://fiddler2.com/client/4.6.2.32002
Accept-Encoding: gzip, deflate
Connection: close

在GET请求中一般不包含请求正文,请求用的参数(如用户名密码)加在URL里面。
如下本样例里面的

isBeta=False

1.2 用fireBug进行请求的分析

分析结果如下图:

因为是GET请求,所以并没有请求正文,只有一个请求头。

在请求头的消息中并没有包含登录用的用户名,密码信息。

1.3 用Fiddler4与IE配合进行请求分析

PS:为啥一定要用IE?因为在某些浏览器(如火狐)发送的请求不能被Fiddler4抓到。

抓到的信息如下图:

GET http://**/PSIA/Custom/SelfExt/userCheck HTTP/1.1
Accept: /
If-Modified-Since: 0
Authorization: Basic YWRtaW46MTIzNDU2
X-Requested-With: XMLHttpRequest
Referer: http://*/doc/page/login.asp
Accept-Language: zh-CN
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; >rv:11.0) like Gecko
Host: *
Connection: Keep-Alive
Cookie: language=zh; updateTips=true

在这里看到有一个

Authorization: Basic YWRtaW46MTIzNDU2

我仿佛看到了密码
这个是一个明显的Base64编码
百度一下:base64解码

2.总结

1.在这个登录过程中:没有采用正常的GET请求直接在URL里面中直接加入请求用的参数。
2.是在请求头里面增加了一个授权字段,这个实际上是一种认证方式叫做 Basic Auth,有兴趣的同学可以自行百度一下。
3.FireBug用起来比较方便,没有成功获取到这个字段的内容,Fiddler4功能丰富,但是使用起来复杂一点。
4.在火狐浏览器的RESTClient插件中直接已经封装了Basic Auth功能,可以直接方式带有这种认证方式的请求,有兴趣的童鞋可以自己探索一下。

海康威视网页客户端登录过程浅析相关推荐

  1. Lync 手机客户端登录过程

    近日一直在做让Lync 手机客户端在内.外网正常登录的配置,在经过同微软工程师的探讨与分析后,在这里也将 Lync 手机客户端登录的过程分享出来,以便大家可以了解整个登录的过程. 手机根据你输的SIP ...

  2. 无限宝电脑连接不上服务器,无限宝客户端登录过程问题

    1.无限宝客户端无法启动 问题现象:点击"进入课堂"后,出现在线升级一闪而过,但是无限宝无法启动, 问题原因:可能是从旧版本升级至新版本的过程中出现问题或者在卸或者安装无限宝过程中 ...

  3. 企业微信三方开发(三):网页授权登录

    其他链接 初识微信开发 企业微信三方开发:注册企业微信服务商 企业微信三方开发(一):回调验证及重要参数获取 企业微信三方开发(二):获取access_token 企业微信三方开发(三):网页授权登录 ...

  4. C# 网络编程之网页自动登录 (一).使用WebBrower控件模仿登录

    C# 网络编程之网页自动登录 (一).使用WebBrower控件模仿登录 最近学习C#网络编程中,想实现网页自动登录并提交GET/POST信息,再实现循环登录不断发送报文给服务器,服务器发送消息给客户 ...

  5. OAuth2.0实践之foursquare客户端登录

    之前谈的两篇<Authentication和Authrization(上).(下)>以空谈为主,算是一个开头,原文最后有说要一一整些实现出来的.那么现在就开始吧,不过介绍的顺序则先从相对简 ...

  6. [转载]ESFramework 4.0 快速上手(15) -- 客户端登录验证

    ESFramework 4.0 快速上手(15) -- 客户端登录验证 在之前版本的Rapid引擎中,是没有提供客户端登陆验证的机制的,如果要验证用户的帐号密码信息,我们只有自己手动通过自定义信息来实 ...

  7. 已成功与服务器建立连接,但是在登录过程中发生错误。 (provider: SSL Provider, error: 0 - 接收到的消息异常,或格式不正确。)...

    之前做好的asp.net部署后,发现 访问数据库时: 异常:已捕获: "已成功与服务器建立连接,但是在登录过程中发生错误. (provider: SSL Provider, error: 0 ...

  8. 域用户的登录过程和GC的关系

    域用户的登录过程和GC的关系 1. 模拟环境 根域为contoso.msft,dc为dc1.contoso.msft,dc2.contoso.msft同时也是GC,所处站点site 1: 子域为chi ...

  9. cas sso单点登录 登录过程和登出过程原理说明

    CAS大体原理我就不说了,网上一大把,不过具体交互流程没说清楚,所以有这篇文章,如果有错误,请多多指教 登录过程 用户第一次访问一个CAS 服务的客户web 应用时(访问URL :http://192 ...

  10. Netty实战 IM即时通讯系统(九)实现客户端登录

    ## Netty实战 IM即时通讯系统(九)实现客户端登录 零. 目录 IM系统简介 Netty 简介 Netty 环境配置 服务端启动流程 客户端启动流程 实战: 客户端和服务端双向通信 数据传输载 ...

最新文章

  1. 分享一个Go按行读取命令行输入的例子
  2. 阿里云rds linux平台使用wget 工具下载备份与日志文件
  3. Hibernate 双向一对一实现(基于annotation)
  4. 好好学python · 元组
  5. AS3中,setTimeOut、setInterval、Timer区别
  6. 钢材种类有哪些?怎么分类
  7. C语言 IP地址合法性判断 去除字符串首尾空格
  8. 用turtle库画童年的记忆哆啦A梦
  9. 告别2013拥抱2014
  10. 基于Quartz.net 的开源任务管理平台
  11. setjump和longjump
  12. PHP ajax 传递中文乱码,ajax+php传递中文乱码解决办法
  13. 程序员看的JPEG图像压缩介绍(多图慎入)
  14. SQL Server便利名称
  15. 国产三维CAD/CAM软件SINOVATION10.2版本发布,亮点功能抢先看!
  16. js word 预览_关于Word打印的2个秘密,90%的人都不知道
  17. makefile 指定文件搜索路径和文件生成路径
  18. centos7设置DNS
  19. 奈奎斯特与香农定理_奈奎斯特定理和香农定理解析
  20. 因为一条SQL,我差点被祭天......,我太难了!

热门文章

  1. RINEX 3.02版本文件格式介绍
  2. JNI 调用 DLL
  3. Dfinity(ICP)介绍-1
  4. 用latex画化学结构式
  5. idea谷歌翻译插件translation失效问题(可行)
  6. 思科网络安全解决方案
  7. 从雅虎到阿里巴巴-----一个程序员的心路历程__雅虎是一个好公司
  8. IT6302 电源后面板的 DB9 接口输出为 TTL 电平,您需要通过附件电平转换后才可连接到 PC 机的串口上
  9. 求助:python爬取国家统计局多个列表数据时出错
  10. Raspberry 4B 2G Shairport-sync Airplay