当系统在Windows 10工作站上引导时,我正在尝试运行python脚本。当我以具有管理特权的用户身份在其他目录中启动时,但在系统引导我从C:\ Windows \ System32 \ GroupPolicy \ Machine \ Scripts \ Startup文件夹中的bat文件运行该脚本时,我的python脚本运行正常在我的日志中收到以下错误。
2018-11-13 04:43:58,913 - VP - Level 55 - nmap args: ['"C:\\Program Files (x86)\\Nmap\\nmap.exe"', '-oX', 'C:\\\\nmap\\NmapResults\\scan-192.168.1.5-20181113044358.xml', '-sS', '-n', '-p-', '--allports', '--scan-delay', '1ms', '-sU', '-sV', '--version-all', '192.168.1.5']
Traceback (most recent call last):
File "secnmap\nmap_scanner.py", line 596, in <module>
exit_code = main()
File "secnmap\nmap_scanner.py", line 248, in main
run_nmap(args, scan_options, host_data_list, use_service_name_check)
File "secnmap\nmap_scanner.py", line 268, in run_nmap
nmap_proc = subprocess.Popen(nmap_cmd_list, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
File "C:\Python27\lib\subprocess.py", line 390, in __init__
errread, errwrite)
File "C:\Python27\lib\subprocess.py", line 640, in _execute_child
startupinfo)
WindowsError: [Error 5] Access is denied
这是.bat文件的内容。
cd C:\\nmap_startup
python nmap_startup.py
我已经尝试使用代码片段中所示的完整nmap.exe路径以及普通的旧nmap
。无论哪种方式,我都会得到拒绝访问错误。我在subprocess.py中没有看到太多内容,也无法使我相信这是python代码的错误,因此我认为这是系统用户运行脚本的问题。如果有人有其他想法或想法,我很想听听他们的意见。谢谢
编辑:我选择从bat文件运行,因为我的python版本是32位,并且在C:\ windows \ system32目录中运行时遇到问题
答案 0 :(得分:0)
事实证明,nmap路径AndroidManifest.xml
未包含在系统环境变量中。当脚本以系统用户身份运行时,它无法识别nmap的位置