zoukankan      html  css  js  c++  java
  • SOAPUI----安全扫描(Security Testing)

    安全扫描是soapUI用来确定你的目标服务的潜在的安全漏洞。每个扫描发送一些恶意请求到您的服务,可能是需要处理的一个安全漏洞。

    下面的安全扫描是目前可用的

    1.添加安全扫描

    添加一个安全扫描步骤测试你的安全测试。无论是“添加SecurityScan”按钮,或在安全测试窗口中点击右键菜单选项。你首先会被提示输入添加类型的安全扫描,然后打开相应的安全扫描配置窗口:

    安全扫描配置

    (您可以通过双击它在安全测试窗口中打开现有扫描)。

    这个对话框有对所有安全扫描相似的布局:该对话框的顶部通常包含用于定义表中用于测试(见下文)要求哪些参数。在中间有一个区域,用于安全扫描特定配置组件(在上面的截图未使用),并在底部有一些标签进行进一步的配置的:

    • 声明:用于验证和检查一个成功的安全的响应断言
    • 策略:涉及到多个参数如何相互置换的设置
    • 高级:设置为专用的安全扫描(如适用)

    在参数表中,断言标签和策略选项卡常用于多数安全扫描,让我们来看看他们的更多细节。

    2.安全扫描参数

    大多数安全扫描需要你定义底层请求的内容,你要把占位符用于相应的扫描,例如你可能发送如下消息的SOAP请求的内容:

    登录请求

    当此要求执行,例如SQL注入扫描,你会想在这两个用户名和密码字段,这就需要你来定义这两个表中的参数发送恶意的SQL语句。这是容易实现的,先删除参数,按“Extract Parameters”按钮,如果它们包含一个值,这将在请求搜索所有可用的属性,并自动将它们添加到表

    提取参数的按钮

    此外,还可以使用“添加参数”按钮,将打开一个对话框,手动指定参数:

    添加参数对话框

    在这里,你需要指定以下内容:

    • 包含的参数值的底层测试属性(例如请求SOAP请求)
    • 该参数的唯一标签
    • 一个可选的XPath语句,从测试属性值,指定找到参数
      • 这是一个包含XML值的属性,如果用于REST或HTTP参数,你会此处留空

    3.安全扫描断言

    断言被用来评估安全请求的响应是否有内容表示目标系统有一个相应的漏洞。该机制和标准测试要求是一样的; 使用该表中的断言标签来指定断言使用和其配置:

    安全断言标签

    选择正确的断言并不总是重要的; 你怎么想你受到攻击的时候的系统表现?它返回一个错误或忽略该攻击?也许一个SQL注入攻击将是“成功的”,如果它成功地收到了有效输入(欺骗系统)预期的行为 - 一个适当的说法会在这种情况下,也许是检查响应不包含什么本来预期。

    所有标准的断言是可用的,但也有一些新的专门用于此目的断言被添加(见下文)。

    3.1。无效的HTTP代码

    允许您指定一个逗号分隔的HTTP状态代码列表不应由目标服务返回

    无效的HTTP状态代码断言

    3.2。有效的HTTP代码

    允许您指定一个逗号分隔的HTTP状态代码列表应该返回

    有效的HTTP statuscodes断言

    3.3。系统信息曝光

    检查,揭示了可能被黑客进一步利用任何现有的漏洞,例如,如果该响应泄露正在使用的数据库的版本,黑客可以使用该信息来尝试利用与该数据库已知的安全问题。

    敏感信息Exposureassertion

    正如你所看到的,这种使用的默认配置可以在全球配置指定,所以,如果你想添加任何自定义标记使用在它可以专门为含安全扫描或在更高层次上进行的搜索中。提供的soapUI默认列表是在“Global Sensitive Information Tokens”选项卡下可见:

    全球敏感信息曝光,令牌

    所述表有两列:

    • 记号本身可以包含一个普通字符串或正则表达式前缀一个波浪号(将其从一个普通字符串分隔)
    • 如果相应的记号被发现这将显示在安全日志中的描述

     

    4.战略

    该战略选项卡允许您指定多个参数怎么在安全扫描的执行过程中要置换的并执行:

    安全策略选项卡

    目前执行的两种模式:

    • “One by One” - 在同一时间发生改变一个参数; 如果例如已定义三个参数和安全扫描具有20个值来发送每个请求,总的请求数将是60 - 每次请求只有一个参数变化,所述其他参数保持在原有的请求
    • “All at once” - 在同一时间改变所有参数; 在上面的例子中这将导致共20个请求。

    “请求延迟”设置允许您指定多个改变请求之间的延迟,所以安全扫描不会超载您的服务器,“Apply to Failed TestSteps”选项可以让你控制如果在底层功能测试断言失败的情况下是否使用安全扫描应该 - 默认情况下,这是禁用的,因为它可能没有什么意义。

    5.执行

    当安全扫描作为安全测试的一部分运行,它根据配置发出的不同的变动请求,为每个请求改变定义的参数。安全日志具体地显示哪些值连同任何断言失败被送到每个参数和请求:

    与参数值安全日志

    双击某个条目将打开标准的消息阅读器让你看到实际发送的请求和接收进行进一步分析,例如XML格式不正确上述请求显示以下失败的响应消息:

    对于失败的断言消息结果

    在这里,我们可以看到响应包含一个异常堆栈发送了一些软件服务使用的细节,这可能是一个切入点,利用已知问题与该服务器的设置。

  • 相关阅读:
    原生js封装二级城市下拉列表
    jsonp帮助你知道你关注的他或她喜欢什么歌曲
    sql 进制转换,支持93内的进制相互转换
    linux下批量删除文件
    Ubuntu环境下golang环境搭建
    centos6.5 修改网络配置
    elasticsearch(二)
    Redis
    Spring Data JPA
    elasticsearch(一)
  • 原文地址:https://www.cnblogs.com/nul1/p/13179988.html
Copyright © 2011-2022 走看看