热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

php伪协议怎么样演示(php伪协议文件包含)

导读:很多朋友问到关于php伪协议怎么样演示的相关问题,本文编程笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!本文目录一览:

导读:很多朋友问到关于php伪协议怎么样演示的相关问题,本文编程笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!

本文目录一览:


  • 1、PHP绕过open_basedir限制操作文件的三种方法


  • 2、伪协议的意思?


  • 3、用PHPnow测试成功了PHP程序(wordpress),怎样打包发到别的机器上做演示??


  • 4、flag在index里

PHP绕过open_basedir限制操作文件的三种方法

由于open_basedir的设置对system等命令执行函数是无效的,所以我们可以使用命令执行函数来访问限制目录。

我们首先创建一个目录

且在该目录下新建一个1.txt 内容为abc

再在该目录下创建一个目录命名为b

并且在该目录下创建一个1.php文件内容为

且在php.ini中设置好我们的open_basedir

我们尝试执行1.php看看open_basedir是否会限制我们的访问

执行效果如图

很明显我们无法直接读取open_basedir所规定以外的目录文件。

接下来我们用system函数尝试绕open_basedir的限制来删除1.txt

编辑1.php为

先来看看执行1.php之前的文件情况

执行1.php之后

我们先来了解一下symlink函数

symlink函数将建立一个指向target的名为link的符号链接,当然一般情况下这个target是受限于open_basedir的。

由于早期的symlink不支持windows,我的测试环境就放在Linux下了。

测试的PHP版本是5.3.0,其他的版本大家自测吧。

在Linux环境下我们可以通过symlink完成一些逻辑上的绕过导致可以跨目录操作文件。

我们首先在/var/www/html/1.php中 编辑1.php的内容为

接着在/var/www/中新建一个1.txt文件内容为

再来设置一下我们的open_basedir

在html目录下编辑一个php脚本检验一下open_basedir

执行看下。

意料之中,文件无法访问。

我们执行刚才写好的脚本,1.php

此时tmplink还是一个符号链接文件,它指向的路径是c/d,因此exploit指向的路径就变成了

由于这个路径在open_basedir的范围之内所以exploit成功建立了。

之后我们删除tmplink符号链接文件再新建一个同名为tmplink的文件夹,这时exploit所指向的路径为

由于这时候tmplink变成了一个真实存在的文件夹所以tmplink/../../变成了1.txt所在的目录即/var/www/

然后再通过访问符号链接文件exploit即可直接读取到1.txt的文件内容

当然,针对symlink()只需要将它放入disable_function即可解决问题,所以我们需要寻求更多的方法。

glob是php自5.3.0版本起开始生效的一个用来筛选目录的伪协议,由于它在筛选目录时是不受open_basedir的制约的,所以我们可以利用它来绕过限制,我们新建一个目录在/var/www/下命名为test

并且在/var/www/html/下新建t.php内容为

执行结果如图:

成功躲过open_basedir的限制读取到了文件。

伪协议的意思?

伪协议就是假的协议

[ xié yì ]

1.协商。

2.泛指国家、政府、政党、团体或个人间就一定问题经谈判、协商后而达成的共同决定。通常用文件形式来体现。国家和政府间的协议往往采取条约的形式。协议有时也作为条约的一种名称。

用PHPnow测试成功了PHP程序(wordpress),怎样打包发到别的机器上做演示??

WordPress从官方下载的话,解压后里面应该是有例如wp-content、wp-includes、wp-admin等到这些文件的。如果你只是安装这一个网站程序的话,就可以把所有这些文件直接放到htdocs目录下。

里面原本的那个index.php文件覆盖掉就行了,那只是一个查看php信息的,没多大用处。当然,你想留着的话就像教程说的那样,改个名字,这样就不会覆盖掉了。

WordPress程序文件放进去后,要打开数据库管理程序:浏览器里面输入:,回车。会要求你输入用户名和密码。用户名是root,密码是你在安装PHPnow时有个步骤提示你输入密码时的那个密码,没设置就是空(不用输入)。如果忘记密码了,就打开phpnow

里面

PnCp.cmd

这个文件,第12个选项就是重设MySQL密码的。

输入用户名和密码完毕进入phpMyAdmin控制台,为WordPress创建一个数据库(名字比如为:wp),教程里有(图3),我就不多说了。只是创建数据库时整理类型要下拉选择最底下那个“utf8_unicode_ci”。

数据库创建完毕后就可以关闭phpMyAdmin控制台页面了,在浏览器里面输入:回车,这时会进入Wordpress的安装页面,点击“创建一个新的配置文件”,按照里面的提示,输入:

数据库名称(就是你刚建立的那个数据库的名字

wp);

数据库用户名(root);

数据库密码(刚才用来登录phpMyAdmin时的那个MySQL密码);

数据库地址(默认的不用改);

数据表前缀(默认的不用改)。

这些填完后,点下面的“填好了”,很快就安装好了。

注意,一会儿生成的管理员密码要记好先(因为是随机生成的不好记,登录到管理后台后可以修改)。

如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!

flag在index里

一、提示flag在index里

二、点击连接看一看

三、发现是文件包含

四、直接使用本地php伪协议包含index.php文件

五、Base64解密

结语:以上就是编程笔记为大家介绍的关于php伪协议怎么样演示的全部内容了,希望对大家有所帮助,如果你还想了解更多这方面的信息,记得收藏关注本站。


推荐阅读
author-avatar
mobiledu2502896071
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有