搭建蜜罐系统--kippo,用rinetd把22端口重定向到2222(蜜罐中)

kippo概述

蜜罐概述:
蜜罐是一种软件应用系统,用来充当入侵诱饵,引诱黑客前来攻击。 攻击者入侵后,通过监测与分析,就可以知道他是如何入侵的,随时了解针对组织服务器发动的最新的攻击和漏洞。 还可以通过窃听黑客之间的联系,收集黑客所用的种种工具,并且掌握他们的社交网络。
有两种基本类型的蜜罐技术:
高交互性蜜罐—设置一个全功能的应用环境,引诱黑客攻击。
低交互性蜜罐—模拟一个生产环境,所以只能提供有限的信息。
举例:当有用户访问我们服务器的22端口的时候,把访问重定向到对应的2222端口(蜜罐)。出发警告,并且查看用户做了哪些操作,收集信息。

搭建kippo

在github上下一个kippo:kippo
环境:centos7虚拟机
先把依赖先安装一下。
yum install python-zope-interface python-pyasn1 -y
yum install -y python-twisted*
yum -y install python-devel mysql-devel
yum install -y python2-paramiko
yum -y install epel-release
yum -y install python-pip
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple twisted==15.2.0
pip install mysql-python
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pycryp
注意kippo不能以root账号运行,给他新建一个账号
useradd -d /kippo kippo
安装mysql
yum install mariadb-server mariadb -y
systemctl start mariadb
安装kippo:git clone https://github.com/desaster/kippo.git
把kippo文件夹复制到/kippo 目录下面,并更改这个文件夹的所有者
cp -r kippo/ /kippo/
chown -R kippo:kippo /kippo
创建数据库和账号
进入mysql,吃创建数据库
create database kippo;
设置登录数据库的密码。
GRANT ALL PRIVILEGES ON kippo.* TO kippo@localhost IDENTIFIED BY ‘123456’;
初始化数据表
mysql -ukippo -p -Dkippo < /kippo/kippo/doc/sql/mysql.sql 在/kippo/kippo下面复制配置文件,并修改相应的配置
cd /kippo/kippo/
cp kippo.cfg.dist kippo.cfg
vim kippo.cfg 改:
163 #[database_mysql]
164 #host = localhost
165 #database = kippo
166 #username = kippo
167 #password = secret
168 #port = 3306
为:
[database_mysql]
host = localhost
database = kippo
username = kippo
password = 123456
port = 3306
启动开始程序
在这里插入图片描述kippo使用方法
查看一下kippo监听的端口
netstat -antup | grep :22在这里插入图片描述
关闭防火墙
systemctl disable firewalld && systemctl stop firewalld
kippo/data 的userdb.txt 保存了ssh登陆蜜罐的用户名和密码,也可以根据公司实际情况,添加更逼真的SSH账号和弱密码。
在这里插入图片描述
用ssh连接一下。ssh root@ip -p 2222(默认)
在这里插入图片描述我们做的这些操作都可以在日志中查看的到。tail -f /kippo/kippo/log/kippo.log
在这里插入图片描述
回放攻击者流程
/kippo/kippo/utils/playlog.py /kippo/kippo/log/tty/20190608-161126-4574.log(你想回放的那个log)。
在这里插入图片描述

使用rinetd将更多服务器请求转给蜜罐

修改sshd端口:
vim /etc/ssh/sshd_config
改:
17 #Port 22
为:
17 Port 31911
重启ssh
systemctl restart sshd
安装rineted
解压压缩包 tar zxvf 压缩包
rinetd默认只有在进程被关闭的时候,才会把日志写到rined的日志文件中(/var/log/rinetd.log),也就是说当rinetd一直在运行的时候,即使有流量被转发了,也无法在日志文件中看到日志。所以在编译安装rinetd前,我们要先修改它的源代码,增加一个fflush函数强制更新日志,然后在去编译安装。
在这里插入图片描述创建稍后编译需要用到的文件夹
mkdir -p /usr/man/man8
编译安装
1.make
2.make install
报错解决
cc -DLINUX -g-c -o rinetd.o rinetd.c
rinetd.c:176:6:警告:与内建函数‘log’类型冲突[默认启用]void log(int i, int coSe, int result);
cc -DLINUX -g-c -o match.o match.cgcc rinetd.o match.o -o rinetd
解决方法:修改Makefile文件
vim /root/rinetd/Makefile改:1 CFLAGS=-DLINUX -g
为:CFLAGS=-DLINUx -g -fno-builtin-log
还可能有错
vim /root/rinetd/rinetd.c 改:544 if ((bindPort == 0) || (bindPort >= 65536)) { 为:544 if ((bindPort == 0) || (bindPort >= 65535)) { 改:567 if ((connectPort == 0) || (connectPort >= 65536)) { 为:567 if ((connectPort == 0) || (connectPort >= 65535))
在这里插入图片描述报错解决之后
创建配置文件
vim /etc/rinetd.conf
#写入以下内容
192.168.1.130 22 192.168.1.130 2222 logfile /var/log/rinetd.log
运行这个工具
/root/rinetd/rinetd
关掉工具的命令是 pkill rinetd
开启之后查看一下是不是正常运行了
命令:netstat -antup | grep :22
在这里插入图片描述
当攻击者用ssh访问22端口的时候会被转发至蜜罐的ssh服务。被成功跳转了。
在这里插入图片描述
注意:
收集信息的时候。蜜罐服务器也会记录一份日志,但是这地方记录的访问源IP是我们诱捕节点的IP,不是攻击者所在服务器的IP地址。所以:既需要收集rinetd转发的日志,也需要收集kippo日志。
rinetd日志:tar -f var/log/rinetd.log
在这里插入图片描述

kippo日志:tail -f /kippo/kippo/log/kippo.log ,
播放操作/kippo/kippo/utils/playlog.py /kippo/kippo/log/tty/20190608-161126-4574.log(对应的文件)

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

熊是本熊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值