powershell渗透-信息收集命令

本文包含从 Internet 的各个角落收集的 PowerShell 命令列表,这些命令在渗透测试或红色团队练习期间可能会有所帮助。

该列表包括各种开发后的单行在纯 PowerShell 不需要任何攻击 (= 可能标记为恶意) 第三方模块, 但也一堆方便的管理命令.

我们开始吧!

目录

隐藏

• 查找包含敏感信息的文件

o 查找可能感兴趣的文件

o 在 Sysprep 或未处理文件中查找凭据

o 查找包含"密码"字符串的配置文件

o 在配置文件中查找数据库凭据

o 查找 Web 服务器配置文件

• 提取凭据

o 从 Windows 密码 Vault 获取存储的密码

o 从 Windows 凭据管理器获取存储的密码

o 从谷歌浏览器转储密码

o 从无线配置文件获取存储的 Wi-Fi 密码

o 在注册表中搜索 SNMP 社区字符串

o 在注册表中搜索字符串模式

• 权限升级

o 搜索自动登录凭据的注册表

o 检查是否启用了"始终安装提升"

o 查找未引用的服务路径

o 检查 Lsass Wdigest 缓存

o SYSVOL 和组策略首选项 (GPP) 中的凭据

• 网络相关命令

o 从命令行设置 MAC 地址

o 允许远程桌面连接

o 使用大容量 DNS 反向查找的主机发现

o 端口扫描主机以寻找有趣的端口

o 端口扫描单个端口的网络(端口扫描)

o 创建来宾 SMB 共享驱动器

o 在 Windows 防火墙中白列出 IP 地址

• 其他有用的命令

o 无文件下载和执行

o 获取当前用户的 SID

o 检查我们运行是否具有提升(管理员)权限

o 禁用 PowerShell 命令日志记录

o 列出已安装的防病毒 (AV) 产品

• 结论

查找包含敏感信息的文件

在开发后阶段,以下 PowerShell 命令可以很方便地查找磁盘上可能包含凭据、配置详细信息和其他敏感信息的文件。

查找可能感兴趣的文件

通过此命令,我们可以根据文件名识别具有潜在敏感数据的文件,如帐户信息、凭据、配置文件等:

gci c:\ -Include pass.txt,pass.xml,pass.ini,pass.xlsx,cred,vnc,.config,accounts -File -Recurse -EA SilentlyContinue

虽然这会产生很多噪音,但也会产生一些非常有趣的结果。

建议对每个磁盘驱动器进行此操作,但您也可以在 c:\用户文件夹上运行它,以便获得一些快速获胜。

在 Sysprep 或未处理文件中查找凭据

此命令将查找自动安装和自动配置的残余,这些残余可能包含纯文本密码或 base64 编码密码:

gci c:\ -Include sysprep.inf,sysprep.xml,sysprep.txt,unattended.xml,unattend.xml,unattend.txt -File -Recurse -EA SilentlyContinue

这是众所周知的特权升级技术之一,因为密码通常是本地管理员密码。

建议对每个磁盘驱动器进行此设置。

查找包含"密码"字符串的配置文件

通过此命令,我们可以找到包含特定模式的文件,例如,这里正在寻找各种文本配置文件中的"密码"模式:

gci c:\ -Include .txt,.xml,.config,.conf,.cfg,.ini -File -Recurse -EA SilentlyContinue | Select-String -Pattern "password"

虽然这会产生很多噪音,但也会产生一些有趣的结果。

建议对每个磁盘驱动器进行此设置。

在配置文件中查找数据库凭据

使用以下 PowerShell 命令,我们可以在各种配置文件(如 Web.config)中查找存储在各种配置文件中的数据库连接字符串(具有纯文本凭据),ASP.NET在 Visual Studio 项目文件中等:

gci c:\ -Include .config,.conf,*.xml -File -Recurse -EA SilentlyContinue | Select-String -Pattern "connectionString"

查找连接字符串,例如对于远程 Microsoft SQL Server,可能会导致远程命令执行 (RCE) 使用 xp_cmdshell 功能(链接、链接、链接等)以及随后的横向移动。

查找 Web 服务器配置文件

通过此命令,我们可以轻松地找到属于 Microsoft IIS、XAMPP、Apache、PHP 或 MySQL 安装的配置文件:

gci c:\ -Include web.config,applicationHost.config,php.ini,httpd.conf,httpd-xampp.conf,my.ini,my.cnf -File -Recurse -EA SilentlyContinue

这些文件可能包含纯文本密码或其他有趣的信息,可以允许访问其他资源,如数据库,管理接口等。

提取凭据

以下 PowerShell 命令也属于开发后类别,它们可用于在访问 Windows 系统后提取凭据。

从 Windows 密码 Vault 获取存储的密码

使用以下 PowerShell 命令,我们可以从 Windows PasswordVault中提取机密,这是一种用于存储密码和 Web 凭据的 Windows 内置机制,例如用于 Internet 资源管理器、边缘和其他应用程序:

[Windows.Security.Credentials.PasswordVault,Windows.Security.Credentials,ContentType=WindowsRuntime];(New-Object Windows.Security.Credentials.PasswordVault).RetrieveAll() | % { $.RetrievePassword();$ }

请注意,保管库通常存储在以下位置,并且只能在当前记录的用户的上下文中检索机密:

• C:\Users<USERNAME>\AppData\Local\Microsoft\Vault

• C:\Windows\system32\config\systemprofile\AppData\Local\Microsoft\Vault

• C:\ProgramData\Microsoft\Vault

有关 Windows 密码 Vault 的更多信息,请参阅此处。

从 Windows 凭据管理器获取存储的密码

Windows 凭据管理器提供了另一种用于存储凭据以登录到网站、登录到远程系统和各种应用程序的机制,它还提供了在 PowerShell 脚本中使用凭据的安全方法。

使用以下单行,我们可以使用凭据管理器从凭据管理器检索所有存储的凭据:

Get-StoredCredential | % { write-host -NoNewLine $.username; write-host -NoNewLine ":" ; $p = [System.Runtime.InteropServices.Marshal]::SecureStringToBSTR($.password) ; [System.Runtime.InteropServices.Marshal]::PtrToStringAuto($p); }

与PasswordVault类似,凭据存储在单个用户配置文件位置,只有当前记录的用户才能解密其:

• C:\Users<USERNAME>\AppData\Local\Microsoft\Credentials

• C:\Users<USERNAME>\AppData\Roaming\Microsoft\Credentials

• C:\Windows\system32\config\systemprofile\AppData\Local\Microsoft\Credentials\

从谷歌浏览器转储密码

以下命令从 Google Chrome 浏览器(如果已安装)以及存储任何密码时提取存储的凭据:

[System.Text.Encoding]::UTF8.GetString([System.Security.Cryptography.ProtectedData]::Unprotect($datarow.password_value,$null,[System.Security.Cryptography.DataProtectionScope]::CurrentUser))

同样,这必须在目标(受害者)用户的上下文中执行。

从无线配置文件获取存储的 Wi-Fi 密码

通过此命令,我们可以从 Windows 系统中配置的无线配置文件中提取所有存储的 Wi-Fi 密码(WEP、WPA PSK、WPA2 PSK 等) :

(netsh wlan show profiles) | Select-String "

powershell渗透-信息收集命令的更多相关文章

  1. DNS信息收集命令nslookup

    DNS信息收集--NSLOOKUP 前面文章我介绍了dig命令,NSLOOKUP命令用法差不多 简单查询 语法:nslookup domain [dns-server] nslookup www.si ...

  2. Metasploit笔记之信息收集命令

    书籍参考:Metasploit渗透指南 Nmap:使用没有时 ubuntu自动提示安装命令 用法: nmap -sS -Pn  192.168.1.0 -sS:执行一次隐秘的tcp扫描 -Pn:不使用 ...

  3. python学习之路(2)(渗透信息收集)

    scapy的用法 通过目标ip的回复判断目标ip主机的情况 先写上三层的IP 四层的TCP 然后r.display看一下我们的包 src是源ip dst是目标ip 我们添加目标ip 这里是网关的ip ...

  4. peeping tom 在渗透信息收集前的作用。

    原本想写个截屏类的脚本,发现已经有了这个 py脚本   名字叫作: peeping tom 想要了解详细,戳:https://bitbucket.org/LaNMaSteR53/peepingtom/ ...

  5. 内网横向渗透 之 ATT&CK系列一 之 信息收集

    前言 靶机下载地址:ATT&CK 拓扑图: 通过模拟真实环境搭建的漏洞靶场,完全模拟ATK&CK攻击链路进行搭建,形成完整个闭环.虚拟机默认密码为hongrisec@2019. 环境搭 ...

  6. 小白日记7:kali渗透测试之主动信息收集-发现(一)--二层发现:arping/shell脚本,Netdiscover,scapy

    主动信息收集 被动信息收集可能不准确,可以用主动信息收集验证   特点:直接与目标系统交互通信,无法避免留下访问痕迹 解决方法:1.使用受控的第三方电脑进行探测,使用代理 (做好被封杀的准备)   2 ...

  7. 小白日记6:kali渗透测试之被动信息收集(五)-Recon-ng

    Recon-ng Recon-NG是由python编写的一个开源的Web侦查(信息收集)框架.Recon-ng框架是一个全特性的工具,使用它可以自动的收集信息和网络侦查.其命令格式与Metasploi ...

  8. Kali Linux渗透测试实战 2.1 DNS信息收集

    目录 2.1 DNS信息收集1 2.1.1 whois查询3 2.1.2 域名基本信息查询4 Dns服务器查询4 a记录查询4 mx记录查询5 2.1.3 域名枚举5 fierse 5 dnsdict ...

  9. 信息收集1:DNSEUM命令

    1,背景 今天无意中发现了dnsenum这个工具,在网上搜了下关于dnsenum的介绍和安装使用方法,资料不是很全,但还好这个工具也算简单,网上也都有源码,可以自行下载下来阅读阅读.本人好奇在本机(u ...

随机推荐

  1. Windows7 组策略错误:“未能打开这台计算机上的组策略对象。您可能没有合适的权限。”

    在 Windows 7 系统下,打开组策略时,出现 组策略错误 -- "未能打开这台计算机上的组策略对象.您可能没有合适的权限.".如下图所示: 解决方案: 1.进入"计 ...

  2. Makefile-3-书写规则

    目录 前言 概念 Chapter 3:书写规则 3.3 在规则中使用通配符 3.4 文件搜索 3.8 自动生成依赖性 原理 * 直接解析例子 ** sed 命令 参考 书籍 前言 本笔记主要记录Mak ...

  3. English 介词

    English 介词 Create Time : 2019-06-27 表示时间的介词称为时间介词.表示时间的介词有:at, on, in, before, after等. 一.at, on和in ① ...

  4. 1T数据快速排序!十种经典排序算法总结

    1 冒泡排序 每次循环都比较前后两个元素的大小,如果前者大于后者,则将两者进行交换.这样做会将每次循环中最大的元素替换到末尾,逐渐形成有序集合.将每次循环中的最大元素逐渐由队首转移到队尾的过程形似&q ...

  5. 从源码角度来分析线程池-ThreadPoolExecutor实现原理

    作为一名Java开发工程师,想必性能问题是不可避免的.通常,在遇到性能瓶颈时第一时间肯定会想到利用缓存来解决问题,然而缓存虽好用,但也并非万能,某些场景依然无法覆盖.比如:需要实时.多次调用第三方AP ...

  6. ORM查询相关的操作

    必知必会13条 import os os.environ.setdefault("DJANGO_SETTINGS_MODULE", "orm_practice.setti ...

  7. RLP序列化算法

    RLP RLP(Recursive Length Prefix)递归长度前缀编码,是由以太坊提出的序列化/反序列化标准,相比json格式体积更小,相比protobuf对多语言的支持更强. RLP将数据 ...

  8. 单调队列+线性dp题Watching Fireworks is Fun (CF372C)

    一.Watching Fireworks is Fun(紫题) 题目:一个城镇有n个区域,从左到右1编号为n,每个区域之间距离1个单位距离节日中有m个烟火要放,给定放的地点ai,时间ti当时你在x,那 ...

  9. go init执行顺序

    package test import "fmt" // 初始化函数 引入包的时候要先执行 可以重复定义多个 同一个go文件从上到下 多个文件 是按照字符串进行排序 从小到大 执行 ...

  10. Python虚拟环境操作

    1.安装pip install virtualenvwrapperpip install virtualenvwrapper-win #Windows使用该命令 2.创建一个文件夹,用来保存虚拟环境目 ...