Security Testing 简明教程

Security Testing - Web Service

在现代的基于 Web 的应用程序中,使用 Web 服务是不可避免的,而且它们也容易受到攻击。由于 Web 服务请求从多个网站提取,因此开发人员必须采取一些额外的措施才能避免黑客进行任何形式的渗透。

Hands ON

Step 1 − 导航到 Webgoat 的 Web 服务区域,然后转到 WSDL 扫描。我们现在需要获取其他帐号的信用卡详细信息。以下是对这种情况的概述。

web services

Step 2 − 如果我们选择名字,则会通过 SOAP 请求 xml 调用“getFirstName”功能。

web services1

Step 3 − 通过打开 WSDL,我们可以看到有一个方法可以检索信用卡信息以及“getCreditCard”。现在,让我们使用 Burp 套件篡改输入,如下所示 −

web services2

Step 4 − 现在,让我们使用 Burp 套件修改输入,如下所示 −

web services3

Step 5 − 我们可以获得其他用户的信用卡信息。

web services4

Preventive Mechanisms

  1. 由于 SOAP 消息基于 XML,因此所有传递的凭证都必须转换为文本格式。因此,必须非常小心地传递敏感信息,该信息必须始终加密。

  2. 通过实施应用于确保数据包完整性的机制(如校验和)来保护消息完整性。

  3. 通过应用非对称加密来保护消息机密性,以保护对称会话密钥,在许多实现中,密钥仅对一次通信有效,之后会被丢弃。