eBPF-AntiRootkit

Linux中基于eBPF的恶意利用与检测机制 容器的高频率部署、短暂的生命周期、复杂的网络路由,都给内核安全带来了新的挑战。此时,eBPF出现,它以较小的子系统改动,保障了系统内核的稳定,还具备实时动态加载的特性,能将业务逻辑加载到内核,实现热更新的动态执行。ip命令的参数中包含bpf字节码文件名,ip进程打开.o字节码的FD,通过NETLINK发IFLA_XDP类型消息(子类型IFLA_XDP_FD)给内核,内核调用dev_change_xdp_fd函数,由网卡接管FD,引用计数器递增,用户空间的ip进程退出后,BPF程序依旧工作。 阅读详情

背景:

针对最近几年频繁出现的通过eBPF进行容器逃逸、rootkit等攻击,需要考虑如何收敛服务器ebpf相关权限,防止被黑客利用。

静态方案:

宿主机层面:

  1. 非root用户不赋予CAP_BPF及CAP_SYS_ADMIN
    注:3.15 - 5.7 内核不赋予CAP_SYS_ADMIN即可 5.8及以后内核需要同时不存在CAP_BPF及CAP_SYS_ADMIN权限
  2. 非root用户禁止调用ebpf功能 /proc/sys/kernel/unprivileged_bpf_disabled 设置为1
    1. 值为0表示允许非特权用户调用bpf
    2. 值为1表示禁止非特权用户调用bpf且该值不可再修改,只能重启后修改
    3. 值为2表示禁止非特权用户调用bpf,可以再次修改为0或1
  3. 添加签名机制,只有经过签名的ebpf程序才可以加载(参考MTOS热补丁验签机制)

容器层面:

  1. seccomp设置禁止bpf系统调用
  2. 容器启动时禁止携带privilege参数
  3. 非root用户不赋予CAP_BPF及CAP_SYS_ADMIN
  4. 非root用户禁止调用ebpf功能 /proc/sys/kernel/unprivileged_bpf_disabled 设置为1

动态方案:

  1. hook bpf / bpf_probe_write_user 等敏感函数,监控主机bpf事件
  2. 枚举已经加载的bpf程序及map(此种方案只能针对普通bpf程序,如果bpf程序实现了rootkit对自身进行隐藏,那此种方案就无法生效)
Spectre V2 理论与实践 检测系统是否存在Spectre相关漏洞 环境: VMWare Ubuntu18.04 使用spectre-meltdown-checker程序进行检测: ./spectre-meltdown-checker.sh 根据参考[1]中的方法禁用spectre的补丁: //修改内核启动参数 gedit /etc/default/grub //在 GRUB_CMDLINE_LINUX= 此行最后加入下面的参数: //noibrs noibpb nopti nospectre_v2 nospectre_v1 l1t 阅读详情

相关推荐

CentOS7日志文件及journalctl日志查看

centos系统下的日志查看

weixin_45432833的博客 3369

Ubuntu16.04安装VMvare问题

操作系统:ubuntu16.04 lts 64bit 软件版本:VMware-Player-12.5.0-4352439.x86_64.bundle 出现问题 解决方法 无法加载libcanberra-gtk-module.so的问题 找到libcanberra-gtk-module.so的位置 $locate libcanberra-gtk-module.so

旷野清泉-技术交流 4642

VMware Linux系统出现进入不了图形界面问题

VMware 磁盘修复

qq_41507735的博客 1662

centos升级内核 大漠知秋_Linux内核eBPF权限提升漏洞通告(CVE202027194)

linux内核的bpf模块的verifier.c文件中的scalar32_min_max_or()函数存在漏洞。由于该函数错误地使用了64位值处理边界跟踪,导致边界检查错误,攻击者可以利用此漏洞进行权限提升。Linux kernel5.7至5.8.14版本受影响。漏洞名称 :Linux内核eBPF权限提升漏洞(CVE-2020-27194)威胁等级 : 中危影响范围:Linux ...

weixin_39949889的博客 493

启用和禁用warning

#pragma warning 启用和禁用warning https://www.cnblogs.com/Free-Thinker/p/5897678.html 转载于:https://www.cnblogs.com/javalzy/p/8950847.html

weixin_30845171的博客 256

Linux 安全看,eBPF 的出现是“天使”还是“恶魔”?

【CSDN 编者按】eBPF 目前已经成了安全研究人员和黑客手中强大的工具,亦正亦邪,取决于使用者的选择。作者 | 许庆伟 责编 | 王子彧出品 | OpenAnolis(龙蜥)启示录新约圣经启示录认为:恶魔其实本身是天使,但炽天使长路西法背叛了天堂,翅膀变成了黑色,坠落地狱,堕落成为恶魔。这些恶魔主宰著黑暗势力,阻碍人类与上帝沟通,无所不用其极。所以可以说天使和恶魔本来是一体的,只是命运不...

CSDN资讯 776

Centos7.9内核更新之后出现异常

在EXSI虚拟机中进行内核升级测试,并未出现上述异常界面。在物理设备上的Centos7中进行内核升级出现上述异常界面。

IForFree 4633

VirtualBox虚拟机启动报错

解决方法是: 因为vboxdrv服务没有安装或没有成功启动, 64位的系统经常这样, 找到安装目录下的vboxdrv文件夹, 如D:\Program Files\Oracle\VirtualBox\drivers\vboxdrv, 右击VBoxDrv.inf,选安装,然后重启。

bcmbcmbcm的专栏 1458

安装VMware虚拟机时出现报错:

在 BIOS/UEFI 设置中找到与虚拟化相关的选项(通常是 Advanced → CPU Configuration),并将 Intel Virtual Technology 或类似的选项设为 Enabled

muxue178的博客 679

Linux中基于eBPF的恶意利用与检测机制(rootkit、驱动)

前言 近几年来,云原生领域飞速发展,k8s成为公认的云操作系统。容器的高频率部署、短暂的生命周期、复杂的网络路由,都给内核带来了新的挑战。系统内核在面对复杂性不断增长,性能、可扩展性新需求的同时,还需要保障系统稳定可用,这是极其困难的事情。 eBPF出现,以较小的子系统改动,保障了系统内核的稳定。具备实时动态加载的特性,将业务逻辑加载到内核,实现热更新的动态执行。eBPF技术的出现,衍生新业务场景的同时,也带来了安全威胁。 现状分析 在解决很多技术难题的同时,eBPF技术的出现也带来了新的恶意利用

墨痕诉清风的博客 2569

Ubuntu16.04 本地提权漏洞复测过程

一、漏洞概述 Ubuntu 16.04 版本且unprivileged_bpf_disable 权限没有关闭的情况下就会存在 提权漏洞查看方式:1,cat /proc/version 查看系统版本 2,查看是否存在unprivileged_bpf_disable文件,如果存在该文件,查看文件内容是否为1,若不是1,则存在漏洞 二、漏洞验证 1,下载poc文件 upstream...

weixin_33675507的博客 440

Spectre漏洞 v2 版本再现,影响英特尔 CPU + Linux 组合设备

近日,网络安全研究人员披露了针对英特尔系统上 Linux 内核的首个原生 Spectre v2 漏洞,该漏洞是2018 年曝出的严重处理器“幽灵”(Spectre)漏洞 v2 衍生版本,利用该漏洞可以从内存中读取敏感数据,主要影响英特尔处理器 + Linux 发行版组合设备。阿姆斯特丹自由大学系统与网络安全小组(VUSec)的研究人员在一份新的研究报告中提到,该漏洞被称为 "本地分支历史注入漏洞”,被追踪为 CVE-2024-2201。

FreeBuf_的博客 1170

Linux内核性能限制,Linus Torvalds:Linux 4.20内核性能明显下降后,Spectre v2补丁需要限制...

在某些Linux工作负载中,Spectre v2补丁导致Linux 4.20内核性能下降50%。正如Linux新闻网站Phoronix所指出的那样,Linux 4.20 的表现比最新稳定版 4.19 有明显的下降,是由新实施的缓解措施引起的,称为单线程间接分支预测器(STIBP),默认情况下在Linux 4.20内核中用于具有最新微码的Intel系统。STIBP是英特尔针对Specter v2攻击...

weixin_35298139的博客 652

重要预警 | Ubuntu 16.04 4.4 系列内核本地提权漏洞

2018年3月16日,阿里云云盾应急响应中心监测到国外安全研究人员公开Ubuntu 16.04版本存在高危本地提权漏洞,恶意攻击者可以利用此漏洞来进行本地提权操作。 经分析,阿里云云平台自身不受此漏洞影响。阿里云安全应急响应中心建议:尽快开展自查工作并根据厂商更新情况及时更新补丁,以避免攻击者利用该漏洞发动提权攻击。目前,阿里云已发布官方公告,并...

weixin_33727510的博客 340

Linux Rootkit 手法解析(下):深入内核态的“隐形”攻防战

本文重点探讨了LKMRootkit和eBPFRootkit的技术原理,通过具体案例展示了这些技术如何实现文件/进程隐藏、网络连接隐藏等功能。

WangsuSecurity的博客 927

安装虚拟机问题汇总(7.1.1 build-282343)

一、安装虚拟机过程中,出现下面状况的: The cpu has been disabled by the guest operating system. You will need to power off or reset the virtual machine at this point 编辑 vmx 的文件,就是开始的时候添加下面这个语句: cpuid.1.eax = "0000:00

Lewis's Space 831
上一篇: Centos 4.18 eBPF编译环境搭建
下一篇: eBPF代码流程分析
SenberHu
博客等级 码龄4年 4粉丝 9原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值