当前位置: 首页 > news >正文

基于Docker快速搭建蜜罐Dionaea(30)

实验目的
1. 快速搭建Dionaea蜜罐
2. 使用Nmap扫描测试Dionaea蜜罐
预备知识
1. 初步认识Dionaea
dionaea,中文的意思即捕蝇草,是否形容蜜罐很形象?dionaea是nepenthes(猪笼草)的发展和后续,更加容易被部署和使用。何谓蜜罐?引诱攻击者发起攻击,并能记录攻击者的活动信息。蜜罐一般分为两种类型:高交互式蜜罐和低交互式蜜罐。

低交互式蜜罐只是模拟出了真正操作系统的一部分,例如模拟一个FTP服务。虽然低交互式蜜罐容易建立和维护,但模拟可能不足以吸引攻击者,还可能导致攻击者绕过系统发起攻击,从而使蜜罐在这种情况下失效。

高交互式蜜罐是一部装有真正操作系统,并可完全被攻破的系统。与攻击者进行交互的是一部包含了完整服务的真实系统。用于网络安全的高交互式蜜罐提供了真实操作系统的服务和应用程序,使其可以获得关于攻击者更可靠的信息。但是部署和维护起来十分困难,而且被攻破的系统可能会被用来攻击互联网上其他的系统,这必须承担很高的风险。所以我们主要来研究今天我们的主题低交互式蜜罐dionaea。

2. 本实验参考资料
详细部署dionaea低交互式蜜罐和记录分析:http://www.91ri.org/7527.html

蜜罐快速搭建:http://www.91ri.org/12248.html
Dockefile文件下载:http://drops.wooyun.org/wp-content/uploads/2015/01/dionaeaui.zip

3. 小提示
试验中如果机器卡住了,请点击右侧实验列表的主机图标重新连接。

实验环境
网络拓扑图见下:

Server: 带Docker的服务器,IP随机

实验机切换可能会造成访问不到,所以在服务端运行程序时建议加上 nohup ,保证程序一直在后台进程里。语法:nohup command &

Client:xp-sp3,IP随机,装有Nmap

实验任务一
任务描述:快速搭建Dionaea蜜罐
特别说明:本实验环境已经安装好docker 1.5

1、启动Docker服务
systemctl start docker
systemctl status docker


2、查看docker镜像
docker images

我们需要用到 dionaea 这个镜像的 IMAGE ID

3、启动Dionaea容器
输入下面的命令后按回车,启动Dionaea容器

docker run -i -p 80:80 -p 135:135 -p 443:443 -p 445:445 -p 1433:1433 -p 3306:3306 -p 5060:5060 -p 5061:5061 -p 8080:8080 -t 1cb271eb746b
-i:以交互模式运行容器,通常与 -t 同时使用;
-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;
-p:端口映射,格式为:主机(宿主)端口:容器端口,把服务器的端口映射到启动的Dionaea容器中的服务端口上


此时,Dionaea蜜罐已经成功运行,然后只需等待攻击者对其进行攻击测试。

当然,因为我们是以交互模式运行的Dionaea容器,因此,容器运行过程中的所有信息都会输出在命令行终端,通常我们不会想看到这些输出,因此可以把容器运行在后台。

到这里其实一个蜜罐已经运行完成了,之后你关闭连接坐等别人打就行了。如果你觉得这样看不爽,没关系,接着来。

4、启动带Web界面的Dionaea
(1)先按 Ctrl+c 停止掉之前的docker容器。执行一下两条命令做一下清理

docker ps -a
docker stop $(docker ps -a -q)
docker rm $(docker ps -a -q)

(2)以后台方式运行Dionaea

docker run -d -p 80:80 -p 135:135 -p 443:443 -p 445:445 -p 1433:1433 -p 3306:3306 -p 5060:5060 -p 5061:5061 -p 8080:8080 -t 1cb271eb746b
-d:后台运行容器,并返回容器ID

(3)进入刚刚启动的Dionaea容器环境

docker exec -it $(docker ps -a -q) bash

如图所示,成功进入Dionaea容器。

(4)启动Dionaea的Web服务

cd DionaeaFR-master
python2.7 manage.py collectstatic

nohup python2.7 manage.py runserver 0.0.0.0:8080 &
ps -elf | grep python2.7


5、浏览器打开Dionaea的Web界面
输入exit退出容器,返回到服务端终端,查看IP地址:

ip addr


注意:这里的IP地址,是随机的,可能与我当前查看的IP地址不同,请使用自己命令查看到的IP地址。

然后切换到客户端机器,在客户端上使用火狐浏览器(开始-所有程序里面)以如下形式访问Web界面:

http://ip:8080


实验任务二
任务描述:使用Nmap扫描测试
1、在客户端上使用Nmap扫描服务端
先把刚刚打开的Dionaea Web页面最小化,然后打开桌面上的Nmap,填写目标服务器IP,运行如下:

2、刷新Dionaea Web页面
可以发现Web页面有了数据记录


点击左边的Connections,即可看到连接扫描的来源IP、扫描的协议、目的端口等等信息

3、查看Nmap扫描结果
发现扫描得到的结果,正是Dionaea容器所映射的服务端口

实验截图:

 

 

http://www.lryc.cn/news/37073.html

相关文章:

  • WP_Query 的所有参数及其讲解和实用案例
  • 100个网络运维工作者必须知道的小知识!(上)
  • Python如何获取大量电影影评,做可视化演示
  • 【C语言】详讲qsort库函数
  • SEO技术风口来了|SEO能否抓住全球约93%的网络用户?
  • mxnet版本与numpy,requests等都不兼容问题
  • 逆向分析——壳
  • 为 Argo CD 应用程序指定多个来源
  • verilog specify语法
  • CMake编译学习笔记
  • Day913.反向代理和网关是什么关系 -SpringBoot与K8s云原生微服务实践
  • IT行业就业趋势显示:二季度平均月薪超8千
  • 【毕业设计】基于Java的五子棋游戏的设计(源代码+论文)
  • C#:Krypton控件使用方法详解(第十四讲) ——kryptonSeparator
  • Java的jar包打包成exe应用
  • Latex学习笔记
  • 【c++复习】C++的基础知识(常用关键字、缺省参数、函数重载、引用)
  • Docker入门建议收藏 第二部分
  • 蓝桥杯三月刷题 第7天
  • 面试官问百万数据excel导出功能如何实现?
  • 理解HTTPS及配置
  • IP-guard浏览器上传下载智能加解密,让管理更省心省力
  • leetcode day22 位运算
  • java中如何判断map是否为空
  • C语言数据结构:链表的增删改查及动态创建
  • 「Python 基础」I/O 编程、正则表达式
  • java 把pdf图片文档和文章文档转成文字的方法
  • JavaScript 中的全部对象
  • 【教学典型案例】23.部分服务总是频繁出现掉线情况
  • 线程安全 List 效率测试