操蛋,修复BUG,请问怎么修复这个bug
有2个php文件
1.php
<?php
echo '1';
?>
2.php
<?php
echo '2';
?>
浏览器里输入
http://localhost/1.php/2.php
会输出 1
,为了省去麻烦,我想直接提示浏览器地址非法,该怎么做?
------解决方案--------------------但是 http://localhost/1.php/2.php 并不是非法的,为什么要提示非法呢?
其中的 /2.php 将保存在 $_SERVER['PATH_INFO'] 变量中
------解决方案--------------------正如楼上说的,不是非法。不过,想实现可挺容易的,获取输入url,截取文件名,进行简单判断
$url = "http://localhost/1.php/2.php";
$filename = basename($url);
if($filename != "1.php"){
echo "<script>alert('地址非法');</script>";
}
------解决方案--------------------不清楚用的是什么,建议做一个防跳墙,单以入口
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!
如何验证网站是脆弱的?
如果,例如,你使用http://www.example.com/admin/的URL来访问存储管理,尝试打开http://www.example.com/admin/orders.php/login.php的。如果你不会看到登录屏幕,你处于危险之中!
而我看到的是
我处于危险之中?
笑话!