我有一个as3脚本,它使用查询字符串加载一个PHP脚本的urlrequest,我不确定它是否正常工作。
AS3:
userLoad=new URLLoader;
userReq=new URLRequest("http://users/redirect.php?goto=u"+meFB+"/char.xml");
userLoad.addEventListener(Event.COMPLETE,userLoaded);`
PHP:
$goto=$_REQUEST['goto'];
return readfile($goto);`
我最近在路径中添加了一个目录,它似乎不再起作用了......
因为我只需要94分来回答我自己的问题我会在这里留下答案:没试过但是我真的认为通过查询传递给php的字符串必须避免斜线空间和其他人使用字符编码代替。如果有人知道这一点肯定请留下答案。我只是避免了斜线,像一个魅力。你们正在谈论的安全漏洞也是请求方法吗?我不是很好用PHP所以我不知道,但我可以改变它,如果那更好。感谢您的回答和评论。
答案 0 :(得分:2)
还有其他方法可以做到,但这很容易理解,也不是安全漏洞。 (当我们说安全漏洞时,您当前的代码将允许任何人以最小的努力完全访问您的系统。)
这里的技巧是路径中的硬编码。
<?php
switch($_GET['goto']){
case 'char':
readfile('char.xml');
break;
case 'uchar1':
readfile('directory/uchar.xml');
break;
// repeat for all files
}
?>