【发布时间】:2019-12-15 00:01:46
【问题描述】:
我在跑步
- nginx 1.17.4
- php 7.4
- arch linux 5.4.2
尝试执行以下命令从 IP 获取我的用户 MAC 地址(此脚本将在我的局域网服务器上运行)并且 $_SERVER['REMOTE_ADDR'] 确实返回了一个有效的 ip
shell_exec("sudo /usr/bin/nmap -n -sn ".$_SERVER['REMOTE_ADDR'])
但它返回 null 所以我尝试了以下操作以获取更多信息
shell_exec("sudo /usr/bin/nmap -n -sn ".$_SERVER['REMOTE_ADDR'] ." 2>&1")
得到以下信息:sudo:有效的uid不是0,sudo是否安装了setuid root?
我不明白为什么会出现此错误,因为我在 sudder 文件中添加了以下内容
http ALL=NOPASSWD: /usr/bin/nmap
我已修改我的密码以允许从 HTTP 登录以在 shell 中尝试它,它可以工作,但当我在浏览器中运行它时却不行。
请帮忙!
谢谢
【问题讨论】:
标签: php linux nginx shell-exec nmap