首页 安全防御正文

运维说:Nessus和Powershell更配哟

在日常安全评估工作中,内部主机经常被验证和扫描,以找到错过补丁时间或错误配置造成的漏洞。我经常使用它Nessus,它就像一个经验丰富的系统管理员。渗透测试人员可能会找到一个特殊的Java或是Flash与系统管理员相比,他们不想知道某个设备有多少漏洞。最需要的信息是设备需要进行Java更新,更新对业务的影响。

总之,在一个中型 *** 中你完全可以相信Nessus扫描可以得到成千上万的调查结果。在过去的一年里,我自己写了一些有趣的东西sed/cut为了方便我们的分析,脚本将这些数据切割或导入数据库。今天我将使用它PowerShell(免费,易用,应用广泛)向大家证明Nessus和Powershell搭配是多少?***!

实例演示

首先导入从Nessus中获取到CSV看到统计结果总数,我吓了一跳:

运维说:Nessus和Powershell更配哟

接下来看看数据结构:

运维说:Nessus和Powershell更配哟

接下来寻找Flash Player我们正在寻找所有非零风险的结果

运维说:Nessus和Powershell更配哟

哪些主机受到影响?有几十个不连续的主机Flash维修人员获得维修清单已成为首要任务,其次是今后如何防止这样的事情。

运维说:Nessus和Powershell更配哟

然后我们来解决Java注意问题“|”并不是or操作符,并且匹配(match)操作符不区分大小写,字段名明确区分大小写。如果你不注意,你很可能会查询一个空变量,导致无法得到结果。Java,本例将约5万人的调查结果缩短为222

运维说:Nessus和Powershell更配哟

你在找他们吗?

如果你想找其他问题,你可以自己试试

Adobe Reader (以人格担保这里不会将Flash问题也算在内)

$adobe=$all|Where-Object{$_.Description-matchAdobeReader-And$_.Description-notmatch"Flash"-and$_.Risk-notmatch"None"}

.NET Framework:

$dotnet=$all|Where-Object{$_.Description-match"NetFramework"-and$_.Risk-notmatch"None"}

Silverlight:

$silverlight=$all|Where-Object{$_.Description-match"Silverlight"-and$_.Description-notmatch".Net"-and$_.Risk-notmatch"None"}

Office:

$msoffice=$all|Where-Object{$_.Synopsis-match'(Office|Word|Powerpoint|Excel|Outlook)'-and$_.Risk-notmatch"None"}

Microsoft补丁,安全警告和Service Packs:

$misc_microsoft=$whatsleft|Where-Object{$_.Name-match'(MS[0-9][0-9]-[0-9][0-9][0-9]|MSKB|MSSecurityAdvisory|WindowsServicePack)'}

快速生成报告

即使在2015年,不管规模大小,还是有很多店铺的,总能时不时找到一两个从不补丁或者安装的。Service Pack的主机。

差点忘了,注意分解查询,方便阅读:

$whatsleft=$all|Where-Object{$_.Description-notmatch'(Flash|Adobe|JRE| *** E|JAVA|Java|jre|jse)'}|Where-Object{$_.Name-notmatch'(Silverlight|NetFramework|Office|Word|Powerpoint|Excel|Outlook|Explorer)'}|Where-Object{$_.Name-notmatch'(MS[0-9][0-9]-[0-9][0-9][0-9]|MSKB|MSSecurityAdvisory|WindowsServicePack)'}|Where-Object{$_.Risk-notmatch"None"}

最终问题总结:

$final_summary=$whatsleft2|select'PluginID',Name|Group-Object'PluginID'|Sort-Object-DescendingCount

查看问题:

$final_summary|Out-GridView

运维说:Nessus和Powershell更配哟

回到需要清单的运维人员的问题,我们还需要处理host-by-host问题

$summary_by_host=$whatsleft2|selectHost,'PluginID',Name|Sort-ObjectHost

然后将清单转存到CSV:

$final_summary_by_host|Export-Csv./final-summary.csv

将CSV文件导入Excel, *** 数据透视表,这样你就可以得到一份漂亮的简介报告!

运维说:Nessus和Powershell更配哟

   
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。