1

我正在尝试将 OWASP 与一些经典 ASP 应用程序一起使用,但没有找到太多关于如何操作的信息,比如一步一步的。

该网站被视为启动点:https ://www.owasp.org/index.php/Classic_ASP_Security_Project但有人有视频,或一步一步?

真的很感谢。

4

2 回答 2

8

经典 ASP 中没有真正的安全性。

  • 没有身份验证模型,因此每个应用程序都必须做自己的事情
  • 会话管理很弱,无法轮换会话标识符或防止会话劫持。没有反 CSRF 支持
  • 没有授权模型,因此每个应用程序都必须做自己的事情。这意味着大多数经典的 ASP 应用程序在表示层、业务逻辑层和数据模型层都存在访问控制问题。
  • 输入验证很弱,因为大多数输入验证是字符串替换,这是不够的。
  • 输出编码只有 server.htmlencode() 和 urlencode,但其他 10 个左右的输出上下文没有其他方法,所以很可能是 XSS
  • 除了使用存储过程之外,没有其他方法可以防止 SQL 注入,但如果你做错了,就会充满风险。
  • 如果不使用 ActiveX 服务器对象调用 Win32 api 以使用 Windows 事件日志,则没有简单的记录方法。这既不容易也不简单,因为它们被设计为与本地化资源一起使用,而不像 syslog。
  • ASP 中的安全配置很少,反映了其简单而古老的根源。在代码或 global.asa 中几乎没有什么可以改进的。

有人努力将 ESAPI 移植到经典 ASP。我不认为他们完成了。您也许可以通过 COM 导出将 ESAPI 用于 .NET,但我不一定会打赌它会正常工作。

在这个阶段,您应该考虑升级到 ASP.NET 4.0 或更高版本。


感谢
Andrew van der Stock
OWASP 开发人员指南 2013 领导者

于 2012-08-22T08:03:32.833 回答
0

您可以使用 Microsoft AntiXSS 代替 OWASP,它是一个 .Net 库。唯一的问题是您不能直接从 Classic Asp 实例化它。您必须创建一个 .net dll(从 COM 可见)并在其中包装来自 AntiXSS 的函数。

下载:http ://www.microsoft.com/en-us/download/details.aspx?id=28589

于 2013-02-20T10:57:35.930 回答