【技术分享】方法虽老但依然有效:如何使用ZIP bomb来保护网站

专题库
来源:安全客 2017-07-13 16:41:45 ZIPbomb 信息安全

核心提示我不知道你是否自己运营过一个网站或当过某个服务器的管理员,但如果你做过的话,你就会非常清楚地知道外面有多少坏人随时都在想着如何攻击你的网站或服务器。

【技术分享】方法虽老但依然有效:如何使用ZIP bomb来保护网站

  我不知道你是否自己运营过一个网站或当过某个服务器的管理员,但如果你做过的话,你就会非常清楚地知道外面有多少坏人随时都在想着如何攻击你的网站或服务器。

  想当初我还是十三岁的时候我就自己架设了我第一台服务器,那是一台小型服务器,运行的是Linux系统,并且还配置了SSH远程访问控制。当时每天都会有大量来自天朝和俄罗斯的IP地址会尝试连接或访问我这台可爱的服务器,因此我每天都得去检查服务器的运行日志,并将那些貌似想干坏事的IP地址报告给他们的互联网服务提供商(IPS)。值得一提的是,我当时假设服务器所用的设备就是一台老款的ThinkPad T21,而且显示屏都已经坏得差不多了,配置完成之后它就一直乖乖地躺在我床底下运行着。

  实际上,如果你自己运行过一台配置了SSH远程访问的Linux服务器的话,你就知道每天会有多少条链接来尝试访问你的服务器了:

【技术分享】方法虽老但依然有效:如何使用ZIP bomb来保护网站

  你从下图中看到,即使我禁用了服务器的密码身份验证,即使服务器运行在非标准端口上,每天仍然都会有成百上千次失败的登录尝试:

【技术分享】方法虽老但依然有效:如何使用ZIP bomb来保护网站

  WordPress已经把我们都给毁了

  其实大家都知道,Web漏洞扫描工具明显出现的要比WordPress早,但由于WordPress的受欢迎程度如此之高,目前绝大多数的Web漏洞扫描工具都已经拥有扫描wp-admin目录错误配置或未修复插件等安全问题的功能了。

  所以说,如果一个小型黑客组织想要通过入侵某网站来让大家都知道他们的话,他们首先肯定会下载一些这样的漏洞扫描工具,然后利用这些工具来对大量网站进行漏洞扫描测试,如果运气好的话他们很快就可以拿到目标网站后台服务器的访问权了。接下来要发生的事情,你懂的...

  下图显示的是通过工具Nikto扫描之后所生成的日志文件样本:

【技术分享】方法虽老但依然有效:如何使用ZIP bomb来保护网站

  为什么所有的网站管理员或服务器运维人员每天都需要处理大量包含扫描尝试的日志呢?看到这里想必你也应该清楚了。但让我们冷静下来好好想想,我们有没有什么办法可以对这种恶意尝试行为予以反击呢?

  有没有办法可以反击?

  在对IDS(入侵检测系统)和Fail2ban的实现过程进行了重新回顾之后,我突然想起来了很久以前非常流行的Zip bombs(Zip炸弹)。  

  Zip炸弹是什么东西?

  Zip炸弹也被称作是死亡压缩包或解压缩炸弹,这是一种恶意文档(archive)文件,当某个程序或系统尝试读取这个文件时,它便会让目标发生崩溃。一般来说,攻击者会利用这种Zip炸弹来让反病毒软件崩溃,然后为传统病毒的感染扫清障碍。

  实际上,Zip炸弹并不会劫持程序的正常运行过程,Zip炸弹允许目标程序按照其原有的运行机制运行下去,但这个压缩文件是攻击者精心制作的,而反病毒软件如果想要扫描这个压缩文件的话,就需要对其进行解压缩,但解压缩文件将需要花费大量的时间、磁盘空间和内存,因此变造成了程序崩溃或假死。

  这样看来,我们就可以利用Zip炸弹来对付那些不断重复的请求数据了。如果你有一个数据全部是0的大型文本文件的话,那么它的压缩效果将是非常非常好的,但解压起来可就不一样了。你可以参考这个文件(42.zip),它可以将一个大小为4500000GB的文件压缩成42字节。当你尝试查看文档内容时(即提取或解压缩),它便会耗光你的磁盘空间和内存。  

  如何利用ZIp炸弹对付漏洞扫描工具?

  不幸的是,Web浏览器并不知道ZIP压缩文件是什么,但它们知道GZIP。

  所以我们首先要使用数据“0”来创建一个大小为10GB的GZIP文件,你也可以进行多次压缩,不过这里为了方便演示就不进行这种操作了。

【技术分享】方法虽老但依然有效:如何使用ZIP bomb来保护网站

  接下来,创建我们的Zip炸弹并检查其文件大小:

【技术分享】方法虽老但依然有效:如何使用ZIP bomb来保护网站

  如上图所示,我们生成的Zip炸弹大小为10MB,其实我们还可以把它压缩得更小,但这个压缩效率已经足够我们进行演示了。

  既然现在我们已经创建好了我们的Zip炸弹,接下来我们还得设置一个PHP脚本来将这个Zip炸弹发送给客户端。

【技术分享】方法虽老但依然有效:如何使用ZIP bomb来保护网站

  一切搞定!接下来,我们就可以使用下面给出的方法来进行简单的防御了:  

【技术分享】方法虽老但依然有效:如何使用ZIP bomb来保护网站

  虽然上面给出的这个脚本不能用来防御那些高级攻击者,但它足以对付那些只知道通过修改漏洞扫描工具的参数来进行恶意扫描的脚本小子了。

  当这个脚本被调用之后会发生什么呢?

【技术分享】方法虽老但依然有效:如何使用ZIP bomb来保护网站

责任编辑:韩希宇

收藏

  • 最新
  • 最热

    点击加载

      点击加载

      我要评论
      普通评论
      游客

      登录后参与评论

      为你推荐

        暂无相关推荐
        合作媒体

        中国网络电视经济台 | 和讯银行 | 新浪理财 | 凤凰理财 | 腾讯网 | MSN理财 | 第一理财网 | 网易科技 | 中华财会网 | 电商中心 | 第一财经网 | 北京商报网 | 和讯科技 | 财新网 | 中国网理财 | 计世网 | 金融界银行 | 光明网经济 | 东方财富网 | 经济观察网 | 中国经营网 | 赛迪网 | 钱讯网 | 新华信息化 | 中关村商城 | 同花顺金融服务网 | CIO时代网 | 环球网财经 | 投资时报 | 钛媒体 | 中国金融新闻网 | 新华网财经 | 人民网金融频道 | 中文互联网数据研究资讯中心 | 中金在线 | 光芒网 | 大公财经 | 外汇 | 品途网