Python,Nmap NSE脚本的输出(libnmap模块)

时间:2016-04-05 15:01:01

标签: python nmap

我试图让Nmap NSE脚本的输出正确输出到我的终端。我使用了libnmap模块,并阅读了一些示例和文档,因此我不确定我哪里出错了。

from libnmap.parser import NmapParser

p = NmapParser.parse_fromfile("test.xml")
for host in p.hosts:
    for service in host.services:
        for script_out in service.scripts_results:
            print "Output of {0}: {1}".format(script_out['id'], script_out['output']

当我运行上面的脚本时,没有输出任何内容。如果我让上述脚本的逻辑正常工作,那么我可以在主脚本中使用它。

我在终端上运行了这个nmap扫描来测试脚本。 nmap -sV --script dns-brute.nse -oX test.xml google.com

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,在查看了源代码和xml文件后,您会注意到,当脚本扫描运行xml文件上的脚本的主机时,有 Hostscript 这使得其他脚本之间的区别(例如:ftp-anon)

好好试试这个,它应该有用

from libnmap.parser import NmapParser

p = NmapParser.parse_fromfile("test.xml")
for host in p.hosts:

  for script_out in host.scripts_results:
    print "Output of {0}: {1}".format(script_out['id'],script_out['output']