这几天在搞大型网络的端口扫描,其实也不算很大大概1.1W个主机的全端口扫描。
扫描是扫描完了但是结果看起来很难受。。很多关闭或者过滤的端口它也显示出来了
后来又看了看Nmap的参数 发现了--open参数,这个参数是只显示&输出 开放端口的参数。但光看只开放的端口也是个蛋疼的事儿输出结果有3W多行。



后来想能不能自动化输出扫描出的端口和IP其他的不要。

经过2、3小时的折腾,终于搞定了自动化工具。

原理基本上就是xml解析

写了几个Xpath就解决了再加上Nmap的无样式参数--no-stylesheet

使用的Nmap命令也是常见的参数

nmap -v -sS --open -iL iplist.txt --no-stylesheet -oX output.xml -p- -P0    

问题基本解决了

用到的核心代码其实没几行,整个工程也才36行。

核心代码如下

xmldoc.SelectNodes("//host/address[@addr]")
xmldoc1.SelectNodes("//port[@portid]")
node1.Attributes.GetNamedItem("addr").Value
node2.Attributes.GetNamedItem("portid").Value

妈妈再也不用担心我整理大量端口扫描结果了 :)


评论区:
3g: 老大,能否共享下完整代码吗?2112727313@qq.com      谢谢哈 [2017-03-11 21:29:33]
 

Comments
Write a Comment