Linux最新提权通杀五大绝招(上)


点击星标,
即时接收最新推文

fedcba866bf2a9fd3f9da00b9d9adb5c.png

本文选自《内网安全攻防:红队之路》

扫描二维码五折购书

 

Linux 主机权限提升问题是普遍存在的。在Web 服务器、数据库、防火墙、IOT等基础设施中,大部分都运行着Linux 操作系统,鉴于Linux 设备在大量基础设施中的数量,组织加强和保护这些设备至关重要。在内网中,渗透测试人员也将遇到大量的Linux系统。

内核漏洞提权

通过linux-exploit-suggester排查内核漏洞提权

SUDO提权 

SUID提权

GTFOBins与权限提升

内核漏洞提权

内核权限提升指的是通过利用许多内核交互的内核入口函数中的弱点来获取这些权限的过程。用户从文件系统读取、打开设备文件、发出系统调用或通过网络接口发送数据包等操作都需要与内核进行交互。

内核漏洞利用是利用内核漏洞以提升权限执行任意代码的程序。成功的内核漏洞利用通常会以 root 命令提示符的形式为攻击者提供超级用户访问目标系统的权限。在许多情况下,在一个老旧的 Linux 系统上利用内核漏洞进行权限提升是比较简单的。

完成一个内核漏洞利用往往需要条件:
*易受攻击的内核。
*匹配的漏洞利用程序。
*将利用载荷上传到目标的能力
*在目标上执行利用载荷的能力

通过linux-exploit-suggester排查内核漏洞  

linux-exploit-suggester是Z-Labs发布的一款提权审计工具,下载地址见https://github.com/mzet-/linux-exploit-suggester,该工具通过对比Linux公开已知的内核漏洞,列出可能存在的漏洞。linux-exploit-suggester主要用于评估当前主机内核漏洞情况以及评估某个特定内核版本漏洞情况。

在目标Linux上,使用 uname -a 获取当前系统的版本情况,如图所示。

a44dab7874f66cfa98283fad65889b53.png

系统版本情况

通过wget下载linux-exploit-suggester,然后使用如下命令添加执行权限,结果如图所示。

wget       https://raw.githubusercontent.com/mzet-/linux-exploit-suggester/ master/linux-exploit-suggester.sh -O les.sh
chmod +x les.sh

d840d0721170dc1c4f81d5d7f1968c95.png

下载linux-exploit-suggester脚本

执行如下命令,linux-exploit-suggester会输出该 Linux 内核在已知漏洞中的暴露情况,如图所示。

./les.sh -u "Linux linux 5.10.25-linuxkit #1 SMP Tue Mar 23 09:27:39 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux"

057c184bb16d7cb543f318497294521f.png

系统版本匹配内核漏洞

在实际网络环境中,也可以在目标Linux系统中运行linux-exploit-suggester,工具将输出当前环境下可能存在的内核提权漏洞,并且输出相应的漏洞细节。首先需要使用以下命令将linux-exploit-suggester下载到目标环境,然后添加执行权限,执行les.sh,可以获得当然环境下的内核漏洞信息,如图所示。   

2f7422efe60781d44ac74a39a4780300.png

实际环境匹配内核漏洞

通过以上提权信息,攻击者可以进一步利用内核漏洞达到提权的目的。同时也可以作为漏洞检查工具,对Linux主机存在的内核漏洞进行排查。

SUDO提权  

Sudo是 常见的Linux系统管理指令,是允许系统管理员让普通用户执行如cat reboot su等命令或者全部的root命令的一个工具。

在权限提升中,如果攻击者无法直接获得 root 访问权限,他可能会尝试查找任何具有 SUDO 访问权限的用户。当攻击者可以访问任何 sudo 用户,便可以使用已经配置了SUDO的特定二进制文件。管理员可能只允许普通用户通过 SUDO 运行部分命令而不是所有命令,但是即使如此,也存在安全隐患,导致这些特定命令存在权限提升问题。

通过以下命令可以列出sudo的权限,从而获得允许低权限用户sudo的二进制文件。

sudo -l

如图所示,可以看出主机sudo配置了二进制文件/bin/find。Find命令是一个比较典型的案例,当find分配了sudo权限时,攻击者可以利用find来执行任意root命令,达到提权的目的。   

11ffa2db0446549cf5a424537d5ffa4e.png

查看sudo

接下来通过如下命令,可以利用find提升到root权限,如图所示。

sudo find /tmp -exec sh -i \;

69c791f5d66658323ad62442c4f68f29.png

通过find提权

—  实验室旗下直播培训课程  —

3bd01d85bb6f1c333f4a011973c76b03.png

2937f0afdf6cc1d17f965c642eb02496.jpeg

43197b48c0a7911551a5ba924e10dc28.jpeg852d1b012098963733d7a428db41a136.png

60f5ba333644de2af35e1971c0301f3f.png

58920f845c67103967fdbcbbb7146f68.jpeg

f4f4e682d8d878aaa4c3226fc8f2aee5.jpeg

779e2c02d04e5eacb5a7a8ffbe64fb1e.jpeg

5fd7274772dedec20041c3864e453e49.png

和20000+位同学加入MS08067一起学习

f10f64dc684632f16e88781ab4b43c94.gif

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3018401.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

鸿蒙OS NEXT的推出,不仅面向App端

华为官方公布6月份的版本为beta版,依然属于开发者测试版,但可以向普通用户开放了。这点和苹果iOS系统测试形式略微相似:6月份开放首个测试版,随后过渡到公测版,最后再和年度新机一起发布正式版系统。 如果按照这个进度…

git bash退出vim编译模式

解决方法: 1.按esc键(回到命令模式) 此时是没有分号让我们在后面输入命令的 2.按shift键: 3.再输入:wq,并按enter键 此时我们发现又回到git bash窗口 希望对大家有所帮助!

flutter开发实战-GetX响应式状态管理使用

flutter开发实战-GetX响应式状态管理使用 GetX是一个简单的响应式状态管理解决方案。GetX是Flutter的一款超轻、功能强大的解决方案。它将高性能状态管理、智能依赖注入和路由管理快速而实用地结合在一起。这里简单使用一下GetX 一、引入GetX 在工程的pubspec.yaml中引入插件…

第十四届蓝桥杯大赛软件赛省赛(Python大学A组)

2023年蓝桥杯 省赛真题Python大学A组 试题A:特殊日期 试题B:分糖果 试题C:三国游戏 试题D:平均 试题E:翻转 试题F:子矩阵 试题G:阶乘的和 …

微软 AI 研究团队推出 SIGMA:一个开源研究平台,旨在推动混合现实与人工智能交叉领域的研究与创新

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

在Linux上使用Selenium驱动Chrome浏览器无头模式

大家好,我们平时在做UI自动化测试的时候,经常会用到Chrome浏览器的无头模式(无界面模式),并且将测试代码部署到Linux系统中执行,或者平时我们写个爬虫爬取网站的数据也会使用到,接下来和大家分享…

KT148A语音芯片串口版本播放音乐的时候,直接导致单片机工作异常

一、问题描述 在使用你们KT148A串口版本播放音乐的时候,直接导致单片机工作异常,测了一下供电发现每次播放音乐的时候,供电会有很大波动。看了一下你们的手册,说是带载能力不够,但是我把供电接出来,接到你…

项目经理【人】任务

系列文章目录 【引论一】项目管理的意义 【引论二】项目管理的逻辑 【环境】概述 【环境】原则 【环境】任务 【环境】绩效 【人】概述 【人】原则 【人】任务 一、定义团队的基本规则&塔克曼阶梯理论 1.1 定义团队的基本规则 1.2 塔克曼阶梯理论 二、项目经理管理风格 …

蓝桥杯单片机之模块代码《AT24C02》

过往历程 历程1:秒表 历程2:按键显示时钟 历程3:列矩阵按键显示时钟 历程4:行矩阵按键显示时钟 历程5:新DS1302 历程6:小数点精确后两位ds18b20 历程7:35定时器测量频率 文章目录 过往历…

CSS引用

CSS定义 层叠样式表:(Cascading Style Sheets,缩写为css),是一种样式表语言,用来描述HTML文档的呈现(美化内容) 书写位置:title标签下方添加style双标签,style标签里写入CSS代码 在s…

【1小时掌握速通深度学习面试11】元学习

目录 ​编辑 52.元学习适合哪些学习场景?可解决什么样的学习问题? 55.元学习与有监督学习/强化学习具体有哪些区别? 1、迁移学习(Transfer Learning) 2、元学习(Meta Learning) 3、小样本学习(Few-Shot Learning&#xf…

YOLOv8的训练、验证、预测及导出[目标检测实践篇]

这一部分内容主要介绍如何使用YOLOv8训练自己的数据集,并进行验证、预测及导出,采用代码和指令的两种方式,参考自官方文档:Detect - Ultralytics YOLOv8 Docs。实践篇不需要关注原理,只需要把流程跑通就行,…

24年审计师报名时间汇总所需材料提前准备

2024审计师报名本周开始(5月10日起),各地报名时间不一,报名指南整理好了! ✅全国报名时间汇总报名费用资格审核:P1~P2。 ✅2024年审计师考试科目: 《审计相关基础知识》和《审计理论与实务》 ✅…

json-server的安装和使用

json-server介绍 json-server是可以把本地当做服务器,然后axios向本地区发送请求,并且不会出现跨域的问题,若是等不及后端数据,可以用这个模拟假数据 json-server安装及使用 【json-server网址】https://www.npmjs.com/package/…

Stack数据结构设计模板

第三章 栈、队列、数组 1.栈 1.1 顺序栈 #define MaxSize 20 typedef int ElemType; //顺序栈的定义 typedef struct {ElemType data[MaxSize];int top; }SqStack; // 初始化顺序栈 void InitSqStack(SqStack &S){S.top -1; }; // 入栈(增) bool Push(SqStack &S,El…

UTONMOS:真正的“游戏元宇宙”还有多遥远?

元宇宙来源于科幻小说的概念,已成为真实世界中的流行语。围绕这一新兴概念,一场产、学、研的实践正在展开。 数字化转型中,元宇宙能否担当大任?这些新概念在中国语境下如何落地?本文将深入挖掘国内元宇宙游戏产业的发…

分布式架构|打造高效、稳定、灵活的现代IT基石

分布式架构:打造高效、稳定、灵活的现代IT基石 一、独立扩展:应对业务增长与用户激增二、高可用性:确保系统稳定运行三、可维护性:降低系统复杂性四、技术选型灵活性:充分利用各种技术优势五、数据隔离与安全性 随着信…

给网站网页PHP页面设置密码访问代码

将MkEncrypt.php文件上传至你网站根目录下或者同级目录下。 MkEncrypt.php里面添加代码,再将调用代码添加到你需要加密的页进行调用 MkEncrypt(‘123456’);括号里面123456修改成你需要设置的密码。 密码正确才能进去页面,进入后会存下cookies值&…

鸿蒙开发核心技术都有哪些【都是从零开始】

鸿蒙开发核心技术都有哪些?:【持续1年的时间公关鸿蒙技术】 我们能做哪些呢? 还是从UI业务开始吧 面试题1: 基于STAGE模型项目重构等问题 代理设计模式,业务与架构隔离 中介者模式,和代理设计模式的区别…

解决Gitlab集成Jira时报SSL证书问题

1. 问题描述 在gitlab中集成jira的时候,由于jira是企业内部网址,并使用自己签名的SSL证书,一直会报证书验证不过的问题,报错信息如下: Connection failed. Check your integration settings. SSL_connect returned1 …