IT学习网 - 爱学习 - 最具影响力综合资讯网站 -- 中国IT界的领航者!
热门关键字:      88888  as  xxx
站外
广告
站外
广告

Powershell最佳安全实践

发布时间:2017-10-10 17:27文章来源:互联网文章作者: 互联网点击次数:
写在前面的话 其实很早之前,攻击者就已经开始使用合法工具来渗透目标网络并实现横向攻击了。理由很简单:使用合法工具可以降低被检测到的几率,而且进过授权的工具(而并非恶意工具)可以更容易绕过安全防护机制。因此对于攻击者来说,PowerShell就成为了一
Powershell最佳安全实践

写在前面的话

其实很早之前,攻击者就已经开始使用合法工具来渗透目标网络并实现横向攻击了。理由很简单:使用合法工具可以降低被检测到的几率,而且进过授权的工具(而并非恶意工具)可以更容易绕过安全防护机制。因此对于攻击者来说,PowerShell就成为了一个绝佳的工具。在这篇文章中,我们将跟大家讨论PowerShell的最佳实践方式,而本文的内容将能够帮助你对抗那些使用PowerShell来攻击你的人。

PowerShell是什么?

PowerShell是一种专为MicrosoftWindows和Windows Server设计的自动化平台兼脚本语言,它可以简化系统管理步骤。与其他基于文本的shell不同,PowerShell还可以利用Microsoft .Net Framework的强大功能,并给用户提供多种对象和内置功能来帮助用户管理自己的Windows环境。 Powershell最佳安全实践

为什么是PowerShell?

目前有很多网络攻击都在使用PowerShell,尤其是近期的Petya/NotPetya攻击活动。对于攻击者来说,最重要的是PowerShell是Windows自带的工具,并且整合了.NET Framework组件,而在攻击者的入侵和感染活动中,这个框架组件能够提供多种操作选项。

对于攻击者而言,PowerShell最吸引人的方面有以下几个:

  1. 可以轻松访问网络套接字;
  2. 可以在内存中动态编译恶意代码
  3. 可直接访问Win32应用程序编程接口(API);
  4. 可以轻松访问WMI接口;
  5. 强大的脚本环境;
  6. 动态、运行时方法调用;
  7. 轻松访问加密库,例如IPSec和各种哈希算法;
  8. 轻松绑定COM;
上面列出的这些因素让PowerShell成为了一种高效的攻击向量。 PowerShell首次被当作一种攻击平台被提出是在2010年,当时在DefCon18上有研究人员演示了利用PowerShell的PoC,详情请参考大会的演讲视频【视频地址】。 目前,社区中有很多类似Nishang、PowerSploit和PowerShell Empire平台的攻击工具,攻击者可以利用这些工具来进行网络侦察、持续性感染以及横向攻击活动。当然了,考虑到PowerShell的自身属性,它还可以进行各种形式的编程,攻击者可以采用编程的方式将其打造成一款自定义工具。

PowerShell安全最佳实践

考虑到某些组织因为需求关系不能禁用或删除PowerShell,下面给出的几条安全实践建议可以帮助你在享受PowerShell的高效性时免受网络威胁的困扰。

1.PSLockDownPloicy以及PowerShell的受限语言模式

受限语言模式能够将PowerShell限制在基础功能状态,并移除其高级功能的支持,例如.NET和Windows API调用以及COM访问。一旦PowerShell失去了这些高级功能,那么绝大多数的基于PowerShell的攻击工具都将会失效。但是在企业环境中,这种方法将会对合法脚本产生负面影响,因此我们建议在采用这种方法之前,一定要进行多次测试,以保证合法代码的正常运行。【配置参考资料】 启用受限语言模式: [Environment]::SetEnvironmentVariable(‘__PSLockdownPolicy‘,‘4’, ‘Machine‘) 通过组策略启动: Computer Configuration\Preferences\WindowsSettings\Environment

2.PowerShell v.5+Applocker+DeviceGuard

PowerShell v.5自带了很多优秀的安全增强功能,非常适合企业环境使用。这些安全增强功能包括:
脚本块日志:将反混淆化的PowerShell代码记录到事件日志中; 系统范围的脚本拷贝:该功能可通过组策略开启,可记录下每一条在系统中执行过的PowerShell命令和代码块; 受限语言模式的PowerShell:进入受限语言模式; 整合反恶意软件(Windows 10):Windows 10的反恶意软件扫描接口(AMSI)允许所有的脚本引擎(PowerShell、VBScript和JScript)请求对动态内容进行安全分析,包括脚本文件、命令行输入的命令以及内存中下载和执行的代码。它可以在PowerShell代码执行之前对其进行安全扫描。
Powershell最佳安全实践
本文由 IT学习网 整理,转载请注明“转自IT学习网”,并附上链接。
原文链接:http://www.ourlove520.com/Article/netsafe/Website/1074313.html

标签分类:

上一篇:上一篇:“锁大师”暗刷流量劫持主页,已影响百万用户
下一篇: 下一篇:没有了
无觅关联推荐,快速提升流量