探索新型内核马:eBPF WebShell

图片[1]-探索新型内核马:eBPF WebShell-山海云端论坛

技术特点:

  • 无进程、无端口、无文件: 注入后文件可删除,执行命令不会新建shell进程,无法通过常规行为检测。
  • 内核注入: 将WebShell注入内核,无法通过常规内存检测。
  • 协议适配: 可改造内核马,适配HTTP协议以外的所有协议。

技术缺点:

  • 权限限制: 需要 root 权限。
  • 内核版本要求: 内核版本需要大于5.2.0。
  • 执行命令限制: 命令不是直接执行,需要等待其他进程执行命令。
  • 无回显: 无法直接获得执行结果。

技术原理: 通过ebpf hook入/出口流量,筛选出特定的恶意命令,并将其他进程正常执行的命令替换为恶意命令,达到WebShell的效果。

研究中遇到的问题:

  1. 为何不直接执行命令: ebpf自身不能执行命令,只能hook各种函数,因此需通过其他进程间接执行。
  2. 如何识别HTTP报文: 通过TC格式化HTTP报文,算IP header、TCP header的长度等定位包体内容。
  3. 持续运行问题: 研究了ebpf程序的生命周期,以确保在内核中持续运行。

防御加固方案:

  • 环境限制: 权限收敛,确认 /proc/sys/kernel/unprivileged_bpf_disabled 为 1。
  • 特征检查: 落地elf文件查杀,分析新增的ebpf程序字节码。
  • 运行检查/监控: 通过bpftool检测新增加的ebpf程序,监控ebpf文件描述符与引用计数器的变化。
  • 防御措施: 利用ebpf技术防御ebpf后门的攻击。

项目地址: https://github.com/veo/ebpf_shell

© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容