Home > Backend Development > PHP Tutorial > 操蛋,修复BUG,请问怎么修复这个bug

操蛋,修复BUG,请问怎么修复这个bug

WBOY
Release: 2016-06-23 14:27:33
Original
1314 people have browsed it

有2个php文件

1.php
  echo '1';
?>

2.php
  echo '2';
?>
浏览器里输入
http://localhost/1.php/2.php

会输出 1

,为了省去麻烦,我想直接提示浏览器地址非法,该怎么做?


回复讨论(解决方案)

但是 http://localhost/1.php/2.php 并不是非法的,为什么要提示非法呢?
其中的 /2.php 将保存在 $_SERVER['PATH_INFO'] 变量中

但是 http://localhost/1.php/2.php 并不是非法的,为什么要提示非法呢?
其中的 /2.php 将保存在 $_SERVER['PATH_INFO'] 变量中
有安全隐患,因为我在做国外的网店系统,一个类似BUG,可以绕过登录
http://www.crehelp.com/cre-loaded-vulnerability-check-you-are-affected-pg-7.html
直接看订单情况。
还不知怎么修复呢

正如楼上说的,不是非法。不过,想实现可挺容易的,获取输入url,截取文件名,进行简单判断

  $url = "http://localhost/1.php/2.php";  $filename = basename($url);  if($filename != "1.php"){      echo "<script>alert('地址非法');</script>";  }
Copy after login
Copy after login

正如楼上说的,不是非法。不过,想实现可挺容易的,获取输入url,截取文件名,进行简单判断

  $url = "http://localhost/1.php/2.php";  $filename = basename($url);  if($filename != "1.php"){      echo "<script>alert('地址非法');</script>";  }
Copy after login
Copy after login

是个方法,可是文件量太大了,后台文件太多了,看每一个文件信息都可以绕过登录,我勒个去

不清楚用的是什么,建议做一个防跳墙,单以入口

PS:亲,分太低了

How to verify if website is vulnerable?If, for example, you use http://www.example.com/admin/ URL to access store admin, try to open http://www.example.com/admin/orders.php/login.php. If you will not see login screen you are in danger!
Copy after login
如何验证网站是脆弱的?

如果,例如,你使用http://www.example.com/admin/的URL来访问存储管理,尝试打开http://www.example.com/admin/orders.php/login.php的。如果你不会看到登录屏幕,你处于危险之中!

而我看到的是

我处于危险之中?
笑话!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template