linux提权

#linux提权
###查找有权限的文件
#####查找权限是777的文件
find / -type f -perm 777 2>/dev/null
效果图:

#####查找用户为特定用户这里是root
find / -type f -user root -perm -4000 2>/dev/null
效果图:

#####查找执行权限为s的文件
find / -type f -perm -u=s 2>/dev/null
效果图:

#####查找可写入文件且可指定用户,这里是root
find / -writeable -type f 2>/dev/null | grep -v "/proc " |xargs ls -la | grep root
效果图:

###系统内核提权
#####使用kali的漏洞库的poc提权
例子:
当linux内核为3.10时可以用37292.c尽心提权
流程:





至此提权成功
###利用sudo提权
注:当sudo配置不当才会导致sudo提权,当sudo -l中的All=NOPASSWD ???中有这些就可以使用了
#####find提权
find有个exec选项可执行命令
例:

要利用find拥有root的shell的话可以使用os模块的execl来实现
#####nmap提权
nmap的–srcipt选项可以使用nes脚本把提权脚本放到nmap安装目录下的scripts文件夹下即可使用
linux默认安装路径为/usr/share/nmap/
例:
使用的脚本内容:


#####vi和vim的命令执行
例子:

执行了sudo vim后执行

注:less,man,more都是如此
vim和vi都在末行模式时加:!就可以执行命令了vi提权过程一样
vi有时进入不了末行模式可以使用Shift+!+!就可以了
#####git提权
这是利用git help config进入向vim和vi的窗口即可执行命令

这里就只要一个!即可执行命令

#####gdb提权
gdb可以使用python的命令在使用python的代码时前面加上python代码块以;分割代码

###利用suid提权
suid提权是在用户没有sudo权限时使用的,suid提权可以原理为当一个程序可直接或者间接执行命令时,获取到root权限,利用suid提权的前提是,这个二进制程序有s权限。
这里可以用上面提到的find命令来查找
find / -type f -perm -u=s 2>/dev/null
当find命令查找到sudo提权中的所有都可以直接执行
suid执行命令时,与sudo不一样的是他不能直接获取shell
以find为例:

python的os模块中的execl可以替换执行的主体将find替换为root的sh
小实验:
现在gdb的pid是2550



在执行python的execl函数后pid为2550的gdb替换为了sh
从而实现了权限的交换,而system没有继承程序的权限而是使用的是用户的权限没有进行替换,以下可以证明。
gdb的进程id是5768,而没有开启有关与sh的进程

在执行了os.system(‘sh -p’)后增加了两个关于sh的进程,而gdb的进程受到影响

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值