导语:最近研究人员新研究出了一个用来对网络漏洞进行渗透测试的工具——NetworkRecon,NetworkRecon包含有几乎所有的PowerShell脚本。

360反馈意见截图16370628566787.jpg

最近研究人员新研究出了一个用来对网络漏洞进行渗透测试的工具——NetworkRecon,NetworkRecon包含有几乎所有的PowerShell脚本。

在NetworkRecon被研发之前,PowerSploit和PSAttack是最新被开发出来用来两款包含powershell 脚本的测试工具,而NetworkRecon是专门针对网络漏洞测试的。

什么是PowerSploit?

PowerSploit是GitHub上面的一个安全项目,上面有很多powershell攻击脚本,它们主要被用来渗透中的信息侦察、权限提升、权限维持。

项目地址:https://github.com/PowerShellMafia/PowerSploit

什么是PSattack?

PSattack是一个开源的,将渗透测试实践过程中所有的脚本结合起来形成的框架。更有趣的是使用攻击类型的PowerShell脚本并不会调用powershell.exe,而是通过.NET框架直接调用PowerShell。另外,所有的模块都是加密处理的,并且不会写入到硬盘当中,所以在一定程度上可以做到免杀。

项目地址:https://github.com/jaredhaight/PSAttack/releases

什么是NetworkRecon?

NetworkRecon是一个开源的PowerShell网络侦察模块,它将捕获,分析和识别常用的配置错误的协议,以帮助测试者执行Windows客户端系统可见的漏洞网络协议分析。分析少量网络流量可能导致发现可能的基于网络的攻击向量,如虚拟路由器冗余协议(VRRP),动态中继协议(DTP),链路本地组播名称解析(LL-MNR)和PXE引导攻击。此外,测试者不必安装第三方软件,因为PowerShell包括多个网络分析和网络流量相关功能。它是在PowerShell Empire PowerUp脚本之后建模的,以便轻松识别目标协议。

通常,VLAN中继,网络路由和网络冗余协议不应该被转发到Windows客户端。动态主机配置协议(DHCP)的配置错误也提供了攻击者选项,例如分析引导映像以获得凭据和其他敏感信息。 NetworkRecon目前可以帮助测试者分析这些网络异常的协议:

1.名称解析协议(Name Resolution protocols):诸如NetBIOS名称服务(NBT-NS),链路本地组播名称解析(LLMNR)和组播DNS(multicast DNS)等协议为攻击者通过操纵主机名到IP地址关系来执行多个不同的攻击提供了机会。攻击者可以向用户的请求发送恶意响应,或在网络会话中成为中间人(MitM)。

2.路由和冗余协议(Routing and Redundancy Protocols):来自诸如热备份路由协议(HSRP),虚拟路由器冗余协议(VRRP)和开放最短路径优先(OSPF)等协议的路由信息可能会使网络暴露于路由操纵攻击。如果访问端口上存在路由流量,则攻击者可以解析该信息,以确定是否使用身份验证来捕获凭据,从而允许攻击者注入恶意路由信息。

3.链路层协议(Link-Layer Protocols):错误配置的链路层协议,如生成树协议(STP),思科发现协议(CDP),逻辑链路发现协议(LLDP),动态中继协议(DTP),VLAN中继协议(VTP))允许攻击者获得中间人的位置,设备硬件修订,设备软件修改等敏感信息,并允许跳跃攻击(VLAN hopping)和DoS攻击。

4.引导协议(Boot Protocols):配置错误的启动协议,如动态主机配置协议(DHCP),BOOTP可能允许攻击者下载并检查引导映像以发现凭据等。

现在,NetworkRecon为测试者提供了的这些攻击脚本,其中所包含的模块是Invoke-NeighborCacheAnalysis,Invoke-TraceCollect和Invoke-LiveAnalysis。它们的功能如下:

1.Invoke-NeighborCacheAnalysis:查找系统ARP缓存中存在的潜在易受攻击的协议的二层组播地址( Layer 2 multicast addresse)。

2.Invoke-TraceCollect:根据受支持的操作系统功能,以.etl或.cap格式执行时间有限的网络跟踪,利用Microsoft-Windows-NDIS-PacketCapture提供程序。

3.Invoke-LiveAnalysis:使用原始IP套接字来侦听和解析潜在的易受攻击的协议并公开详细信息。

以太网帧收集的限制可以防止解析LLDP,CDP,DTP和VTP流量。然而,它们的存在仍然可以通过Invoke-NeighborCacheAnalysis来识别。

如何使用NetworkRecon.ps1?

使用PowerShell脚本很简单:

> Import-Module .NetworkRecon.ps1
> Invoke-LiveAnalysis
WARNING: Script IS NOT running as administrator.
Analyzer started at 2017-07-16T09:03:36
WARNING: Windows Firewall = Enabled
Listening IP Address = 127.0.0.1
Starting sniffer...

所以你看,脚本需要管理权限。如果有一个提升的提示,你得到的输出如下:

powershell -exe bypass
> Import-Module .NetworkRecon.ps1
> Invoke-LiveAnalysis
Script IS running as administrator.
Analyzer started at 2017-07-16T09:13:13
WARNING: Windows Firewall = Enabled
Inserted Inbound Multicast Rule
Listening IP Address = 127.0.0.1
Starting sniffer...

现在就得到Invoke-TraceCollect:

> Import-Module .NetworkRecon.ps1
PS C:UsersmdaniDesktop> Invoke-TraceCollect
[+] Target folder exists, no action required
[+] Starting capture session
   [-] Trying PEF trace first...
   [!] Unable to create PEF trace...falling back to netsh...
   [-] Output will be saved to  C:tempcapture_201771691852.etl

Trace configuration:
-------------------------------------------------------------------
Status:             Running
Trace File:         C:tempcapture_201771691852.etl
Append:             Off
Circular:           Off
Max Size:           250 MB
Report:             Off

   [-] Sleeping for 5 minutes while packet capture is running

项目地址:https://bitbucket.org/Super68/networkrecon

源链接

Hacking more

...