恶意移动代码分析与研究 郑 辉 清华大学网络中心 CERNET Computer Emergency Response Team zhenghui@ccert.edu.cn
主要内容 当前的安全状况 攻防主体 主要研究成果 防治周期理论 主动防治系统 Open Problems
漏洞越来越多…
攻击越来越容易… 攻击的复杂性在增加,攻击者的知识和技能需求在下降。 80年代初,黑客需要手工测试系统的漏洞,自己发现系统的漏洞,猜测计算机系统的口令,手工编写代码利用系统的漏洞,他能够控制的计算机也很少10几台或几十台; 现在,关于网络和系统漏洞的站点有很多,利用这些漏洞的源代码也很容易得到,网络上已经有很多自动化的工具可以用(扫描目标系统、自动入侵、自动汇总攻击结果),而且经常交流,新的漏洞公布以后,黑客可以重用大部分代码,一夜之间可以控制成百、上前,甚至数十万台计算机
病毒数量增长越来越快…
Rapidly Escalating Threat to Businesses 风险越来越大… 攻击目标和破坏程度 Rapidly Escalating Threat to Businesses 全球基础设施 区域性网络 多个网络 单个网络 单台计算机 分 Next Gen Flash threats Massive worm-driven DDoS Damaging payload worms 时 Third Gen Distributed denial of service Blended threats 天 周 Second Gen Macro viruses Denial of service First Gen Boot viruses 1980s 1990s Today Future
Bandwidth-level DDoS attacks Attack zombies: Use valid protocols Spoof source IP Massively distributed Infrastructure-level DDoS attacks Let’s revisit the nature of DDoS attacks Server-level DDoS & worm attacks Bandwidth-level DDoS attacks
Internet面临的安全挑战 如何防范自动化攻击? 如何防范快速突发攻击? 如何防范大规模攻击?
恶意移动代码主要特性 破坏性(Malicious Code, Malware) 移动性(Mobile Code) 通过网络 通过人 恶意移动代码原来仅仅指嵌入在网页中的脚本代码。
恶意移动代码主要种类 Internet 蠕虫 病毒邮件 文件系统病毒 网页脚本 木马
恶意移动代码的简单比较 Internet 蠕虫 病毒邮件 文件系统病毒 网页脚本 木马 传播速度 极快 快 一般 慢 传播方式 自动 半自动 人工 影响对象 网络 主机 防治难度 难 易 经济损失 严重 较大
各种恶意移动代码的融合趋势 病毒、蠕虫、木马之间的界限已经不再明显; 综合使用多种攻击手段: 传播:计算机系统的漏洞、电子邮件、文件共享、Web浏览等 社会工程(social engineering )
攻防主体 影响网络安全的三支力量 防范主体 Hacker VXer Cracker 网络运营商、服务提供商、用户; 系统厂商、防毒产品厂商; 科研技术人员、政府主管部门;
蠕虫的历史回顾 Xerox PRAC, 1980年 Morris Worm, 1988年11月2日 WANK Worm, 1989年10月16日 ADM Worm, 1998年5月 Millennium, 1999年9月 Ramen Worm, 2001年1月 Lion Worm, 2001年3月23日 Adore Worm, 2001年4月3日 Cheese Worm, 2001年5月 Sadmind/IIS Worm, 2001年5月 CodeRed Worm, 2001年7月19日 Nimda Worm, 2001年9月18日 Slapper, 2002年9月14日 Slammer, 2003年1月25日 Dvldr32, 2003年3月7日 MSBlaster, 2003年8月12日 Nachi, 2003年8月18日
2004年蠕虫 MyDoom.C 2004年2月9日 Witty Worm 2004年3月20日 Sasser Worm 2004年4月30日 Santy Worm 2004年12月21日
蠕虫的爆发周期越来越短… 漏洞公布和蠕虫爆发的间隔越来越短 越来越短 越来越长,越来越难 最佳时机 及时 太晚了 漏洞发现 攻击代码 控制 清除 Time between the exposure of a vulnerability and the release of a worm is becoming shorter. When a new vulnerability released, the hacker can reuse most of the code of old worms. The only work to create a new worm is to write a piece of code to exploit the vulnerability. 越来越短 越来越长,越来越难
恶意移动代码主要研究内容 恶意代码的工作机制 传播模型 仿真 检测 抑制 其他工作的基础 现有模型忽略太多因素而缺乏指导意义 仿真Internet难度较大 检测 检测结果出来为时已晚 抑制 现实需求
CCERT的科研优势 长期对恶意移动代码研究的积累; 迅速有效的响应机制; 第一手的网络数据;
CodeRed蠕虫监测数据
Blaster & Nachi监测数据
Sasser蠕虫监测数据
Witty 蠕虫监测数据
主要研究成果 针对蠕虫个体 实体结构模型 功能结构模型 针对网络 利用DNS服务抑制蠕虫传播 Internet 蠕虫主动防治系统
实体结构模型
功能结构模型
利用DNS服务抑制蠕虫传播
Internet 蠕虫防治周期 预防阶段 检测阶段 遏制阶段 清除阶段
Internet 蠕虫主动防治系统
网络技术发展带来的变化 P2P Overlay网络构成的相对独立网络; IRC、MSN、QQ、BT、eMule IPv6 网络规模 加密传输
IPv6网络的抗扫描特性 IPv4 的Internet ,Slammer 蠕虫,10分钟后,感染了大多数有漏洞的计算机 28年后,感染第一台主机
恶意移动代码的技术发展趋势 结合人工智能技术; 动态功能升级技术; 多平台传播技术; 分布式实体技术;
Santy蠕虫 描述: 智能特性: 存在形式: 2004年12月21日发现,截止到12月22日,google可以统计到被santy蠕虫破坏的网站已经达到26000多; 利用论坛系统phpBB的漏洞传播; 智能特性: 从搜索引擎google得到攻击站点列表; 存在形式: 脚本代码;
Santy蠕虫引出的新问题 如何检测智能蠕虫? 如何防治智能蠕虫? 不需扫描,流量无明显异常; 查询条件的无穷组合; 脚本代码的任意变化; IPv6的抗扫描特性不再适用; 封锁搜索引擎?海量信息如何查找; 搜索引擎屏蔽?查询合法性的不可判定;
Open Problems 蠕虫爆发预警 仿真环境与蠕虫传播模拟 良性蠕虫的控制策略 恶意移动代码来源定位 网络安全生态理论
参考文献 蠕虫的行为特征描述和工作原理分析, http://worm.ccert.edu.cn/doc/spark/WormBehaviorPrincipleAnalysis.pdf Internet蠕虫研究,http://worm.ccert.edu.cn/doc/InternetWormResearch.pdf 大规模网络中Internet 蠕虫主动防治技术研究 -- 利用DNS 服务抑制蠕虫传播, http://worm.ccert.edu.cn/doc/spark/WormDefenseWithDNS.pdf 主动Internet蠕虫防治技术-接种疫苗, http://worm.ccert.edu.cn/doc/Vaccination.pdf Internet蠕虫主动防治系统原理与设计, http://worm.ccert.edu.cn/doc/spark/WormDefenseSystem.pdf
谢谢!