内网学习第6天 liunx定时任务 环境变量和权限配置,以及数据库提权

内网学习的第5天呢??我就没有写,那个主要就是利用内核漏洞以及suid,来进行提权的。

我在虚拟机上面进行提权,我没有成功,我本地的虚拟机呢,扫出来的漏洞poc也没有让我提权成功。所以我就没有写。现在我们来写写今天的提权操作。

环境变量的提权:

在liunx中,管理员编译了程序,给管理运行的方案,这点我们攻击者就可以进行环境变量的提权。

攻击者在发现了这个程序过后,通过看它的运行结果或者反编译得到了源码进行判断。然后对环境变量进行覆盖,导致程序加载过后权限的继承。

简单点来说就是让程序找不到原来的环境变量的位置,它就会在当前的目录找相同命令的程序进行执行。

下面来演示:

12.c里面的程序源码是这样的:很简单的执行ps命令

#include<unistd.h>
void main()
{ setuid(0);
  setgid(0);
  system("ps");
}

我们进行了编译过后赋予它权限这点我出错了的,我们在要root权限进行操作,我后面就没有截图了,程序是会继承权限的,如果我们是user用户对它进行编译就会继承user用户。

然后这点我们是复制的/bin/bash 为/tmp/ps bash是命令框的形式 变为了ps

然后我们在设置环境变量 这点输多了所以有2个不影响操作

然后我们在进行执行的操作执行shell文件

没有环境变量就找当前目录对应程序名 有环境变量就找环境调用
原始:ps命令
由于环境变量加了tmp 执行ps执行/tmp/psps又是通过bash复制的 就是bash

shell执行bash suid执行bash 就是直接提权

怎么找到这类问题

我们先看所以的suid的程序,然后在进行判断找到第三方的程序

看看这个程序里面执行了什么,我们就反编译或者看运行的结果是什么来猜测,然后我们思考有没有我们的环境变量命令ps su ifconfig等等 然后就进行环境变量覆盖

计划任务的提权

运维人员会定期的保存数据会使用war命令 对参数可控

他会这样来写 tar czf /var/www/打包.tar *

说简单一点就是我们对命令的参数可以控可以执行命令
echo "/bin/bash" > shell.sh

echo "" > "--checkpoint-action=exec=sh shell.sh"

echo "" > --checkpoint=1

tar czf a.tar * 这个是在进行打包文件 *打包所以的文件 a.tar打包文件的名字

我们主要是利用的--checkpoint这个参数来进行从提权

我们在执行tar这个命令的时候就会执行我们后面的参数来进行操作,我们也就是可以提权成功了

tar czf a.tar * --checkpoint=1 --checkpoint-action=exec=sh shell.sh

怎么找到这类问题

我们怎么查看就是看定时任务里面使用的命令我们可以进行利用没有

利用也就是说可以加参数来执行其他的命令来进行操作 也就是这里的tar命令

定时任务权限配置不当

这个就是管理员在配置计时任务的时候权限没有控制好,也就是任意的人都可以编辑计时任务

主要我们普通的用户都可以编辑计时任务,我们写一个反弹shehll进去,这样就可以获取管理员的权限。

数据库提权:

windows我写过mysql提权 liunx的数据库提权其实跟windows的差不多

多了点我们要进行编译的操作,然后windows是dll文件 liunx是.so文件

然后我们使用工具来帮助我们直接获取到提权。
MDUT这个工具可以sharpsqltools这个也行

我们在进行连接的时候,mysql不是要开启外联吗,我们开启过后我们还是连接不到数据库。

说明我们不能连接内网的数据库,这个时候我们想应该是被安全设备阻止了,我们就可以让mysql数据库来连接我们,我们就要建立隧道,我们使用冰蝎来建立最简单了。

等我后面学好了建立隧道我会在写相关的博客来记录。现在只会最简单的。

相关推荐
云端奇趣18 分钟前
探索 3 个有趣的 GitHub 学习资源库
经验分享·git·学习·github
我感觉。24 分钟前
【信号与系统第五章】13、希尔伯特变换
学习·dsp开发
知识分享小能手40 分钟前
mysql学习教程,从入门到精通,SQL 修改表(ALTER TABLE 语句)(29)
大数据·开发语言·数据库·sql·学习·mysql·数据分析
冰榫1 小时前
9.30学习记录(补)
学习
霸王蟹1 小时前
Vue3 项目中为啥不需要根标签了?
前端·javascript·vue.js·笔记·学习
向上的车轮2 小时前
Django学习笔记八:发布RESTful API
笔记·学习·django
向上的车轮2 小时前
Django学习笔记九:RESTAPI添加用户认证和授权
笔记·学习·django
落雨便归尘3 小时前
c++进阶篇——初窥多线程(四) 线程同步的概念以及锁
c++·笔记·学习
cdut_suye3 小时前
STL之list篇(下)(从底层分析实现list容器,逐步剥开list的外表)
开发语言·数据结构·c++·学习·算法·stl·list