SUID提权教程

news2024/11/20 2:27:34

SUID提权方法

  • 一、SUID是什么?
  • 二、如何设置SUID权限?
  • 三、已知的具有SUID权限的二进制可执行文件
  • 四、查找具有root权限的SUID的文件
    • 1.find命令提权
    • 2.nmap命令提权
    • 3.more命令提权
    • 4.less命令提权
    • 5.bash命令提权
    • 6.vim命令提权
    • 7.awk命令提权
    • 8.cp命令提权
  • 五、/bin/bash和 /bin/sh的区别

一、SUID是什么?

SUID是Linux的一种权限机制,具有这种权限的文件会在其执行时,使调用者暂时获得该文件拥有者的权限。如果拥有SUID权限,那么就可以利用系统中的二进制文件和工具来进行root提权

二、如何设置SUID权限?

示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。

三、已知的具有SUID权限的二进制可执行文件

nmap
vim
find
bash
more
less
awk
cp

四、查找具有root权限的SUID的文件

1.find命令提权

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.nmap命令提权

在这里插入图片描述
在这里插入图片描述

3.more命令提权

在这里插入图片描述
在这里插入图片描述

4.less命令提权

在这里插入图片描述
在这里插入图片描述

5.bash命令提权

  • 通过使用"bash -p"命令,您将以特权身份运行Bash解释器,并且可以执行需要特权访问权限的操作。这包括修改系统文件、安装软件包或执行其他可能需要管理员权限的任务。
  • 实际上,“-p"是一个通用的Bash参数,代表开启"privileged mode(特权模式)”,这意味着以root用户或具有管理员权限的用户身份来执行Bash命令

在这里插入图片描述

6.vim命令提权

在这里插入图片描述

  • :!/bin/sh
  • :!/bin/bash 两个都试试
  • 输入vim或者vim.tiny
    在这里插入图片描述

7.awk命令提权

在这里插入图片描述

8.cp命令提权

在这里插入图片描述
在这里插入图片描述

五、/bin/bash和 /bin/sh的区别

在大多数Linux系统中,/bin/bash和 /bin/sh是两个不同的可执行文件,分别表示Bash和Shell。它们之间的区别在于以下几点:


解释器:/bin/bash是Bourne Again Shell(Bash)的路径,而 /bin/sh是系统默认的Shell解释器的路径(可能是Bash,也可能是其他Shell)。

功能和语法:Bash是Shell的一种变体,它扩展了传统的Shell功能,并提供了更多的命令和语法。因此,Bash相对于其他Shell来说更加强大、灵活,并支持更多的功能。

兼容性:由于Bash在功能和语法上更强大,一些脚本可能会使用Bash特定的语法或功能。然而,/bin/sh通常被链接到一个较小,更原始的Shell,以确保脚本的兼容性。

符号链接:在一些Linux系统中,/bin/sh实际上是一个指向 /bin/bash的符号链接。这意味着 /bin/sh实际上是Bash的另一个名称,它们在功能上没有区别。在这种情况下,/bin/sh和 /bin/bash是等价的。
总的来说,/bin/bash是Bash解释器的路径,功能更强大,而 /bin/sh是系统默认的Shell解释器的路径,可能是Bash或其他Shell,并且在功能和语法上可能更有限。

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

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

相关文章

【如何学习Python自动化测试】—— 页面元素定位

接上篇自动化测试环境搭建,现在我们介绍 webdriver 对浏览器操作的 API。 2、 页面元素定位 通过自动化操作 web 页面,首先要解决的问题就是定位到要操作的对象,比如要模拟用户在页面上的输入框中输入一段字符串,那就必须得定位到…

UiPath Studio 2023.10 Crack

UiPath Studio是一款功能强大且用户友好的集成开发环境 (IDE),专为机器人流程自动化 (RPA) 设计。它由自动化技术领域的领先公司UiPath开发。 以下是 UiPath Studio 的一些主要功能和组件: 图形用户界面 (GUI):UiPath Studio 具有直观且用户友…

sqli-labs关卡18(基于http头部报错盲注)通关思路

文章目录 前言一、靶场通关需要了解的知识点1、什么是http请求头2、为什么http头部可以进行注入 二、靶场第十八关通关思路1、判断注入点2、爆数据库名3、爆数据库表4、爆数据库列5、爆数据库关键信息 总结 前言 此文章只用于学习和反思巩固sql注入知识,禁止用于做…

【数据预处理3】数据预处理 - 归一化和标准化

处理数据之前,通常会使用一些转换函数将「特征数据」转换成更适合「算法模型」的特征数据。这个过程,也叫数据预处理。 比如,我们在择偶时,有身高、体重、存款三个特征,身高是180、体重是180、存款是180000&#xff1…

算法 LeetCode 题解 | 最小栈

大家好,我是木川 一、题目描述 请你设计一个 最小栈 。它提供 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。 实现 MinStack 类: MinStack() 初始化堆栈对象。void push(int val) 将元素val推入堆栈。void pop() 删除…

【Proteus仿真】【STM32单片机】公交车报站系统

文章目录 一、功能简介二、软件设计三、实验现象联系作者 一、功能简介 本项目使用Proteus8仿真STM32单片机控制器,使用LCD12864显示模块、DS18B20温度传感器、DS1302时钟模块、按键、LED蜂鸣器、ULN2003、28BYJ48步进电机模块等。 主要功能: 系统运行…

vulhub redis-4-unacc

环境搭建 cd vulhub/redis/4-unacc docker-compose up -d 漏洞复现 检测 redis-cli -h ip 使用redis工具 工具地址:https://github.com/vulhub/redis-rogue-getshell 下载完成后,先进入RedisModulesSDK/exp/ 目录进行make操作 获得exp.so后可以进行…

Linux shell编程学习笔记26:stty(set tty)

之前我们探讨了Linux中的tty,tty命令的主要功能是显示当前使用的终端名称。 如果我们想进一步对tty进行设置,就要用到stty。 stty的功能:显示和修改终端特性(Print or change terminal characteristics)。 1 stty -…

【数据预处理2】数据预处理——数据标准化

数据标准化 1. 什么是标准化?   数据标准化是一个常用的数据预处理操作,目的是将不同规格的数据转换到统一规格或不同分布的数据转换到某个特定范围,以减少规模、特征、分布差异等对模型的影响。这种操作也叫作无量纲化。   除了用作模型…

【Dynamic-datasource】Springboot多数据源整合

引入依赖&#xff1a; <dependency><groupId>com.baomidou</groupId><artifactId>dynamic-datasource-spring-boot-starter</artifactId><version>3.5.0</version> </dependency> 整体pom文件&#xff1a; <?xml versi…

SpringBoot 整合 Freemarker

通过 Freemarker 模版&#xff0c;我们可以将数据渲染成 HTML 网页、电子邮件、配置文件以及源代码等。 Freemarker 不是面向最终用户的&#xff0c;而是一个 Java 类库&#xff0c;我们可以将之作为一个普通的组件嵌入到我们的产品中。 Freemarker 模版后缀为 .ftl(FreeMarke…

【音视频基础】AVI文件格式

AVI文件采用的是RIFF文件结构方式。波形音频wave&#xff0c;MIDI和数字视频AVI都采用这种格式存储。 AVI文件的整体结构如下图所示 构造RIFF文件的基本单元叫做数据块&#xff08;Chunk&#xff09;&#xff0c;每个数据块包含3个部分 4字节的数据块标记&#xff08;或者叫…

2023-11-18 Android Linux资源限制命令 ulimit,比如ulimit -d 是设置进程占用的最大数据段大小,默认是unlimited。

一、通过ulimit -a 命令可以查看当前的各种资源限制&#xff0c;比如ulimit -d 是 进程占用的最大数据段大小。 # ulimit -a -t: time(cpu-seconds) unlimited -f: file(blocks) unlimited -c: coredump(blocks) 0 -d: data(KiB) unlimited -s:…

学习.NET验证模块FluentValidation的基本用法

开源博客项目Blog .NET中使用FluentValidation验证部分对象实例的属性值&#xff0c;本文学习FluentValidation模块的基本用法&#xff0c;后续再学习Blog .NET项目FluentValidation模块的用法。   FluentValidation模块支持Linq 表达式&#xff0c;同时支持链式操作&#xf…

【Linux】进程间通信 -- 共享内存

共享内存 共享内存是SystemV标准进程间通信的一种&#xff0c;该标准还有消息队列和信号量&#xff0c;但下文主要介绍共享内存&#xff0c;然后在谈一下信号量的内容。SystemV标准的进程间通信可以看做单机版的进程间通信。 // 1. log.hpp #pragma once#include <iostrea…

100张照片带你了解真实的日本人

欢迎关注「苏南下」 在这里分享我的旅行和影像创作心得 今年三个月内去了两次日本旅行&#xff0c;到了东京、横滨、大阪、京都、奈良、富士山、神户、富士山等城市&#xff0c;途中一共拍下了10000张照片。 最近整理照片的过程中&#xff0c;发现也拍了许多有意思的人像照&…

〖大前端 - 基础入门三大核心之JS篇㊲〗- DOM改变元素节点的css样式、HTML属性

说明&#xff1a;该文属于 大前端全栈架构白宝书专栏&#xff0c;目前阶段免费&#xff0c;如需要项目实战或者是体系化资源&#xff0c;文末名片加V&#xff01;作者&#xff1a;不渴望力量的哈士奇(哈哥)&#xff0c;十余年工作经验, 从事过全栈研发、产品经理等工作&#xf…

应用场景丨迭代市政综合管廊监测系统建设

市政综合管廊是指在城市地下建造的隧道空间&#xff0c;将市政、电力、通讯、燃气、给排水等各种管线集于一体&#xff0c;实施统一规划、设计、建设和管理。综合管廊有利于解决反复开挖路面、架空线网密集、管线事故频发等问题&#xff0c;是保障城市运行的重要基础设施和“生…

Ubuntu 22.04安装Rust编译环境并且测试

我参考的博客是《Rust使用国内Crates 源、 rustup源 |字节跳动新的 Rust 镜像源以及安装rust》 lsb_release -r看到操作系统版本是22.04,uname -r看到内核版本是uname -r。 sudo apt install -y gcc先安装gcc&#xff0c;要是结果给我的一样的话&#xff0c;那么就是安装好了…

ElasticSearch快速入门

一、全文检索 1、什么是全文检索 全文索引是一种通过对文本内容进行全面索引和搜索的技术。它可以快速的在大量文本数据中查找包含特定关键词或短语的文档&#xff0c;并返回相关的搜索结果。 全文检索广泛应用于各种信息管理系统和应用中&#xff0c;如搜索引擎、文档管理系…