zoukankan      html  css  js  c++  java
  • 【软件测试基础】安全测试

    本文由小编根据慕课网视频亲自整理,转载请注明出处和作者。

    1.安全测试

    渗透测试

    渗透测试是取得了用户的授权的行为,而黑客的攻击是没有授权的。

    完成渗透测试后,需要向用户提交测试结果的报告,黑客在攻击完成之后,会销毁攻击的痕迹。

    2.渗透测试 VS 安全测试

    区别:

    渗透测试着重点在攻击,渗透测试的目的是攻破软件系统,以证明软件系统存在问题。

    安全测试的着重点在防御,对整个系统的防御的功能进行一个系统的考虑。

    渗透测试的目的是攻破系统,所以只要选择一些薄弱的环节,选择一些点来攻击系统,达到攻破系统的目的就可以了。

    安全测试必须从整个的防御面上来考虑系统的安全性。

    从难易程度上来说,因为安全测试要考虑的更多,所需要掌握的知识也更多,所以也更加地困难一些。

    3.OWASP

    Open Web Application Security Project:开放的web应用安全项目。这是针对web应用的最著名的一个安全项目。

    OWASP Top 10:每隔几年,OWASP会发布行业上最具有威胁的十大安全漏洞,并且对其进行详细的说明分析。

    OWASP2013 Top10:

    • 注入漏洞,一般指SQL注入、脚本注入这样的漏洞。一般是攻击者通过页面的输入来进行巧妙的构造,来达到使系统执行不应该执行的SQL或脚本的功能,达到提高用户权限,从而访问不应该访问的数据的目的。
    • 失效的身份认证和会话管理。比如会话劫持这样的漏洞,用户访问系统的时候,认证的凭据是外部可见的,易于被别人获取的,从而造成用户身份的暴露。
    • 跨站脚本。攻击者通过恶意的手段,构造使用户的浏览器能够执行动态的内容,达到攻击的目的。
    • 不安全的对象的直接引用。比如在URL中,包含了一些参数,比如ID=12345这样的一些参数,如果把参数直接修改为54321可能就能直接的变更页面访问的对象,或者获取其他用户的数据。如果这方面的保护不足,就会造成这样的漏洞。
    • 安全配置错误。比如系统使用的框架、服务,很多框架服务都有默认的密码,对于黑客来说,默认密码都是已知的,如果这些东西不变更,访问时就可以直接使用。比如系统开放了不必要的端口、服务,这样的问题,都是安全配置类的错误。
    • 敏感信息泄露:信息传递过程中,没有对关键信息进行加密,有可能造成信息的泄露。
    • 功能级别的访问控制缺失:比如访问一个网站,能够在内部导航到一个用户没有权限到达的地方,这样的漏洞就属于访问控制的缺失。
    • 跨站请求伪造:网站存在漏洞,攻击者通过外部的一个恶意的网站,在用户访问了一个正常网站的时候,再去访问这个恶意网站,则正常网站的相关凭据可能就会被恶意网站上的代码执行、获取到。
    • 使用了已知的具有漏洞的组件:业界会有非常多的安全漏洞暴露出来,如果这些已知的安全漏洞我的系统也使用了相关的技术,那这些漏洞没有及时地更新,没有及时地打补丁,那这些漏洞就是存在的。如果没有及时地补救,容易造成系统被攻击。
    • 未被验证的重定向和转发:网站如果具有重定向的功能,如果对重定向过来的请求,不对它进行校验,就很有可能被攻击者构造重定向,来转到一些钓鱼网站。
    • OWASP Testing Guide:是指引安全测试人员如何实施安全测试的一个测试指南。

    当然,OWASP上还有其他一些安全项目,比如开源的安全工具,还有开发的指南。

    安全测试作为比较专业的一种测试类型,也有很多测试工具来提供测试支持。

    4.安全测试工具:

    • Appscan:IBM的,针对web应用的漏洞扫描工具。
    • Webinspect:惠普的漏洞扫描工具,和Appscan功能上比较类似。
    • Nessus:非常著名的一款主要针对服务器主机类的漏洞检查工具。有免费版本。
    • Nmap:非常著名的端口嗅探的工具。通过扫描主机来看看开放了哪些端口,可以进行下一步的攻击。
    • MetaSploit:非常著名的攻击框架,包含有大量的插件,可以对目标系统进行检测,还有渗透测试。
    • WebScarab:OWASP开源项目提供的一项工具,是基于代理劫持的分析,来进行工具路径的检测,功能很强大。
    • Fortify:和Webinspct是同一个公司的产品,主要是一个白盒的测试工具,是针对开发的源代码的静态的分析,静态分析出源码中可能存在的问题。
    • W3AF: 开源的安全漏洞扫描工具,也是主要针对web应用的。
  • 相关阅读:
    C#和Modbus通信工程
    C#中JS和Flash中AS 3.0通信交互
    创建型-建造者模式(Builder)
    结构型-享元模式(Flyweight)
    行为型-模板方法模式(Template Method)
    创建型-原型模式(Prototype)
    行为型-状态模式(State)
    结构型-桥接模式(Bridge)
    行为型-中介者模式(Mediator)
    行为型-备忘录模式(Memento)
  • 原文地址:https://www.cnblogs.com/sophia194910/p/6514706.html
Copyright © 2011-2022 走看看