多头ssh蜜罐系统

blacknet的Python项目详细描述


https://travis-ci.org/morian/blacknet.svg?branch=masterhttps://coveralls.io/repos/github/morian/blacknet/badge.svg?branch=masterhttps://img.shields.io/badge/license-MIT-blue.svg

什么

blacknet是一个低交互的ssh多头蜜罐系统 能力。

您可以使用它来收集在多个IPv4地址上执行的所有ssh尝试 你拥有互联网,并从中提取和导出统计数据。 一个专用的Web界面允许实时跟踪您的 蜜罐,哪个IP地址是针对你和从哪里来的。

要求

安装

blacknet提供了两个组件:ssh服务器(传感器)和主服务器。 主服务器(blacknet master)是数据库所在的位置。 ssh服务器(blacknet sensor)只是与 主服务器。 请阅读两个命令的帮助,并仔细阅读blacknet.cfg.example。

您需要生成ssl证书才能使blacknet正常工作 通过网络堆栈正确(请参阅下一节)。

  • 使用pip安装: $pip安装blacknet
  • 以blacknet.cfg.example的副本为例,在 /etc/blacknet/${HOME}/.blacknet/
  • 在mysql数据库中运行blacknet-install.sql
  • 您可以使用 命令blacknet-updater
  • 您还可以清理数据以生成报告或执行元数据检查 使用blacknet-scrubber(有关详细信息,请咨询–帮助)
  • 命令blacknet-scrubber最好在crontab中运行(使用–quiet)
  • 你可能想过滤掉一些特定的用户,以获得一些或所有的蜜罐。 请参阅blacklist.cfg.example并将其放在适当的目录中。

创建SSL证书

请使用EasyRSA或等效工具生成您自己的pki并交付 服务器和蜜罐之间的证书。

# First clone the easyrsa repository
cd /tmp/
git clone https://github.com/OpenVPN/easy-rsa.git

# Then create a new Authority
cd /tmp/easy-rsa/easyrsa3
./easyrsa init-pki

# When asked provide a Common Name for your CA (eg: Blacknet CA)
./easyrsa build-ca nopass

# Generate and sign a certificate for master server (here called maestro)
./easyrsa gen-req maestro nopass
./easyrsa sign server maestro

# Same for sensors
./easyrsa gen-req honeypot_00 nopass
./easyrsa sign client honeypot_00

blacknet使用的pem文件格式从私钥开始,然后 与证书连接(下面的示例)。

cat pki/private/maestro.key pki/issued/maestro.crt > maestro.pem

历史记录

最初的项目以一个修改过的virtualbox环境为特色 互动蜜罐,收集命令和事件,如密码更改。 然后我们转向支持kippo,这是一个中等交互ssh蜜罐 在Python中。今天的版本使用轻量级paramiko服务器作为 低互动度蜜罐,因为没有更多的计划(也没有更多的时间)来 自动处理命令和事件 (自动进行高交互有很多安全问题)。 底层的mysql方案仍然引用命令或事件,但是它们是 主要是因为向后兼容的原因。

Cowrie的集成应该不难扩展blacknet特性和 让它再次高度互动。

这个项目最初是在2010年我们的工程研究期间进行的。 它在2017年重新编写,以减少维护和安装工作,并 符合现代python编程标准。

学分

  • Romain Bezut(2010年、2017年)
  • Vivien Bernet Rolland(2010年)

谢谢

  • 我们要感谢科技大学。 我们学校给我们带来了支持,使这个项目在 上课。特别感谢指导这个项目的老师。
  • 我们要感谢所有帮助我们发现问题和 在早期版本中查看此项目。
  • 那些不顾一切地参与这个项目的黑客和机器人。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何避免springbootstarterparent和dependency中的flyway包冲突   java文本文件写入不起作用   java获取名为DAO类的Bean创建异常   java类路径和清单文件   如何使用Java中的模式来获取像C中的“sscanf”这样的组?   java Spring自动连接具有构造函数的类   clientSecurity运行的java geode示例失败   java JavaFX:在FXML中从ResourceBundle访问非string对象   java登录到google firebase   java对象在通过构造函数后不会更改。为什么?   java(Android)对特定页面的操作webView   javascript如何在webview的js中从java调用变量   持久化—一种在Java中存储和检索对象而不使用关系数据库的简单方法?   java Ldap获取通讯组列表中的用户   java检查温度条件   java后退按钮警报框(Android Studio)   数组java列表问题:为什么我运行它时,它会在第三次打印时打印出4?   java相对路径与绝对路径