RHEL8部署ssh蜜罐

蜜罐cowrie简介

项目地址:https://github.com/cowrie/cowrie

Cowrie是一款中度交互的sshTelnet蜜罐,它可以获取攻击者用于暴力破解的字典,输入的命令以及上传或下载的恶意文件
特性:

  1. 伪装的文件系统增加/移除文件,完整的文件系统搭配有Debian 5.0
  2. 可增加文件内容,攻击者就能用cat命令查看如/etc/passwd等文件;系统中进包含最少的文件内容
  3. 会话日志记录在UML兼容格式中,便于重演
  4. cowroe保存文件,下载用wget/curl,或者为后续检查—上传采用sftpscp

安装运行cowrie

http://localnetwork.cn/project-3/doc-47/


安装依赖包

# 安装依赖包
yum install -y git gcc bzip2-devel libffi-devel vim net-tools

创建cowrie用户

# 创建cowrie用户
useradd cowrie

下载cowrie源码

# 进入/opt目录
cd /opt

# 下载cowrie源码
git clone https://github.com/cowrie/cowrie.git

# 进入cowrie源码目录
cd /opt/cowrie/

创建Python3虚拟环境

需要python3.7及以上

# RHEL安装virtualenv包
yum install -y python3-virtualenv

# pip安装virtualenv
pip3 install virtualenv

# 进入cowrie目录
cd /opt/cowrie/

# 创建虚拟环境
python3 -m venv cowrie-env

# 激活虚拟python环境
source cowrie-env/bin/activate

pip安装依赖包

(cowrie-env)Python3.7+以上虚拟环境执行

# 进入cowrie源码目录
cd /opt/cowrie/

# 升级pip包管理器
pip3 install -U setuptools
pip3 install -U pip

# pip安装依赖包
pip3 install six packaging appdirs

# 安装项目python依赖
pip3 install -U -r requirements.txt

修改配置文件

# 进入配置模板目录
cd /opt/cowrie/etc/

# 复制配置文件
cp /opt/cowrie/etc/cowrie.cfg.dist /opt/cowrie/etc/cowrie.cfg

# 修改目录的属主
chown -R cowrie /opt/cowrie/

创建模拟SSH账号密码泄露文件

# 编辑模拟SSH账号密码泄露文件
vim /opt/cowrie/etc/userdb.txt

把自己怀疑泄密的root密码写上去,只有这些root密码才能登录上我们的SSH蜜罐。

root:x:怀疑泄露密码1
root:x:怀疑泄露密码2
admin:x:怀疑泄露密码3

配置文件

修改配置文件
vim /opt/cowrie/etc/cowrie.cfg

Cowrie 会监听 SSH 的 port 2222、Telnet 的 port 2223。
所以这里将连接至 port 22 、23 的请求重定向到 2222、2223

[telnet]
enabled = true

listen_port = 2223
listen_endpoints = tcp:2223:interface=0.0.0.0

在这里插入图片描述


配置防火墙


firewalld防火墙配置

# 放行ssh蜜罐的2222端口和2223端口
firewall-cmd --add-port=2222/tcp --permanent
firewall-cmd --add-port=2223/tcp --permanent

# 允许SNAT(源地址转换)
firewall-cmd --zone=public --add-masquerade --permanent

# 将22端口转发到2222端口
firewall-cmd --zone=public --add-forward-port=port=22:proto=tcp:toport=2222 --permanent

# 将23端口转发到2223端口
firewall-cmd --zone=public --add-forward-port=port=23:proto=tcp:toport=2223 --permanent

# 更新防火墙规则
firewall-cmd --reload

# 重启sshd服务
systemctl restart sshd

iptables防火墙配置

# 允许从客户端发起的新TCP连接请求通过端口80进入系统
iptables -I INPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT

# 允许从客户端发起的新TCP连接请求通过端口22进入系统
iptables -I INPUT -p tcp --dport 22 -m state --state NEW -j ACCEPT

# 将tcp的22端口重定向到2222蜜罐端口
iptables -t nat -A PREROUTING -p tcp --dport 22 -j REDIRECT --to-port 2222

# 将tcp的23端口重定向到2223蜜罐端口
iptables -t nat -A PREROUTING -p tcp --dport 23 -j REDIRECT --to-port 2223

将Cowrie输出发送到MySQL数据库–非必需

https://cowrie.readthedocs.io/en/latest/sql/README.html
前置条件:已有Mysql服务器


安装mysql客户端

安装MariaDB
安装mysql服务器

# 安装mysql客户端
yum install -y mysql-devel

(cowrie-env)Python虚拟环境下执行

# 安装mysql-python依赖
pip install -y mysql-python

创建数据库

-- 创建cowrie库
create database cowrie;

-- 授权"cowrie"从"localhost"访问"cowrie"数据库,可执行所有权限,同时设置改用户的密码为"123"。
grant all on cowrie.* to cowrie@localhost identified by '123';

导入到数据库

# 进入cowrie的sql目录
cd /opt/cowrie/docs/sql

导入到数据库

-- 登录数据库
mysql -ucowrie -p

-- 进入到cowrie库
use cowrie;

-- 导入sql
source mysql.sql

配置蜜罐数据库连接

vim /opt/cowrie/etc/cowrie.cfg

# [output_mysql] 部分定义了 Cowrie 将日志输出到 MySQL 数据库的配置
[output_mysql]

# 是否启用 MySQL 输出插件。设为 true 表示启用。
enabled = true

# MySQL 数据库服务器的主机名或 IP 地址。
## 使用 'localhost' 表示数据库在本地主机。
host = localhost

# 连接到的 MySQL 数据库名称。
# 'cowrie' 是 Cowrie 将使用的数据库名称。
database = cowrie

# 用于连接 MySQL 数据库的用户名。
# 'cowrie' 是数据库用户,必须有权限访问 'cowrie' 数据库。
username = cowrie

# 用于连接 MySQL 数据库的密码。
# '123' 是数据库用户 'cowrie' 的密码。
password = 123

# MySQL 数据库服务器监听的端口号。
# 默认的 MySQL 端口号是 3306。
port = 3306

启动蜜罐

# 切换到cowrie用户
su - cowrie

# 激活虚拟python环境
source cowrie-env/bin/activate

# 切换目录
cd /opt/cowrie/bin

# 启动蜜罐
/opt/cowrie/bin/cowrie start

# 查看蜜罐状态
/opt/cowrie/bin/cowrie status

# 停止蜜罐服务
/opt/cowrie/bin/cowrie stop

查看攻击者信息和攻击方式

# 查看攻击者的攻击信息和攻击方式
mysql -ucowrie -p

# 使用sql查询攻击者信息和攻击方式

查看日志

tail ./var/log/cowrie/cowrie.log

# 查看json日志
tail ./var/log/cowrie/cowrie.json

# 登录失败
cat ./var/log/cowrie/cowrie.json | grep cowrie.login.failed

# 登录成功
cat ./var/log/cowrie/cowrie.json | grep cowrie.login.success

# 登陆蜜罐后.命令.输入
cat ./var/log/cowrie/cowrie.json | grep cowrie.command.input
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

识途老码

赞赏是第一生产力

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

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

打赏作者

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

抵扣说明:

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

余额充值