1
  1. 当我打开 chat.mysite.com/WebResource.axd?d=jzjghMVYzFihd9Uhe_arpA2 它给我:填充无效,无法删除。

  2. 当我打开 chat.mysite.com/WebResource.axd?d=acunetix 它给了我:无效的视图状态。

  3. 当我打开 chat.mysite.com/WebResource.axd?d= 它给我:找不到资源。

但是,当我打开其中任何一个 /WebResource.axd 到我的主站点 www.mysite.com 时,不会发生错误......

我的问题是,我的网站是否容易受到 padding oracle 的攻击,如果是,哪些数据会被盗?另一件事是,一旦我打开 www.mysite.com 的“查看源代码”,就没有 script=webresource.axd 之类的东西......我很困惑,如果攻击者想要控制网站,他能做什么?他将如何进行攻击?攻击者能否获得管理员权限?

4

2 回答 2

4

由于提供的信息很少,我会说这很可能容易受到填充 oracle 的攻击。填充预言可用于解密密文,一次一个字节,从消息的最后开始向后工作。

所有密文都应使用 MAC 保护。

于 2013-04-05T15:48:08.200 回答
1

根据对问题的评论进行回答。

是的,您目前容易受到 padding oracle 攻击。

这意味着他们可以下载您的配置文件之类的内容并解密您的视图状态和 cookie。

关于访问“管理员权限”,也许。取决于找到什么。例如,如果您在 web.config 文件中有一个数据库连接字符串,并且该数据库服务器可以在 Internet 上访问,那么攻击者可能会完全绕过该应用程序并直接进入数据库。这里肯定有许多因素可能会限制 web.config 信息暴露造成的损害,但不幸的是,很多开发人员不知道他们在做什么。他们往往不会考虑这一点。

那么,你能做些什么呢?

首先,用他们的补丁让你的服务器保持最新。Windows 有办法通过自动更新自动执行此操作。我强烈推荐用于 Web 服务器。MS倾向于很快地修补东西。此外,在让 Windows 服务器自行修补的 10 多年中,我从未遇到过问题。我希望我可以对数据库补丁说同样的话,但即使是那些也开始成为你必须做的事情。

其次,看应用程序本身。web.config 中是否有任何可能导致数据泄露的内容。诸如对数据库服务器的引用,对其他系统的密码等。如果是这样,那么我建议您在修补后立即更改所有这些密码。对于数据库访问,我倾向于确保即使应用程序也没有查询表的直接权限。但这是一个完全独立的讨论。

第三,养成不信任任何事物的倾向。不是您自己的服务器,甚至不是您自己的代码。无论如何,这将导致成为一个更好的程序员。如果攻击者能够在您的网站中放置一个可执行文件,他们就可以访问您的 Web 应用程序可以访问的所有内容。

第四,只向互联网公开必要的内容。这需要大量的教育和测试,以确保您的路由器/防火墙/等配置正确。不幸的是,一旦出现不便,开发人员往往会降低这些防御措施。例如,在服务器上安装调试工具或将数据库暴露在互联网上以便在家中访问它......这与上面的#3 一致。

五、研究研究研究。花时间了解事情是如何受到损害的以及这意味着什么。当您知道要保护什么以及要保护它免受什么侵害时,进行防御性编码会容易得多。那里有大量不良信息,了解攻击的工作原理将使您更容易将其过滤掉。一个简单的示例是展示如何动态构建 sql 语句的站点。其中绝大多数不使用参数;而那些完全忽略了Web应用程序本身可以被绕过的想法的人。

还有更多,更多,但现在足以咀嚼。

于 2013-04-05T16:18:22.267 回答