T-pot平台的Honeytrap可观察针对TCP或UDP服务的攻击,作为一个守护程序模拟一些知名的服务,并能够分析攻击字符串,执行相应的下载文件指令,当不产生TCP或者UDP协议的时候Honeytrap捕获不到任何信息,但有攻击者试图使用一些安全工具进行扫描的时候,Honeytrap即可捕获到连接信息。将Dashboard更换到Honeytrap模式,如下图所示

Honeytrap的日志记录保存在/data/honeytrap/log/attacker.log中

[root@ptarmiganantelope:/data/honeytrap/log]# ll
total
-rw-r--r-- root root Jun : attacker.log
-rw-r--r-- root root Jun : attackers.json
-rw-r--r-- root root Jun : honeytrap.log

在编写自动告警邮件的脚本前需要注意一个事,因为attacker.log中会产生很多从127.0.0.1到127.0.0.1的流量,此类流量推测是虚拟出来伪装流量,如果要探测是否存在攻击应该过滤到此类流量。如:

[2017-06-26 07:44:17:458433 GMT] tcp 127.0.0.1:43102 -> 127.0.0.1:8888 e61f0d10f73c114cc88d551b1ef5c83f 2a45a0b18df52f8d446d0ad5329d3f71a05debf7298a133ba6b593806928ca9c8a1c1d7606557d6ba938579ee3e1576a89c17a2976b7115fbe6bc8b1423241bd (127 bytes)

自动告警邮件的脚本内容:

[root@ptarmiganantelope:~]# cat /root/honeytrapScri.sh
#!/bin/bash grep -v "127.0.0.1" /data/honeytrap/log/attacker.log > /data/honeytrap/log/attacker.newlog.txt  #过滤掉127.0.0.1的流量
if [ ! -e /data/honeytrap/log/attacker.oldlog.txt ] ; then
touch /data/honeytrap/log/attacker.oldlog.txt
fi diff /data/honeytrap/log/attacker.newlog.txt /data/honeytrap/log/attacker.oldlog.txt > /data/honeytrap/log/honeytrap.sendmail.txt
if [ $? == "" ] ; then
echo ‘safety!’
else
if [ -s /data/honeytrap/log/honeytrap.sendmail.txt ] ; then
mail -s '[T-POT] Honeytrap monitor warnning!!!' pentest@.com < /data/honeytrap/log/honeytrap.sendmail.txt
echo 'mail send success.'
cp /data/honeytrap/log/attacker.newlog.txt /data/honeytrap/log/attacker.oldlog.txt
else
echo 'mail is empyt! no propleam'
fi
fi

给脚本添加可执行权限,chmod a+x /root/honeytrapScri.sh

以上触发自动告警邮件的脚本就已经编写好了,但是考虑到攻击者如果使用安全工具进行扫描的话,短时间内就会收到大量的流量信息而使用计划任务则会稍有延迟,所以使用while循环设置脚本执行间隔为几秒钟效果会更好一些。以下实例设置为7s,具体情况可根据实际需要而定。

[root@ptarmiganantelope:/etc/init.d]# cat honeytrapWhile.sh
#!/bin/sh
### BEGIN INIT INFO
# Provides: OSSEC HIDS
# Required-Start: $network $remote_fs $syslog $time
# Required-Stop:
# Default-Start:
# Default-Stop:
# Short-Description: OSSEC HIDS
### END INIT INFO while [ ]
do
sleep 7s
/root/honeytrapScri.sh
done

需要注意的是,该脚本的执行最好配置开机自启动,否则下次开机仍然要手动启动脚本然后进入后台去执行,实在是麻烦。所以,将该脚本honeytrapWhile.sh放置在/etc/init.d目录下面,然后配置启动优先级。

mv honeytrapWhile.sh /etc/init.d/
cd /etc/init.d/
update-rc.d new_honeytrapWhile.sh defaults

接下来,重新启动机器后确认该脚本进程是否存在

[root@ptarmiganantelope:~]# ps aux | grep honeytrapWhile.sh
root 0.0 0.0 ? Ss : : /bin/sh /etc/init.d/honeytrapWhile.sh start
root 0.0 0.0 ? S : : /bin/sh /root/honeytrapWhile.sh
root 0.0 0.0 pts/ S+ : : grep --color=auto honeytrapWhile.sh

最后尝试使用安全工具对honeytrap进行扫描(模拟TCP/UDP流量攻击)

经确认已收到告警邮件。

T-Pot平台Honeytrap蜜罐TCP/UDP服务攻击探测及实现自动化邮件告警的更多相关文章

  1. T-Pot平台cowrie蜜罐暴力破解探测及实现自动化邮件告警

    前言:Cowrie是基于kippo更改的中交互ssh蜜罐, 可以对暴力攻击账号密码等记录,并提供伪造的文件系统环境记录黑客操作行为, 并保存通过wget/curl下载的文件以及通过SFTP.SCP上传 ...

  2. 为什么基于TCP UDP服务的一些简单服务端口号都是奇数

    TCP是有NCP(网络控制协议)派生出来的,NCP是单工的,通信需要两个链接,所以会预留奇偶端口号.当TCP/UDP成为传输层协议,每个程序只是用一个端口号,且使用奇端口号.

  3. 分布式系统(二) --SOA 以及一些网络通信协议TCP/UDP SYN攻击

    SOA(面向服务的架构):Service Oriented Architecture面向服务的架构.也就是把工程拆分成服务层.表现层两个工程.服务层中包含业务逻辑,只需要对外提供服务即可.表现层只需要 ...

  4. 32.网络编程TCP/UDP服务

    网络编程TCP: 服务器端口了解: port:0~65535 web服务:80 邮箱服务:556 0~1024:为服务默认的公认端口,一般我们不能用 套接字:socket socket作用 ip:po ...

  5. tcp/udp高并发和高吐吞性能测试工具

    在编写一个网络服务的时候都比较关心这个服务能达到多少并发连接,而在这连接的基础上又能达到一个怎样的交互能力.编写服务已经是一件很花力气的事情,而还要去编写一个能够体现结果的测试工具就更加消耗工作时间. ...

  6. c++ 网络编程(一)TCP/UDP windows/linux 下入门级socket通信 客户端与服务端交互代码

    原文作者:aircraft 原文地址:https://www.cnblogs.com/DOMLX/p/9601511.html c++ 网络编程(一)TCP/UDP  入门级客户端与服务端交互代码 网 ...

  7. TCP/UDP简易通信框架源码,支持轻松管理多个TCP服务端(客户端)、UDP客户端

    目录 说明 TCP/UDP通信主要结构 管理多个Socket的解决方案 框架中TCP部分的使用 框架中UDP部分的使用 框架源码结构 补充说明 源码地址 说明 之前有好几篇博客在讲TCP/UDP通信方 ...

  8. 【转】TCP/UDP简易通信框架源码,支持轻松管理多个TCP服务端(客户端)、UDP客户端

    [转]TCP/UDP简易通信框架源码,支持轻松管理多个TCP服务端(客户端).UDP客户端 目录 说明 TCP/UDP通信主要结构 管理多个Socket的解决方案 框架中TCP部分的使用 框架中UDP ...

  9. YxdIocp包含有支持大并发的TCP服务组件、HTTP服务组件、UDP服务组件、WebSocket服务组件

    Delphi Windows IOCP 通讯模型封装,基于DIOCP.YxdIocp包含有支持大并发的TCP服务组件.HTTP服务组件.UDP服务组件.WebSocket服务组件,和TCP.UDP等基 ...

随机推荐

  1. 洛谷 P1057 传球游戏 【dp】(经典)

    题目链接:https://www.luogu.org/problemnew/show/P1057 题目描述 上体育课的时候,小蛮的老师经常带着同学们一起做游戏.这次,老师带着同学们一起做传球游戏. 游 ...

  2. windows7命令行终端获取管理员模式随笔

    非常感谢http://wenku.baidu.com/view/d0e8d2d2240c844769eaee8a.html 背景: 安装了windows7系统后发现有很多命令在命令行模式下运行不了说没 ...

  3. luoguP3302 [SDOI2013]森林 主席树 启发式合并

    题目链接 luoguP3302 [SDOI2013]森林 题解 本来这题树上主席树暴力启发式合并就完了 结果把lca写错了... 以后再也不这么写了 复杂度\(O(nlog^2n)\) "f ...

  4. 实例化和设置一个优秀的php对象

    类是用于生成对象的代码模板,对象可以被说成是类的"实例" class ShopProduct{ public $title = 'default product'; // 属性也称 ...

  5. Java 多线程 interrupt方法

    interrupt 下面是interrupt方法的文档的一部分: * <p> If this thread is blocked in an invocation of the {@lin ...

  6. Codeforces Round #405 (rated, Div. 2, based on VK Cup 2017 Round 1) C. Bear and Different Names 贪心

    C. Bear and Different Names 题目连接: http://codeforces.com/contest/791/problem/C Description In the arm ...

  7. Oracle中使用透明网关链接到Sqlserver(转)

    测试环境介绍 1.ORACLEServer   Database version:10.2.0 IP:192.168.1.5 ORACLE_HOME:D:\oracle\product\10.2.0\ ...

  8. tcp keepalive选项

    之前一直对tcp keepalive选项理解有误, 以为通过setsockopt函数设置SO_KEEPALIVE和相关参数后该socket则使用设置的keepalive相关参数 否则使用系统默认的:k ...

  9. 斗鱼宣布获C轮15亿融资 直播行业进入资本时代

    今天,斗鱼直播宣布完成C轮15亿人民币融资,本轮融资由凤凰投资与腾讯领投,深创投.国家中小企业基金.红土成长等跟投.2016年3月,斗鱼曾获得1亿美元(约合6.7亿元人民币)B轮融资,腾讯出资4亿人民 ...

  10. OKHttpUtil工具类

    导入jar包下载链接 http://square.github.io/okhttp/ package com.common.util; import java.io.IOException; impo ...