您的位置:首页 > 其它

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的报警日志保存在了以下路径。

/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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: