《蜜罐与蜜网技术介绍-zhao》由会员分享,可在线阅读,更多相关《蜜罐与蜜网技术介绍-zhao(78页珍藏版)》请在金锄头文库上搜索。
1、蜜罐与蜜网技术介绍,内容,蜜罐技术的提出 蜜罐技术 蜜罐概念 实例工具:DTK, honeyd 蜜网技术 蜜网概念、蜜网项目组 实例工具:Gen II 蜜网 蜜罐/蜜网技术的应用 新概念和新方向,蜜罐技术的提出,要解决什么问题?,互联网安全状况,安全基础薄弱 操作系统/软件存在大量漏洞 安全意识弱、安全加强 rarely done 任何主机都是攻击目标! DDoS、跳板攻击需要大量傀儡主机 蠕虫、病毒的泛滥 并不再仅仅为了炫耀,Hold your friends close, but your enemies closer.” _Michael Corleone:The Godfather,
2、Part II,互联网安全状况 (2),攻击者不需要太多技术 攻击工具的不断完善 更多的目标:Linux、Windows 更容易使用,工具整合 Metasploit: 30+ Exploits 更强力 攻击脚本和工具可以很容易得到和使用 0-day exploits: packetstorm 团队协作,网络攻防的不对称博弈,工作量不对称 攻击方:夜深人静, 攻其弱点 防守方:24*7*365, 全面防护 信息不对称 攻击方:通过网络扫描、探测、踩点对攻击目标全面了解 防守方:对攻击方一无所知 后果不对称 攻击方:任务失败,极少受到损失 防守方:安全策略被破坏,利益受损,蜜罐技术的提出,扭转工作
3、量不对称 增加攻击代价假目标 扭转信息不对称了解你的敌人! 他们是谁? 他们使用什么工具?如何操作? 为什么攻击你? 扭转后果不对称 防守方不受影响损失 计算机取证对攻击方的威慑,蜜罐技术,什么是蜜罐? 蜜罐的发展历史 Fred Cohen DTK Honeyd,蜜罐的概念,Honeypot: 首次出现在Cliff Stoll的小说“The Cuckoos Egg”(1990) 蜜网项目组给出如下定义: “A security resource whos value lies in being probed, attacked or compromised” 没有业务上的用途,因此所有流入/流
4、出蜜罐的流量都预示着扫描、攻击及攻陷 用以监视、检测和分析攻击,蜜罐与没有防护的PC的区别,蜜罐是网络管理员经过周密布置而设下的“黑匣子”,看似漏洞百出却尽在掌握之中,它收集的入侵数据十分有价值; 没有防护的计算机是送给入侵者的礼物,即使被入侵也不一定查得到痕迹因此,蜜罐的定义是:“蜜罐是一个安全资源,它的价值在于被探测、攻击和损害。”,蜜罐的要求,设计蜜罐的初衷就是让黑客入侵,借此收集证据,同时隐藏真实的服务器地址,因此我们要求一台合格的蜜罐拥有这些功能:发现攻击、产生警告、强大的记录能力、欺骗、协助调查。 另外一个功能由管理员去完成,那就是在必要时候根据蜜罐收集的证据来起诉入侵者,蜜罐技术
5、的发展历史,被攻陷的真实主机 (1990 ) An Evening with Berferd 虚拟蜜罐工具 (1997 ) 模拟网络服务,虚拟系统 Fred Cohen: DTK 被监控的真实系统 (2000 ) 更多的数据捕获、分析、控制工具 在一个蜜网的框架中 蜜网项目组: Gen II蜜网,蜜罐的分类,部署目标 产品型 研究型 交互性:攻击者在蜜罐中活动的交互性级别 低交互型 高交互型,产品型蜜罐,部署目标: 保护单位网络 防御 检测 帮助对攻击的响应 需要网管尽可能少的工作 商业产品 KFSensor, Specter, ManTrap,研究型蜜罐,部署目标:对黑客攻击进行捕获和分析
6、这些“坏家伙”在干什么 了解攻击方法 捕获他们的键击记录 捕获他们的攻击工具 监控他们的会话 需要大量时间和精力投入! 实例:Gen II蜜网, Honeyd,低交互型蜜罐,模拟服务和操作系统 只能捕获少量信息 容易部署,减少风险 实例:Specter, KFSensor, and Honeyd.,高交互型蜜罐,提供真实的操作系统和服务,而不是模拟 可以捕获更丰富的信息 部署复杂,高安全风险 实例:ManTrap, Gen II蜜网,蜜罐技术优势,高保真高质量的小数据集 很小的误报率 很小的漏报率 捕获新的攻击及战术 并不是资源密集型 简单,蜜罐技术弱势,劳力/技术密集型 局限的视图 不能直接
7、防护信息系统 带来的安全风险,安全风险,发现蜜罐 黑客知道要避免进入哪些系统 向蜜罐反馈虚假、伪造的信息 消除蜜罐的指纹 蜜罐-反蜜罐技术:博弈问题! 利用蜜罐攻击第三方 期望黑客获得蜜罐的root权限 黑客会将其用作危害第三方的跳板 引入多层次的数据控制机制 人为分析和干预,蜜罐工具实例,DTK Deception Toolkit (1997) by Fred Cohen Fred Cohen, A Framework for Deception. Honeyd A virtual honeypot framework Honeyd 1.0 (Jan 22, 2005) by Niels P
8、rovos, Google Inc.,DTK,用户:普通互联网用户 目标 在几分钟内部署一系列的陷阱 显著提高攻击代价,同时降低防御代价 欺骗自动攻击程序,使其无效,从物理蜜罐到DTK,从物理蜜罐到DTK,DTK如何工作?,模拟有漏洞的网络服务 基于状态机变迁脚本 # State Input NexStat Exit ln/file output/filename 0 START 0 1 1 220 ESMTP Sendmail 8.1.2/8.1.3; 0 ERROR 0 1 1 500 Command unrecognized - please say “Helo“ 0 help 0 1
9、1 214-No help available ,效果及局限,效果 增大了攻击代价,增加攻击成功所需技术门槛 让低水平的攻击者一头雾水 通过日志可以了解攻击企图 局限 根据攻击者输入给出对应输出的方法过于简单 所能够提供的欺骗手段有限,Honeyd,可以模拟任意TCP/UDP网络服务 IIS, Telnet, pop3 支持同时模拟多个IP地址主机 经过测试,最多同时支持65535个IP地址 支持ICMP 对ping和traceroute做出响应 通过代理和重定向支持对实际主机、网络服务的整合 add windows tcp port 23 proxy “162.105.204.159 23”
10、 UI用户界面(v1.0),Honeyd监控未使用IP地址,Honeyd设计上的考虑,接收网络流量 模拟蜜罐系统 仅模拟网络协议栈层次,而不涉及操作系统各个层面 可以模拟任意的网络拓扑 Honeyd宿主主机的安全性 限制对手只能在网络层面与蜜罐进行交互 保证对手不会获得整个系统的访问权限 捕获网络连接和攻击企图 日志功能,接收网络流量,Honeyd模拟的蜜罐系统接收相应网络流量三种方式 为Honeyd模拟的虚拟主机建立路由 ARP代理 支持网络隧道模式 (GRE),Honeyd体系框架,配置数据库 存储网络协议栈的个性化特征 中央数据包分发器 将输入的数据包分发到相应的协议处理器 协议处理器
11、个性化引擎 可选路由构件,FTP服务模拟,case $incmd_nocase in QUIT* ) echo -e “221 Goodbye.r“ exit 0; SYST* ) echo -e “215 UNIX Type: L8r“ ; HELP* ) echo -e “214-The following commands are recognized (*=s unimplemented).r“ echo -e “ USER PORT STOR MSAM* RNTO NLST MKD CDUPr“ echo -e “ PASS PASV APPE MRSQ* ABOR SITE XMK
12、D XCUPr“ echo -e “ ACCT* TYPE MLFL* MRCP* DELE SYST RMD STOUr“ echo -e “ SMNT* STRU MAIL* ALLO CWD STAT XRMD SIZEr“ echo -e “ REIN* MODE MSND* REST XCWD HELP PWD MDTMr“ echo -e “ QUIT RETR MSOM* RNFR LIST NOOP XPWDr“ echo -e “214 Direct comments to ftp$domain.r“ ; USER* ),个性化引擎,为什么需要个性化引擎? 不同的操作系统有不
13、同的网络协议栈行为 攻击者通常会运行指纹识别工具,如Xprobe和Nmap获得目标系统的进一步信息 个性化引擎使得虚拟蜜罐看起来像真实的目标 每个由Honeyd产生的包都通过个性化引擎 引入操作系统特定的指纹,让Nmap/Xprobe进行识别 使用Nmap指纹库作为TCP/UDP连接的参考 使用Xprobe指纹库作为ICMP包的参考,路由拓扑结构,Honeyd支持创建任意的网络拓扑结构 对路由树的模拟 配置一个路由进入点 可配置链路时延和丢包率 模拟任意的路由路径 扩展 将物理主机融合入模拟的网络拓扑 通过GRE隧道模式支持分布式部署,路由拓扑定义实例,route entry 10.0.0.1
14、 route 10.0.0.1 add net 10.1.0.0/16 latency 55ms loss 0.1 route 10.0.0.1 add net 10.2.0.0/16 latency 55ms loss 0.1 route 10.1.0.1 link 10.1.0.0/16 route 10.2.0.1 link 10.2.0.0/16 create routerone set routeone personality “Cisco 7206 router (IOS 11.1(17)” set routerone default tcp action reset set ro
15、uterone default udp action reset bind 10.0.0.1 routerone bind 10.1.0.1 routerone bind 10.2.0.1 routerone,日志功能,Honeyd支持对网络活动的多种日志方式 Honeyd对任何协议创建网络连接日志,报告试图发起的、或完整的网络连接 在网络协议模拟实现中可以通过stderr进行相关信息收集 Honeyd也可以与NIDS结合使用,捕获更多更全面的攻击信息,Feb 12 23:06:33 Connection to closed port: udp (210.35.128.1:1978 - 172
16、.16.85.101:1978) Feb 12 23:23:40 Connection request: tcp (66.136.92.78:3269 - 172.16.85.102:25) Feb 12 23:23:40 Connection established: tcp (66.136.92.78:3269 - 172.16.85.102:25) sh scripts/smtp.sh Feb 12 23:24:14 Connection dropped with reset: tcp (66.136.92.78:3269 - 172.16.85.102:25) Feb 12 23:34:53 Killing attempted connection: tcp (216.237.78.227:3297 - 172.16.85.102:80) Feb 12 23:39:14 Connection: udp