2条回答 默认 最新
- 斯洛文尼亚旅游 2021-03-20 20:45关注
REMOTE_ADDR如果用户使用了代理得到的是代理IP,所以增加判断用户是否启用了代理,如果使用了通过HTTP_X-Forwarded-For获取用户的真实IP地址,设置REMOTE_ADDR服务器变量为用户的真实ip地址
就是获取访问用户的真实ip地址
然后$sandbox变量存储sandbox/及使用md5(orange+用户ip)的值
mkdir就是从当前运行的php文件所在目录下创建$sandbox路径,chdir将 PHP 的当前目录改为$sandbox的路径,为后续的exec执行外部程序指定目录用
然后判断是否POST提交了url这个键名称的内容,未提交使用PHP内置的(highlight_file)语法高亮器所定义的颜色,打印输出当前运行的php(__FILE__)文件语法高亮版本的代码。
提交了则判断是否为合法的网址,合法的话parse_url 解析 URL,返回其组成部分,判断host主机名是否为127.0.0.1,是的话获取提交网址返回的内容,内容小于等于4个字符的话调用exec执行返回的程序($code存的的外部程序名称)
总的来说就是访问这个php脚本时,在每个访客的ip地址所在目录(md5过)内执行本机返回的程序
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用 1