如何在xss攻击后恢复网站?

时间:2013-12-24 10:18:14

标签: security web xss

最近我正在研究XSS攻击以及它们在网站上的破坏程度。

让我感到惊讶的是,网页(甚至SO )已经完整关于 如何防止xss攻击 但是没有相关资源如何通过xss攻击后恢复网站

我遇到过一些事情:

  • 将备份网站代码上传回服务器
  • 下载整个网站并手动查找任何恶意脚本

但这听起来不够好....我的意思是,没有任何其他专业活跃的方法来恢复曾经被黑的网站???

2 个答案:

答案 0 :(得分:3)

使用XSS,代码实际上没有被修改。相反,通常发生的是两种情况之一:反射和存储XSS。

在反射的XSS中,请求中有一些参数(通常是一个查询字符串参数),它在没有被清理的情况下被回显到页面上。这可能导致攻击者向用户提供恶意链接,并且他们点击并将其会话劫持。

在存储的XSS中,攻击者找到某种方法来保存恶意字符串(通常以论坛帖子或网站评论的形式存储在数据库中),其他用户在查看此站点时会遇到该字符串。然后该脚本在查看该页面的用户的上下文中执行,攻击者可能再次劫持该会话。

要从反射的XSS中“恢复” - 您需要修复反射参数(执行输出编码等操作)并使所有会话无效,使用户必须重新登录。

要从反映的XSS中“恢复” - 您需要确定恶意代码的提供位置,添加输入的清理和该数据输出的编码。然后清除这些恶意值的数据库,然后使所有会话无效,强制用户再次重新登录。

答案 1 :(得分:0)

@Stefan_H做对了。 (1) 实际上,您只需要从存储的XSS中恢复。

然而,您还需要考虑的是,商店XSS攻击通常只是实际疾病的症状。

简单地说,要执行此类XSS攻击,攻击者必须具有对您的网站/服务器资源的高级访问权限。这意味着 - 除了恶意的XSS代码之外 - 您的站点还拥有一个后门shell,允许攻击者获得该级别的访问权限。

事实上,您不需要从XSS恢复,而是从后门shell恢复。如果不这样做将允许黑客重新注入您的网站,即使代码已经过清理。

网站级别存在一些后门,其他后门将影响整个服务器。它们提供的控制类型会有所不同,但在大多数情况下,它们将允许完全访问大多数网站资源。这将导致:

  1. XSS和其他恶意软件注入
  2. 为了DDoS(加入僵尸网络)而劫持网站/服务器
  3. 数据窃取
  4. 最终毁损
  5. 为防止再次发生的攻击,您需要:

    1. 使用一些非常早期的备份(您不知道后门在文件系统中存在多长时间)
    2. 更好的是,使用某种后门检测工具(有一些免费的,但实际上很少有好处)
    3. 了解shell如何到达那里(RFI和密码黑客是两个主要嫌疑人)
    4. GL