Metarget / metarget

Metarget is a framework providing automatic constructions of vulnerable infrastructures.
Apache License 2.0
1.05k stars 163 forks source link

./metarget cnv list的时候报错,求解 #111

Closed fog895559 closed 2 years ago

fog895559 commented 2 years ago

Traceback (most recent call last): File "./metarget", line 250, in main() File "./metarget", line 243, in main args.func(args) File "/home/vivoadmin/metarget-master/cmds/cnv.py", line 254, in retrieve vulns = vuln_loader.load_vulns_by_dir(config.vuln_cn_dir_wildcard) File "/home/vivoadmin/metarget-master/core/vuln_cn_manager/vuln_loader.py", line 48, in load_vulns_by_dir return load_vulns(vuln_files) File "/home/vivoadmin/metarget-master/core/vuln_cn_manager/vuln_loader.py", line 39, in load_vulns vuln = load_vuln(f) File "/home/vivoadmin/metarget-master/core/vuln_cn_manager/vuln_loader.py", line 26, in load_vuln vuln = yaml.load(f, Loader=yaml.SafeLoader) File "/usr/lib/python3/dist-packages/yaml/init.py", line 70, in load loader = Loader(stream) File "/usr/lib/python3/dist-packages/yaml/loader.py", line 24, in init Reader.init(self, stream) File "/usr/lib/python3/dist-packages/yaml/reader.py", line 85, in init self.determine_encoding() File "/usr/lib/python3/dist-packages/yaml/reader.py", line 135, in determine_encoding self.update(1) File "/usr/lib/python3/dist-packages/yaml/reader.py", line 169, in update self.check_printable(data) File "/usr/lib/python3/dist-packages/yaml/reader.py", line 144, in check_printable 'unicode', "special characters are not allowed") yaml.reader.ReaderError: unacceptable character #x0088: special characters are not allowed in "vulns_cn/kernel/cve-2022-0185.yaml", position 304 有人遇到过这个吗? 不知道怎么解决欸

fog895559 commented 2 years ago

找到解决办法了,在vuln_loader.py文件的open函数里面加encoding='utf-8'

brant-ruan commented 2 years ago

目前我这里暂未遇到该问题,也没有收到更多反馈,所以先关闭这个issue了,有问题的话我们再进一步交流。