我尝试使用soapUI教程中提供的示例wsdl来使用soapUI来设置边界扫描安全性测试。我对其进行了更改,以使其对loginRequest操作的用户名字段具有限制(请参见下文)。但是,每当我尝试运行安全测试时,边界扫描都会被“跳过”。没有显示错误消息。有人知道如何使用SoapUI的免费版本设置(有效的)边界扫描吗?

对WSDL的更改
我替换了以下行

<xsd:schema targetNamespace="http://www.example.org/sample/">


by

   <!-- CHANGED/ADDED -->
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.example.org/sample/" xmlns:tns="http://www.example.org/sample/" >
         <xsd:simpleType name="usernameType">
               <xsd:restriction base="xsd:string">
               <xsd:length value="9"/>
            </xsd:restriction>
         </xsd:simpleType>
         <!-- END ADDED -->




  <wsdl:message name="loginRequest">
    <wsdl:part name="username" type="xsd:string"/>


by

  <wsdl:message name="loginRequest">
    <wsdl:part name="username" type="tns:usernameType"/> <!-- CHANGED -->


我已经提供了我在soapUI的错误跟踪板上执行的操作的更多详细信息,并且我正在使用soapUI v4.6.4。我不确定这是一个错误还是一个简单的错误,因此将不胜感激!

更新:在“边界扫描”窗口中选择参数时,soapUI会抱怨“参数为模式中缺少类型”-我不太理解,因为类型在那里; cf.上面的XML代码段。

更新:已部分解决
我刚刚使用自己的WSDL尝试了相同的练习,但收到了另一条“错误”消息:“此参数未在架构中指定限制!”事实证明,soapUI的xsd名称空间是硬编码的;在我们自己的WSDL中将其更改为xsd(以便读取xsd:restriction)可以解决我们自己的WSDL的问题。不过,不知道初始错误(带有示例WSDL)是什么。提示仍然值得赞赏。但至少现在对我们有用...

评论

我只是使用我们自己的WSDL尝试了相同的练习,但收到了另一条“错误”消息:“未为此参数指定架构限制!”事实证明,soapUI的xsd名称空间是硬编码的;在我们自己的WSDL中将其更改为xsd(以便读取xsd:restriction)可以解决我们自己的WSDL的问题。不过,不知道初始错误(带有示例WSDL)是什么。提示仍然值得赞赏。但至少现在对我们有用...

将您的评论移到您自己的问题的答案上,以便将来保留它可能是一个主意。

我试图在ReadyAPI中复制相同的内容,但无法找出原因。我认为这可能是SoapUI的一个缺陷。我过去的经验一直是他们的快速反应。

#1 楼

此错误已通过Sm​​artBear引发,可以在此处找到详细信息;

https://community.smartbear.com/t5/SoapUI-NG/4-6-4-Boundary-tests-not- working-skipped / td-p / 38588

在撰写本文时,有一种解决方法,但没有适当的“修复”方法。

#2 楼

安全扫描是soapUI用来识别目标服务中潜在的安全漏洞的工具。每次扫描都会向您的服务发送大量恶意请求,以尝试挑起和识别可能表明需要处理的安全漏洞的行为。

安全测试旨在揭示缺陷和安全漏洞在保护数据和其他敏感信息的软件系统的安全性机制中存在SoapUI支持,以确保Web服务和Web API的请求和响应模型中的授权和真实身份。

步骤1:右键单击导航器中的TestCase“ FirstProjectTestCase1”,将弹出一个淹没菜单,从中选择并单击“ New SecurityTest”,如以下屏幕快照所示。



步骤2:选择“新安全扫描”选项后,它将打开一个对话框,其中包含空测试,自动和完全控制设置选项。这些设置选项均执行以下操作。空测试:将创建一个空的安全测试,您必须手动选择和配置所需的安全测试扫描。

Automatic: It will create the default setup which has common security scans and default assertions.
Full Control: I provides the full control of which security scans to add and how to configure them initially.
We are going to select the Empty Test, so that we can add desired tests later.




步骤3:这将打开一个对话框,要求您指定SecurityTest的名称。输入您想到的任何自定义名称,或仅使用默认名称(如屏幕截图中所示)。单击“确定”按钮以继续将安全测试节点添加到导航器中。

步骤4:单击“确定”按钮后,将打开安全测试控制台,如下面的屏幕快照所示,该屏幕空白没有任何安全扫描。下一步,我们将添加边界值安全扫描。

步骤5:在安全测试控制台上,单击“ TestSteps”正下方的“ +”按钮,它将打开一个下拉菜单,其中包含可以添加到安全测试中的所有安全扫描。要继续进行这些扫描,只需选择它,然后单击“确定”按钮将其添加到当前的安全测试中。
步骤6:单击边界扫描,然后单击“确定”按钮。它将在下面的对话框中打开,您可以在下面的对话框中单击绿色的“ +”按钮并按如下所示选择适当的断言来添加实际的断言。
步骤7:在上面的窗口对话框中,您可以添加参数和断言以继续进行进行必要的安全测试。再次单击“ +”以添加我们前面讨论的断言。下面的对话框显示可以添加的声明的类型。
步骤8:选择“敏感信息公开”以检查可以通过“ +”按钮添加的令牌UID和密码。单击“确定”完成此断言的添加。

步骤9:添加边界扫描所需的参数,如下面的屏幕截图所示,单击“确定”以完成它。

步骤10 :设置边界扫描后,单击左上角的绿色箭头按钮开始安全测试。下面的屏幕表示完成边界扫描安全性测试的结果。在Pro版本中,您可能会获得详细的PDF报告。

步骤11:单击SoapUI工具左下角的“安全日志”按钮后,检查安全日志。这显示在下面的屏幕快照中。



SQL Injection: SQL Injection scan in SoapUI exploits bad database integration coding. It scans and detects for any potential SQL injections that could harm database, thus securing database.
XPath Injection: XPath Injection exploits bad XML processing inside the web service as target.
Boundary Scan: Boundary scan checks for the bad handling of the values for the web service which are outside the range definition.
Invalid Types: This type of security scan checks and exploit invalid input data.
Malformed XML: This type of security scan checks and exploit bad handling of invalid XML which may be either present on server or in web service.
XML Bomb: The term XML Bomb is used as it does the security scan for the handling of malicious XML requests which may corrupt the entire web service on server or steal the sensitive information.
Malicious Attachment: This security scans exploits bad handling of attached files.
Cross Site Scripting: This type of security scan finds any vulnerable cross-sites scripts. It scans and detects for any exposure of service parameters in the structured messages during cross site scripting.
Custom Script: This type of security scan permits to use a script for preparing custom parameters fuzzing values.


其他SoapUI安全扫描功能:

Stack Overflow: SoapUI has the capability to scan and detect for huge documents within the message that could cause stack overflow.
Lifesaving Scans: SoapUI has the capability to do number of scans and ensures the security of the web services and web APIs. These scans are vulnerability scans, fuzzing scans and boundary scans to mitigate the potential erratic behavior of the web services.