T-Pot平台cowrie蜜罐暴力破解探测及实现自动化邮件告警
2017-06-02 11:29
573 查看
前言:Cowrie是基于kippo更改的中交互ssh蜜罐, 可以对暴力攻击账号密码等记录,并提供伪造的文件系统环境记录黑客操作行为, 并保存通过wget/curl下载的文件以及通过SFTP、SCP上传的文件。而此文主要对该蜜罐的监控效果做个简单的测试,并在受到暴力破解攻击的时候实现自动化邮件告警。
一、T-Pot平台cowrie 蜜罐ssh暴力破解探测
由下图可知,cowrie的地址为172.17.0.4 (该地址可能会变动,测试时以实际分配IP为准)
首页-》UI-For-Docker-》Containers
因T-Pot仅部署在测试虚拟机里而并未部署在网络流量出入口,所以本地测试时远程ssh连接cowrie的2222端口,使用以下命令尝试登陆发现Dashboard里的Cowrie-Event Counter成功捕获到了异常连接信息。
[tsec@ptarmiganantelope:~]$ ssh -p 2222 172.17.0.4
另外,将DashBoard设置为cowrie专用模板后展示的信息将会更加全面,将屏幕刷新时间设置为5s后即可配置SSH恶意连接状况的实时动态展现。
二、cowrie配置实现自动化邮件告警
有报警信息就肯定有日志,cowrie的报警日志保存在了以下路径。
接下来就是制作监控脚本,所实现的功能是检测该日志是否有新的登录记录产生,如果发现了新的登录记录立刻向管理员发送出告警邮件。 而该告警邮件中应包含攻击者暴力破解时所使用的用户名、密码及攻击者IP地址。另外,脚本最好不要保存在/data/cowrie/log目录下,我这里放在了/root目录下了。
给监控脚本添加可执行权限
给监控脚本添加计划任务,要求每分钟执行一次(执行频率可根据需要自行设置)。
# vim /etc/crontab 添加以下内容到crontab里
重启cron服务,使得修改过的cron服务立刻生效
最后,SSH连接cowrie的IP(ssh -p 2222 172.17.0.4),尝试输入错误密码888888后发现收到了异常告警邮件!
ps:
(1)整个流程实现略显复杂,待后续研究优化。
(2)测试所用邮件服务是在ubuntu系统上安装的sendmail。
(3)查看T-Pot平台各蜜罐服务状态及设置开机自启动
》systemctl status conpot/dionaea/elasticpot/emobility/glastopf/honeytrap
》systemcel enable conpot/dionaea/elasticpot/emobility/glastopf/honeytrap
(4)发送邮件到163或QQ邮箱的时候可能会被当作垃圾邮件处理,可以尝试在hosts文件里添加发送源邮箱的域名(如以下红体字部分)
同时,观察是否存在以下进程以确认sendmail是否正常工作
一、T-Pot平台cowrie 蜜罐ssh暴力破解探测
由下图可知,cowrie的地址为172.17.0.4 (该地址可能会变动,测试时以实际分配IP为准)
首页-》UI-For-Docker-》Containers
因T-Pot仅部署在测试虚拟机里而并未部署在网络流量出入口,所以本地测试时远程ssh连接cowrie的2222端口,使用以下命令尝试登陆发现Dashboard里的Cowrie-Event Counter成功捕获到了异常连接信息。
[tsec@ptarmiganantelope:~]$ ssh -p 2222 172.17.0.4
另外,将DashBoard设置为cowrie专用模板后展示的信息将会更加全面,将屏幕刷新时间设置为5s后即可配置SSH恶意连接状况的实时动态展现。
二、cowrie配置实现自动化邮件告警
有报警信息就肯定有日志,cowrie的报警日志保存在了以下路径。
/data/cowrie/log/cowrie.log
接下来就是制作监控脚本,所实现的功能是检测该日志是否有新的登录记录产生,如果发现了新的登录记录立刻向管理员发送出告警邮件。 而该告警邮件中应包含攻击者暴力破解时所使用的用户名、密码及攻击者IP地址。另外,脚本最好不要保存在/data/cowrie/log目录下,我这里放在了/root目录下了。
脚本内容:/root/diff.sh
#! /bin/bash grep 'login attempt' /data/cowrie/log/cowrie.log > /data/cowrie/log/cowrieSSH.log.new diff /data/cowrie/log/cowrieSSH.log.new /data/cowrie/log/cowrieSSH.log.old > /data/cowrie/log/diff.txt if [ $? == "0" ] ; then echo "未探测到SSH异常连接!" else echo "SSH异常连接,正在发送确认邮件...!" mail -s '[T-POT] cowrie monitor warnning!!!' pentest@163.com < /data/cowrie/log/diff.txt cp /data/cowrie/log/cowrieSSH.log.new /data/cowrie/log/cowrieSSH.log.old echo "邮件发送成功!" fi
给监控脚本添加可执行权限
chmod u+x /root/diff.sh
给监控脚本添加计划任务,要求每分钟执行一次(执行频率可根据需要自行设置)。
# vim /etc/crontab 添加以下内容到crontab里
# Check cowrie HoneyPot * * * * * root /root/diff.sh
重启cron服务,使得修改过的cron服务立刻生效
/etc/init.d/cron restart
最后,SSH连接cowrie的IP(ssh -p 2222 172.17.0.4),尝试输入错误密码888888后发现收到了异常告警邮件!
ps:
(1)整个流程实现略显复杂,待后续研究优化。
(2)测试所用邮件服务是在ubuntu系统上安装的sendmail。
(3)查看T-Pot平台各蜜罐服务状态及设置开机自启动
》systemctl status conpot/dionaea/elasticpot/emobility/glastopf/honeytrap
》systemcel enable conpot/dionaea/elasticpot/emobility/glastopf/honeytrap
(4)发送邮件到163或QQ邮箱的时候可能会被当作垃圾邮件处理,可以尝试在hosts文件里添加发送源邮箱的域名(如以下红体字部分)
[root@ptarmiganantelope:/data/cowrie/log]# vim /etc/hosts 127.0.0.1 localhost 127.0.1.1 ptarmiganantelope hbmapentest.ips.com
同时,观察是否存在以下进程以确认sendmail是否正常工作
[root@ptarmiganantelope:/data/cowrie/log]# ps aux | grep sendmail root 975 0.0 0.1 106900 5436 ? Ss 10:16 0:00 sendmail: MTA: accepting connections root 11916 0.0 0.0 14224 1016 pts/0 S+ 10:36 0:00 grep --color=auto sendmail
相关文章推荐
- T-Pot平台Honeytrap蜜罐TCP/UDP服务攻击探测及实现自动化邮件告警
- 告警通知平台的邮件短信接口实现思路以及数据统计 推荐
- T-Pot多蜜罐平台:让蜜罐实现更简单
- 基于Exchange 2003搭建高可用的邮件平台 之三: 前端服务器实现NLB
- java网络编程五:暴力法破解登录系统的完全实现
- java网络编程五:暴力法破解登录系统的完全实现(木子)
- nagios使用sendEmail实现邮件告警
- 密码分析学策略之带字典的暴力破解的几个思考与算法实现
- 暴力破解算法,基本实现
- 暴力破解算法,基本实现
- 关于数据库自动化运维平台的设计及开发实现思路 推荐
- java网络编程五:暴力法破解登录系统的完全实现(木子)
- [C#] 10进制转62进制,实现穷举指定位数的所有密码组合(暴力破解)
- Iptalbes自动封杀暴力破解(Qmail邮件系统)者的IP地址
- linux实现ssh密码暴力破解
- java网络编程五:暴力法破解登录系统的完全实现(木子)
- 利用denyhosts轻松实现,sshd和ftp暴力密码破解防御
- 利用denyhosts轻松实现,sshd和ftp暴力密码破解防御
- 用python实现监控网站状态,并发送告警邮件
- 自动化运维平台中的统一认证接入与单点登录实现 推荐