基本上,我想创建一个站点来向人们展示如何通过模拟 PHP 漏洞来防止它们。但是,我无法让他们自己工作。
我想查看一个变量是否等于一个有效页面(我只有两个用于测试),如果是,则加载该页面。否则,我看看它是否包含“../”。如果这些都不是真的,它只是说“找不到页面”。
到目前为止,这是我的代码:
<?php
if($page=="LOLone.php" || $page=="LOLtwo.php"){
echo "Welcome, look at the LOL cats!";
include($page);
}else if(strlen(strstr($page,"../"))>0){
echo "Congrats, you found the transversal attack vulnerability!";
}else{
echo "Page not found!";
}
?>
每当我尝试使用page=LOLone.php
(LOLtwo.php
或什至../
)时,它都会显示“找不到页面!” 我不能像现在这样比较变量吗,或者这可能是我的网络主机安全吗?我有点困惑,但我对 PHP 比较陌生,所以我觉得我错过了一些简单的东西......
好吧,我犯了一个简单的错误。也是一个很大的。对不起。感谢所有回复,我会非常小心我自己的服务器被黑客入侵。在这个例子中,我应该是干净的,因为只有当它等于指定值时,我才让它包含页面。再次感谢。