Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Python中运行Nucleus会出错。它应该可以工作,但由于某些原因出现错误';出局了_Python - Fatal编程技术网

在Python中运行Nucleus会出错。它应该可以工作,但由于某些原因出现错误';出局了

在Python中运行Nucleus会出错。它应该可以工作,但由于某些原因出现错误';出局了,python,Python,这段pf代码将只打开一个文件,在每行上运行Nucleus时遍历该文件。对于那些不熟悉Nucleus的人来说,它基本上只是进入您指定的域并检查CVE。它可以做到这一点,因为CVE文件夹中有几十个模板可以检查不同的CVE。非常感兴趣的工具。我期待着进步,以便我能为这个项目做出贡献(ProjectDiscovery,如果您好奇的话)。我刚开始写代码,所以我不太懂,但我正在学习。请帮我前进 def cveCheck(): with open('results.txt', 'rb') as htt

这段pf代码将只打开一个文件,在每行上运行Nucleus时遍历该文件。对于那些不熟悉Nucleus的人来说,它基本上只是进入您指定的域并检查CVE。它可以做到这一点,因为CVE文件夹中有几十个模板可以检查不同的CVE。非常感兴趣的工具。我期待着进步,以便我能为这个项目做出贡献(ProjectDiscovery,如果您好奇的话)。我刚开始写代码,所以我不太懂,但我正在学习。请帮我前进

def cveCheck():
    with open('results.txt', 'rb') as http_list:
        for file_to_scan in http_list:
            with open('cve_results.txt', 'a') as f:
                p1 = subprocess.Popen(['echo', file_to_scan], stdout=subprocess.PIPE)
                p2 = subprocess.Popen([f'nuclei', '-silent', '-t', '~/tools/nuclei-templates/cves/'], stdin=p1.stdout, stdout=f)
                output = p2.communicate()
这就是错误所在。它吐出了其中的122条线。我假设它是这样的,因为有122行,在results.txt文件中每行有一个域。我还收到了另一个错误,说明它找不到位于CVE目录中的模板

[FTL] Error, no templates were found.
[FTL] Error, no templates were found.
[FTL] Error, no templates were found.
[FTL] Error, no templates were found.
....

我还想问一下,我是否也应该使用线程模块来实现这一点。

在您的系统上,实际上不太可能有一个名为
~/tools/nucleus templates/cves/
的目录。在shell中键入
nucleus
命令时可以使用该名称,因为shell会自动将该
~
扩展为主目录的实际名称,但此处不涉及shell。您需要写入目录的全名,或者使用
os.path.expanduser()
复制shell的行为。@jasonharper我不知道这一点。我只是试着按照你的建议写出完整的路径,但出现了一个错误,说
[FTL]程序正在退出:没有提供模板/模板
,即使是它们,我也像在shell中一样编写命令,它在shell中工作。我将查看
os.path.expanduser
,看看我能学到什么。一开始我就把事情搞砸了,这是件好事,因为我读了很多可能的解决方案,如果它不起作用,我可以把它放在次要位置,这样以后可能会派上用场。谢谢你,先生。