9

我一直在使用 NMock 单元测试参与 ASP.NET MVC 和 ASP.NET WebAPI 的基于测试的开发,但是我编写的大多数单元测试都围绕测试功能展开。

从单元测试的角度来看:

是否有任何框架来测试接入点的漏洞控制器(或任何其他组件)上的操作

从自动化/手动 QA 测试的角度来看

是否有任何(首选开源)工具用于测试基于 ASP.NET MVC 构建的网站的漏洞,手动或自动,可用于质量保证?

4

2 回答 2

4

我会以与测试在任何其他平台上构建的任何其他 Web 应用程序相同的方式来测试您的 ASP.NET MVC 应用程序。

本质上,您的攻击媒介是托管应用程序的网页和服务器。从攻击者的角度考虑它。他们无法查看控制器和模型中的代码,但他们可以执行以下操作。

  • 扫描您的服务器以查找可能包含漏洞的操作系统版本、Web 服务器版本、数据库版本。
  • 扫描您的网页以查找易受攻击的 JavaScript、输入表单、查询字符串参数等。
  • 尝试通过任何已发现的漏洞利用您的 Web 应用程序

您可以使用任意数量的应用程序来测试您的站点的 xss、csrf、sql 注入等。一个好的起点是 OWASP https://www.owasp.org/index.php/Main_Page 熟悉前 10 个 https: //www.owasp.org/index.php/Category:OWASP_Top_Ten_Project

另请查看有关开源 Web 漏洞扫描程序的 SO 帖子 https://stackoverflow.com/questions/2995143/open-source-web-site-vulnerability-scanners

请记住,两个主要的攻击媒介是用户输入和服务器配置。

我还建议看看 NMap 和 MetaSploit。Nmap 可用于查找服务器上的开放端口,MetaSploit 是用于利用漏洞的框架。

于 2013-05-13T02:43:13.110 回答
2

您应该关注的最大领域之一是 ModelBinding,因为这通常会产生大量漏洞。

例如,看看这个问题,看看你是否能发现漏洞:

于 2013-07-18T13:36:28.587 回答