我想从 PHP 调用 Nmap。
如果我这样做:
exec('nmap', $output);
var_dump( $output );
它有效,我得到了经典的“Nmap 的用法”文本。
但是当我尝试运行 UDP 检查时
exec('nmap -p 586 -sU xx.xx.xx.xx', $output);
var_dump( $output );
它不再起作用,没有输出。
我缺少什么?
Regards
某些 Nmap 功能需要 root 权限才能运行。-sU
UDP 端口扫描就是其中之一。在 Linux 上,完整列表为:
-
-sU
UDP端口扫描
-
-sS
TCP SYN 扫描
-
-sA/W/M/N/F/X
使用各种标志进行 TCP 扫描
-
-PE/PP/PM
ICMP 主机发现探测
-
-sO
IP协议扫描
-
-sY/Z
SCTP 扫描
-
-O
操作系统检测
-
--traceroute
跟踪路由
- 几乎所有 IDS 规避选项
不用说,大概就是这不是一个好主意让您的 Web 服务器以 root 身份运行 Nmap 命令。我还提醒您对 Nmap 命令行中的用户输入要非常严格。许多 Nmap 功能可被滥用来执行任意功能。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)