ASP.NET MVC中的漏洞测试

时间:2013-05-12 23:32:17

标签: asp.net-mvc unit-testing asp.net-web-api

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

从单元测试的角度来看:

是否有任何框架可以测试控制器上访问点操作的漏洞 (或任何其他组成部分)

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

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

2 个答案:

答案 0 :(得分: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是用于利用漏洞的框架。

答案 1 :(得分:2)

你应该关注的最重要的领域是ModelBinding,因为这通常会造成巨大的漏洞。

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