Sebek学习笔记

Sebek是一个内核级别的数据捕获工具,用于记录系统用户活动,如加密会话的键盘记录、文件恢复等。它由客户端和服务端组成,通过内核模块在蜜罐中捕获数据并利用UDP协议进行隐蔽通信。Sebek的协议包括一个固定的48字节头部,记录不同类型的数据。配置包括选择接口、目标IP和MAC地址、魔术值和UDP端口。服务端使用sbk_extract和perl脚本解析数据,可导入数据库或直接在命令行显示击键记录。
摘要由CSDN通过智能技术生成
 

1、Sebek是一个数据捕获工具。

2、Sebek是运行在内核空间的一段代码,记录系统用户存取的一些或者全部数据。

    这个工具有这些功能:记录加密会话中击键,恢复使用SCP拷贝的文件,捕获远程系统被记录的口令,恢复使用 Burneye保护的二进制程序的口令还有其它的一些入侵分析任务相关的作用。
    入侵者会使用加密工具来保护他们的传输通道,监视者如果没有密钥,基于网络的数据捕获工具将无法察看传输的数据,因此采用基于内核的Sebek来捕获数据。

3、Sebek有两个组成部分:客户端和服务端。客户端从蜜罐捕获数据并且输出到网络让服务端收集(参考图1所示)。服务端有两种方式收集数据:第一种是直接从网络活动的数据包捕获,第二种是从tcpdump格式保存的数据包文件。当数据收集后既可以上传到相关数据库,也可以马上显示击键记录。Sebek使用无连接、不可靠的UDP协议进行通信。


4、数据捕获是由内核模块来完成的,我们使用这个模块获得蜜罐内核空间的访问,从而捕获所有read()的数据。Sebek替换系统调用表的read()函数来实现这个功能,这个替换的新函数只是简单的调用老read()函数,并且把内容拷贝到一个数据包缓存,然后加上一个头,再把这个数据包发送到服务端。替换原来的函数就是改变系统调用表的函数指针。

5、为了使Sebek模块更加隐蔽,我们使用了一些如Adore等基于LKM的rootkit的技术。由于Sebek完全驻留在内核空间中,那么我们可以通过安装第二个cleaner模块来隐藏Sebek模块,这个模块把Sebek从安装模块链表中删除记录。

6、Sebek客户端如何秘密的向服务端发数据报文。
    当Sebek客户端捕获数据,那么它需要在入侵者没有察觉的情况下把数据发送到服务端。这些报完全Sebek产生,而不是使用TCP/IP协议栈来产生或发送数据包,所以系统无法看到或阻断这些数据包。当数据包创建好的时候就直接发送给驱动设备,这就绕过了原始套接字代码和包过滤代码。由于嗅探器是基于libpcap 的,而libpcap使用原始套接字接口来收集数据包,所以嗅探器不能看到运行Sebek主机上由Sebek产生的数据包。

    

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值