与Powershell

大家都在说windows7的防护水平大大高于windows xp了,但是并不都是如此,Win7下给出现了一个强大高级cmd————>powershell。该shell最大的特点就是支持脚本编程,酷似linux的bash(准确说应该是各种sh),下面就简要介绍下它的功能,以及如何与metasploit配合(今年北美著名的安全会议Derbycon给出的,这个会议是美国国防部下属的DARPA资助的,内容非常好,建议大家关注):

基本命令

开始–>运行–>powershell 开启powershell界面

get-command *-service 获得服务相关的命令 get-help get service 获得命令的帮助

支持脚本文件的命令集 脚本的后缀名为.PS1,支持管道:

powershell使用示例:

停止所有目前运行中的以”p”字符开头命名的程序:

PS> get-process p* | stop-process

停止所有目前运行中的所有使用大于1000MB存储器的程序:

PS> get-process | where { $_.WS -gt 1000MB } | stop-process

计算一个目录下文件内的字节大小:

PS> get-childitem | measure-object -property length -sum

等待一个叫做”notepad”的程序运行退出:

PS> $processToWatch = get-process notepad
PS> $processToWatch.WaitForExit()

将”hello, world!”字符串转为英文大写字符,成为”HELLO, WORLD!”:

在字符串”string”的第1个字符后插入字符串”ABC”,成为”sABCtring”:

订阅一个指定的RSS Feed并显示它最近8个主题:

使用powershell执行shellcode

使用dns payloads的方式通过powershell执行meterpreter,达到免杀、过IPS的效果

使用powershell进行文件的上传、下载和端口扫描

下载

上传

端口扫描

powersploit 堪比meterpreter的后渗透攻击框架

Carlos Perez国外大牛设计了基于powersploit的渗透脚本集合,用于授权渗透测试使用。。。。(大家都知道怎么回事),里面的主要包含了一下几个脚本

具体的代码就请查看作者的github代码仓库:powerexploit

Metasploit与powershell结合

西点军校毕业的这货Chris Gates说windows就是他的backdoor,为什么? 首先就是powershell提供了上传和下载功能,这在渗透过程中能省很多事,其次他说没有见过哪些Meterpreter的事Powershell做不了的,举例:

绕过powershell本身的权限限制:

使用Metasploit生成Powershell

使用批处理文件从Meterpreter中运行Powershell

示例:

总结

windows7下的powershell功能不可小觑,应该一起广大安全爱好研究这的研究和重视,后面还会给出相关powershell安全研究的讨论。最后推荐两个博客: 中文博客:研究powershell中文博客,包含powershell的命令解释、脚本编程的各种小技巧 英文博客:国外某大牛博客,对powershell有很多安全方面的研究,国外黑客大会推荐

最后更新于

这有帮助吗?