上篇文章介绍了 Linux capabilities 的诞生背景和基本原理,本文将会通过具体的示例来展示如何查看和设置文件的 capabilities。
简单的文件复制代码,当seccomp功能打开的时候,代码执行到25行“open(argv[1], O_RDONLY)”时就会 退出,如图:
Capabilities机制是在Linux内核2.2之后引入的,原理很简单,就是将之前与超级用户root(UID=0)关联的特权细分为不同的功能组,Capabilites作为线程(Linux并不真正区分进程和线程)的属性存在,每个功能组都可以独立启用和禁用。其本质上就是将内核调用分门别类,具有相似功能的内核调用被分到同一组中。
在linux 2.2版本之前,当内核对进程进行权限验证的时候,可以将进程划分为两类:privileged(UID=0)和unprivilege(UID!=0)。其中privileged的进程拥有所有内核权限,而unprivileged则根据如可执行文件的权限(effective UID, effective GID,supplementary group等)进行判断。
Docker默认设置可以保护主机容器内的进程访问资源,虽然Docker容器内的初始进程运行为root,但它具有的权限是非常有限的,这主要是通过使用以下几种主要的安全机制来实现的:
Linux操作系统的核心kernel具有模块化的特性,应此在编译核心时,务须把全部的功能都放入核心。 加载内核驱动的通常流程:
实际上这是配置对应的容器的 Capabilities,在我们使用 docker run 的时候可以通过 --cap-add 和 --cap-drop 命令来给容器添加 LinuxCapabilities。对于大部分同学可能又要疑问 LinuxCapabilities 是什么呢?
运行在单核下, 单操作系统上运行多个虚拟服务;服务提供者可以利用较低的代价提供主机服务。
自己开始接触 Linux「Ubuntu」应该是在大学期间, 接触 Unix「Mac OSX」是在工作后的第一份工作,吭哧吭哧的用了好几年的 Linux,强行此文,自己总结了目前经常用到的几个命令,希望给 Linux 用户提供帮助。
更多奇技淫巧欢迎订阅博客:https://fuckcloudnative.io 前言 该系列文章总共分为三篇: ?Linux Capabilities 入门教程:概念篇 ?Linux Capabili
在这个信息爆炸的年代,过多的知识搬运工,导致了我们整天被大量信息充斥着,过多无用,重复的信息充斥着我们,只会让我们视觉疲劳。快节奏的时代,我们需要的是原创、干货。2014年起,本公众号一路与大家相伴走来,收获了不少,成为深受网工们青睐的公众号。今后,将持续与大家分享干货,分享福利,让我们每天进步一点点!共同成长 by 阿龙
我们需要经常使用摄像头捕获图像。OpenCV为这个应用提供了一个非常简单的接口。让我们来使用摄像头来捕获一段视频,并把它转换成灰度视频显示出来。
Docker是当今使用范围最广的开源容器技术之一,具有高效易用的优点。然而如果使用Docker时采取不当安全策略,则可能导致系统面临安全威胁。
原创文章,转载请务必将下面这段话置于文章开头处。 本文转发自:字母哥博客,原文链接 http://www.zimug.com/463.html
Vulnhub是一个提供各种漏洞环境的靶场平台,供安全爱好者学习渗透使用,大部分环境是做好的虚拟机镜像文件,镜像预先设计了多种漏洞,需要使用VMware或者VirtualBox运行。每个镜像会有破解的目标,大多是Boot2root,从启动虚机到获取操作系统的root权限和查看flag。
说到抓包分析,最简单的方法当然是在客户端直接安装Wireshark或Fiddler,这些工具的使用率很高且有很多成熟的教程,因此不再赘述。
作为科研工作者,熟练掌握Linux操作系统不仅能够提升数据处理、编程开发等任务的效率,更是许多科研软件和计算环境的基础。本文将带你走进Linux的世界,从最基础的命令入手,帮助初学者快速搭建起Linux操作的知识框架,为科研之路打下坚实基础。
User namespace 是 Linux 3.8 新增的一种 namespace,用于隔离安全相关的资源,包括 user IDs and group IDs,keys, 和 capabilities。同样一个用户的 user ID 和 group ID 在不同的 user namespace 中可以不一样(与 PID nanespace 类似)。换句话说,一个用户可以在一个 user namespace 中是普通用户,但在另一个 user namespace 中是超级用户。
如果运行云原生工作负载均衡设施,则可以更好地保护我们的服务。毕竟,服务经常向公众暴露以及工作负载可能属于不同的租户。在这篇博文中,我将向大家展示访问我们的 Kubernetes 集群的攻击者如何进行容器逃逸:运行 Pod 以获得 root 权限,将 Pod 转义到主机上,并通过不可见的 Pod 和无文件执行来持续攻击。同时,我将向大家展示如何基于 Isovalent Cilium Enterprise 进行攻击检测。
Linux是一种安全操作系统,它给普通用户尽可能低的权限,而把全部的系统权限赋予一个单一的帐户–root。root帐户用来管理系统、安装软件、管理帐户、运行某些服务、安装/卸载文件系统、管理用户、安装软件等。另外,普通用户的很多操作也需要root权限,这通过setuid实现。
玩过安卓的朋友应该都对 root 这个名词不陌生,曾几何时,一台 root 过的手机是发烧友标配;对于开发者来说,root 后的手机是黑灰产外挂的温床,是想要极力避免和打击的目标;而对于安全研究人员来说,root 则意味着更多 —— Towelroot、PingPongRoot、DirtyC0w、ReVent,那些有趣的漏洞和精妙的利用,承载了不少的汗水和回忆。
Linux是基于模块的,所有的驱动都是模块化的:管理模块的命令:1、列出系统中所有已经加载的模块的大小与名称等:lsmod或者cat/proc /modules
近日,绿盟科技监测发现Linux kernel 存在一个权限提升漏洞(CVE-2020-14386),由于net/packet/af_packet.c在处理AF_PACKET时存在整数溢出,导致可进行越界写从而实现权限提升,攻击者可以利用此漏洞从非特权进程获得系统root权限。使用了Linux Kernel的openshift/docker/kubernetes等虚拟化产品可能会受到该漏洞影响,导致虚拟化逃逸,请相关用户采取措施进行防护。
原文链接:https://rumenz.com/rumenbiji/linux-strings.html
对于现代嵌入式设备,特别是手机来说,摄像头是很重要的一个设备。很多同学买手机,一看颜值,第二就看摄像头拍照如何。所以,从某个角度来说,摄像头是各个厂家主打的应用功能。那么,linux是如何支持摄像头的,我们可以来看一下?
CAP原则又称CAP定理,指的是在一个分布式系统中,一致性(Consistency)、可用性(Availability)、分区容错性(Partition tolerance)。CAP 原则指的是,这三个要素最多只能同时实现两点,不可能三者兼顾。
tcpdump和ethereal可以用来获取和分析网络通讯活动,他们都是使用libpcap库来捕获网络封包的。
strings 命令是二进制工具集 GNU Binutils 的一员,用于打印文件中可打印字符串,strings命令在对象文件或二进制文件中查找可打印的字符串。字符串是4个或更多可打印字符的任意序列,以换行符或空字符结束。strings命令对识别随机对象文件很有用。 命令语法 strings [ -a ] [ - ] [ -o ] [ -t Format ] [ -n Number ] [ -Number ] [ file ... ] 命令选项 -a --all:扫描整个文件而不是只扫描目标文件初始化和装
Linux 是一种安全的操作系统,它把所有的系统权限都赋予了一个单一的 root 用户,只给普通用户保留有限的权限。root 用户拥有超级管理员权限,可以安装软件、允许某些服务、管理用户等。
近年来,容器技术持续升温,全球范围内各行各业都在这一轻量级虚拟化方案上进行着积极而富有成效的探索,使其能够迅速落地并赋能产业,大大提高了资源利用效率和生产力。随着容器化的重要甚至核心业务越来越多,容器安全的重要性也在不断提高。作为一项依然处于发展阶段的新技术,容器的安全性在不断地提高,也在不断地受到挑战。与其他虚拟化技术类似,在其面临的所有安全问题当中,「逃逸问题」最为严重——它直接影响到了承载容器的底层基础设施的保密性、完整性和可用性。
使用 runc`部署 Nginx 需要几个步骤。首先,确保你已经安装了 runc。接下来,请按照以下步骤操作:
监控io性能 : 有时候发现系统cpu和内存均有剩余,但是负载却很高,使用vmstat发现b列和wa列负载很高,要是想更详细的查看磁盘状态,那我们就用到了今天所讲的iostat。 yum install -y sysstat #iostat //直接查看磁盘的现状 #iostat 1 10 //和vmstat一样的功能 KB_read/s 读硬盘的速度 KB_wrtn/s 写硬盘的速度 #iostat x 1 (每隔一秒就会展现一次磁盘的IO状态) 我们重点关注的是 %util:如果长期大于50%代表着你的
描述: auditd是Linux审计系统的用户空间组件, 该守护进程它负责将审计记录写入磁盘,我们可以使用 ausearch 或 aureport 实用程序查看日志。 与此同时,我们可以使用 auditctl 实用程序配置审计系统或加载规则,在 auditd 启动期间审计规则 /etc/audit/audit.rules,由 auditctl 读取并加载到内核中或者还有一个 augenrules 程序,它读取位于 /etc/audit/rules.d/ 中的规则并将它们编译成一个 audit.rules 文件。
背景: 最近在项目中遇到一个问题,追溯WIFI模块是否丢包的问题。因为丢包的环节很多。 我所有用到平台场景:主控(跑LWIP协议栈)+ SDIO wifi。 📷 在上面的场景中可能丢包的情况很多: wifi模块没有接收到网络报文(空中丢包)。 wifi模块没有发送网络报文成功(空中丢包)。 主控与wifi数据传输丢掉报文(SDIO传输丢包)。 在设备端如果通过串口打印查看丢包现象是非常麻烦的,网络报文很多,而且无法辨别是否丢包。 通过wireshark抓网络包,虽然可以清晰查看报文,但是无法判别wifi有没
举个栗子: 电话会议通话中,此时通话突然异常中断。查看日志后发现没有收到心跳response回应,那么此时就需要抓包,来确认对方设备是否发送了response信息,从而来确定问题根源。
监控io性能: iostat -x 百分比监控磁盘负载 iotop 如果没有这个命令 可以 yum install -y iotop 安装 iotop 查看 io 的性能使用 主要关注 io 的百分之
今天要分享的这个项目,可以通过docker上运行一个win11.有点强。作者的github项目地址如下:https://github.com/dockur/windows 目前已经拥有5.6k star
WebAssembly(Wasm)是一种通用字节码技术,它可以将其他编程语言(如 Go、Rust、C/C++ 等)的程序代码编译为可在浏览器环境直接执行的字节码程序。
说明: util%:表示io等待占比,正常情况下该值和磁盘读写(r/w)成正比,如果该值很大,读写数值很小则说明磁盘存在问题,系统性能会受影响!
乌鸦安全的技术文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。
简介 网络数据包截获分析工具。支持针对网络层、协议、主机、网络或端口的过滤。并提供and、or、not等逻辑语句帮助去除无用的信息。 tcpdump - dump traffic on a network 例子 不指定任何参数 监听第一块网卡上经过的数据包。主机上可能有不止一块网卡,所以经常需要指定网卡。 tcpdump 监听特定网卡 tcpdump -i en0 监听特定主机 例子:监听本机跟主机182.254.38.55之间往来的通信包。 备注:出、入的包都会被监听。 tcpdump
10.6 监控io性能 监控系统状态 iostat -x 磁盘使用 iotop 磁盘使用 查看磁盘使用情况 在运维工作中,除了查看CPU和内存之外,磁盘的io也是非常重要的一个指标 有时候,CPU和内存有内存,但系统负载就是很高,我们用vmstat命令查看到 b 列或者是 wa 列 较大,这时候就说明磁盘有瓶颈,那么我们就需要更详细的查看磁盘的状态 iostat命令 iostat命令,在查看系统输入输出设备和CPU的使用情况 在安装 sysstat 这个包的时候,就会安装上iostat命令 iosta
声明:此文章仅供研究学习和技术交流,请勿用于破解他人 WIFI 密码!如果你有这些时间和精力,完全可以新买一坨无线路由器,何必蹭别人家的无线网!!!! 前言 网上类似的教程不少,但是大部分都是没讲完整,或者搭建一个足够简单的环境,使用类似123456这样的简单密码,导致的结果是,看教程感觉很容易很顺利,可实际操作起来才发现困难重重。 经常听说,WIFI 密码要设置复杂一些,可是复杂的密码使用时很不方便,最重要的是,复杂密码就能保证自己的 WIFI 绝对安全吗?为了消除这些疑虑,我决定亲自尝试一下。 我对无线
CVE-2022-0185是一个Linux内核中"Filesystem Context"中的一个堆溢出漏洞,攻击者可以利用该漏洞发起DDoS攻击,实现容器逃逸和提升至主机权限。该漏洞是在Google KCTF(基于Kubernetes的CTF)漏洞赏金计划中被Crusaders of Rust[1]团队的成员Jamie Hill-Daniel和William Liu发现[2]的,研究员因此获得了31337美元的奖励。NVD官网[3]最新数据显示,该漏洞CVSS3.x的评分为8.4。
1. 如何看当前Linux系统有几颗物理CPU和每颗CPU的核数? 物理cpu个数:cat /proc/cpuinfo |grep -c ‘physical id’ CPU一共有多少核:grep -c processor /proc/cpuinfo 将CPU的总核数除以物理CPU的个数,得到每颗CPU的核数。 2. 查看系统负载有两个常用的命令,是哪两个?这三个数值表示什么含义呢? 两个命令分别是 w 和 uptime 这三个系统负载值分别表示在1分钟、5分钟和15分钟内平均有多少个任务处于活动状
无论是开发还是测试,在工作中经常会遇到需要抓包的时候。本篇博客主要介绍如何在各个平台下,高效的抓包。目前的抓包软件总体可以分为两类,一种是设置代理抓取http包,比如Charles、mitmproxy这些软件。
下图是个普通的web架构图,weatherservice是个服务端应用,收到来自浏览器的请求后,会向网站wthrcdn.etouch.cn发起请求,并将响应的数据返回给浏览器:
领取专属 10元无门槛券
手把手带您无忧上云