什么是蜜罐
蜜罐其实就是一台无人使用但却被严密监控的网络主机,里面包含着各类虚假的高价值资源和一些已知漏洞,以此吸引入侵者来入侵该主机。并且在被入侵的过程中,实时记录和审计入侵者的所有入侵攻击流量、行为和数据。以此了解入侵者的攻击方式、手段和目的,便于后期快速完成对其的溯源和取证工作。
蜜罐的一些主要构成模块
按实现逻辑划分
控制:将入侵者牢牢控制在指定的网络范围中,使其不能再以此机器作为跳板来攻击其它的机器。
捕获:把入侵者在入侵过程中所产生的各种流量捕获住。
分析:将捕获到的各种数据存到数据库或者其它指定地方,便于后续还原其详细的入侵攻击过程。
按具体实现过程划分
监控各种主机项,如:进程、文件、注册表、网络等。
同时提交给入侵检测,以识别其更详细的入侵手段,并对整个入侵过程做详细记录。
入侵数据汇总分析,其实就是把上述两步所得到的各种数据进行集中分析,最后勾勒出完整的入侵轨迹画像。
最容易理解的说法
蜜罐环境隔离: 使用虚拟环境将物理环境和蜜罐隔绝开,防止某些敏感操作在其真实的系统环境中进行造成破坏。
敏感操作记录:把蜜罐中所有的入侵操作都写进数据库。
邮件报警系统:蜜罐被入侵后自动发送报警邮件通知相关安全应急人员。
蜜罐的分类
1. 低交互蜜罐
低交互蜜罐最大的特点是:蜜罐为攻击者展示的所有攻击弱点和攻击对象都不是真正的产品系统,而是对各种系统及其提供的服务的模拟。由于它的服务都是模拟的行为,所以蜜罐可以获得的信息非常有限,只能对攻击者进行简单的应答。不过,它也是最安全的蜜罐类型。
2. 中交互蜜罐
中交互蜜罐是对真正的操作系统的各种行为的模拟,它提供了更多的交互信息,同时也可以从攻击者的行为中获得更多的信息。在这个模拟行为的系统中,蜜罐此时看起来和一个真正的操作系统没有区别,它们甚至是比真正系统还诱人的攻击目标。
3. 高交互蜜罐
高交互蜜罐具有一个真实的操作系统,它的优点体现在对攻击者提供完全真实的系统。当攻击者获得 ROOT 权限后,受系统、数据真实性的迷惑,他的更多活动和行为将被记录下来。缺点是被入侵的可能性很高,如果整个高交互蜜罐被入侵,那么它就会成为攻击者下一步攻击的跳板,不太安全。
什么是 Cowrie
Cowrie
是一个具有中等交互的 SSH
蜜罐,它可以获取攻击者用于暴力破解的字典、输入的命令以及上传或下载的恶意文件。所有这些攻击记录都会被记载到日志中,以便日后分析。
项目地址:https://github.com/cowrie/cowrie
![](https://i-blog.csdnimg.cn/blog_migrate/6c9056883cdfc995091c2136553a035e.png)
Cowrie 安装部署
使用源码部署
本次搭建使用的基础环境是 Ubuntu
,以下步骤除切换到虚拟环境中的操作,其它均为 root 权限执行。
安装必要的支持软件
# Python 3
$ sudo apt-get install git python-virtualenv libssl-dev libffi-dev build-essential libpython3-dev python3-minimal authbind virtualenv
# Python 2
$ sudo apt-get install git python-virtuale