HTTP认证
HTTP还提供了对用户进行身份验证的机制。有三种方法可用作协议的一部分:
- 基本认证:用户名和密码使用base64进行编码,并使用Authorization标头发送:Authorization: basic YWRtaW46YWRtaW4K。
- 摘要认证:服务器发送挑战(使用的唯一信息),客户端响应此挑战(散列信息,包括用户提供的密码)。此机制可防止密码以未加密方式发送到服务器。
- NTLM身份验证:主要用于Microsoft世界,与Digest非常相似。
Web服务
Web服务通常是使用HTTP调用远程方法的简单方法。这基本上是一个奇怪的方式发送电话到服务器并得到回应。发送的信息可以是:
- 与任何其他针对REST的HTTP请求一样发送。
- 使用XML消息发送SOAP。
- 使用基于JSON的消息发送。
调用的远程方法可以由服务器检索:
- 根据网址。
- 基于HTTP头(SOAPAction例如)。
- 基于消息内容。
测试Web服务与测试传统Web应用程序非常相似,除了您的浏览器可能不会(开箱即用)能够与服务器端交谈。但是,一旦你有了请求的例子,你可以很容易地使用脚本语言或任何工具,允许你发送HTTP请求fuzz和攻击服务器端代码。