` closes the document title early and the injected script executes in the Shaarli origin for any visitor of `/shaare/{hash}`. Shaarli's metadata fetcher copies a remote page's `` text verbatim into the local bookmark title, so an attacker who hosts an attacker-controlled URL and convinces an administrator to bookmark it plants the payload with no further interaction \u2014 and the resulting permalink fires for every visitor including the administrator on first save, providing a one-shot administrator account takeover. Version 0.16.3 fixes the issue.", "isPartOf": { "@id": "https://www.cvefind.com/ko/cve/CVE-2026-50190.html#webpage" }, "publisher": { "@id": "https://www.cvefind.com/#organization" }, "@id": "https://www.cvefind.com/ko/cve/CVE-2026-50190.html#techarticle" } ] } </script> <meta name="viewport" content="width=device-width, initial-scale=1" /> <!-- Favicon --> <link rel="apple-touch-icon" sizes="57x57" href="/apple-icon-57x57.png"> <link rel="apple-touch-icon" sizes="60x60" href="/apple-icon-60x60.png"> <link rel="apple-touch-icon" sizes="72x72" href="/apple-icon-72x72.png"> <link rel="apple-touch-icon" sizes="76x76" href="/apple-icon-76x76.png"> <link rel="apple-touch-icon" sizes="114x114" href="/apple-icon-114x114.png"> <link rel="apple-touch-icon" sizes="120x120" href="/apple-icon-120x120.png"> <link rel="apple-touch-icon" sizes="144x144" href="/apple-icon-144x144.png"> <link rel="apple-touch-icon" sizes="152x152" href="/apple-icon-152x152.png"> <link rel="apple-touch-icon" sizes="180x180" href="/apple-icon-180x180.png"> <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png"> <link rel="icon" type="image/png" sizes="192x192" href="/android-icon-192x192.png"> <link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png"> <link rel="icon" type="image/png" sizes="96x96" href="/favicon-96x96.png"> <link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png"> <link rel="manifest" href="/manifest.json"> <meta name="msapplication-TileColor" content="#ffffff"> <meta name="msapplication-TileImage" content="/ms-icon-144x144.png"> <meta name="theme-color" content="#ffffff"> <link rel="canonical" href="https://www.cvefind.com/ko/cve/cve-2026-50190.html"> <link rel="preload" href="/css/dist/custom.min.1793710212.css" as="style"> <link rel="stylesheet" href="/css/dist/custom.min.1793710212.css" media="print" onload="this.media='all'"> <noscript><link rel="stylesheet" href="/css/dist/custom.min.1793710212.css"></noscript> <link rel="stylesheet" href="/plugins/custom/datatables/datatables.bundle.1718974030.css"> <link rel="preload" href="/css/dist/plugins.bundle.min.1793710212.css" as="style"> <link rel="stylesheet" href="/css/dist/plugins.bundle.min.1793710212.css" media="print" onload="this.media='all'"> <noscript><link rel="stylesheet" href="/css/dist/plugins.bundle.min.1793710212.css"></noscript> <link rel="stylesheet" href="/css/dist/style.bundle.min.1793710212.css"> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} // Enregistrer l'initialisation gtag('js', new Date()); // Configuration par défaut (tout refusé jusqu'au consentement) gtag('consent', 'default', { 'ad_storage': 'denied', // Permet le stockage lié à la publicité, comme les cookies (Web) ou les identifiants d'appareil (applications). 'ad_user_data': 'denied', // Définit le consentement pour l'envoi de données utilisateur à Google à des fins de publicité en ligne. 'ad_personalization': 'denied', // Définit le consentement pour la publicité personnalisée. 'analytics_storage': 'denied', // Permet le stockage lié aux données analytiques, comme la durée des visites, comme les cookies (Web) ou les identifiants d'appareil (applications). 'wait_for_update': 500 }); window.gdpr = { debug: false, utils: { isConsentGranted: function(nameCookie) { var cookies = document.cookie.split('; ').reduce((acc, cookie) => { var [name, value] = cookie.split('='); acc[name] = value; return acc; }, {}); if (!cookies[nameCookie]) return false; return cookies[nameCookie] != ''; }, handleServiceActivation: function(cookies_status) { gdpr.utils.debugLog("Gestion des services en fonction du consentement :", cookies_status); // Gestion de chaque service en fonction de son état dans cookies_status if (true) (cookies_status.rgpdGoogleAnalytics ?? false) ? gdpr.analytics.enable() : gdpr.analytics.disable(); else gdpr.utils.debugLog("GA4 ID non défini !",null); if (false) (cookies_status.rgpdGoogleAdsConversion ?? false) ? gdpr.ads.enable() : gdpr.ads.disable(); else gdpr.utils.debugLog("Google Ads ID ou GA4 ID non défini !",null); if (false) (cookies_status.rgpdCrisp ?? false) ? gdpr.crisp.enable() : gdpr.crisp.disable(); else gdpr.utils.debugLog("Crisp ID non défini !",null); if (false) (cookies_status.rgpdClarity ?? false) ? gdpr.clarity.enable() : gdpr.clarity.disable(); else gdpr.utils.debugLog("Microsoft Clarity ID non défini !",null); if (false) (cookies_status.rgpdPosthog ?? false) ? gdpr.posthog.enable() : gdpr.posthog.disable(); else gdpr.utils.debugLog("Posthog ID non défini !",null); }, debugLog: function(message, ...args) { if (gdpr.debug) { console.log(message, ...args); } } }, cookieManager: { first_load: function(cookies_status) { gdpr.utils.debugLog("Première visite, aucun cookie défini"); gdpr.utils.handleServiceActivation(cookies_status); document.dispatchEvent(new CustomEvent('gdpr:consent-updated', { detail: cookies_status })); }, accept: function(cookies_status) { gdpr.utils.debugLog("L'utilisateur a accepté tous les cookies", cookies_status); gdpr.utils.handleServiceActivation(cookies_status); document.dispatchEvent(new CustomEvent('gdpr:consent-updated', { detail: cookies_status })); }, reject: function(cookies_status) { gdpr.utils.debugLog("L'utilisateur a refusé les cookies", cookies_status); gdpr.utils.handleServiceActivation(cookies_status); document.dispatchEvent(new CustomEvent('gdpr:consent-updated', { detail: cookies_status })); }, load: function(cookies_status) { gdpr.utils.debugLog("Chargement de la page, vérification des services...", cookies_status); gdpr.utils.handleServiceActivation(cookies_status); document.dispatchEvent(new CustomEvent('gdpr:consent-updated', { detail: cookies_status })); } } }; // Traductions dynamiques window.gdpr.translations = {"title":"This Website uses cookies!","policy":"Privacy Policy","btnAccept":"Accept all cookies","btnReject":"Reject all cookies","btnSettings":"Configure cookies","btnSelectAll":"Select all","btnUnselectAll":"Unselect all","btnAcceptSelection":"Accept selection","header":"\u003Ch2\u003ECookie Management\u003C\/h2\u003E\u003Cp\u003ECustomize your cookie preferences to control the information collected and enhance your experience on our site. You can accept or reject each cookie according to your needs.\u003C\/p\u003E","footer":"\u003Cp\u003EYour cookie preferences can be changed at any time through this interface.\u003C\/p\u003E","message":"\u003Cp\u003EThis site uses cookies, including third-party cookies, for various purposes, such as statistical analysis and enhancing your user experience. You have the option to configure the use of each category of cookies individually according to your preferences.\u003C\/p\u003E","preferenceTitle":"Preference cookies","preferenceDescription":"\u003Cp\u003ESession and configuration cookies are essential for the proper functioning of this site. They allow, for example, maintaining your login, remembering your preferences, or ensuring the security of interactions. These cookies do not collect personal data for advertising purposes and cannot be disabled, as they are necessary to ensure an optimal user experience and the technical operation of the site.\u003C\/p\u003E"}; window.gdpr.analytics = { enable: function() { gdpr.analytics.gtagLoad(); // Mettre à jour le consentement et configurer gtag('consent', 'update', { 'analytics_storage': 'granted' }); gtag('config', "G-BK1SCP8YYK", { 'anonymize_ip': false, 'debug_mode': gdpr.debug }); gdpr.utils.debugLog("Google Analytics activé :", "G-BK1SCP8YYK"); }, disable: function() { gdpr.analytics.gtagLoad(); // Forcer GA4 en mode anonyme (sans cookies, anonymisation IP) gtag('consent', 'update', { 'analytics_storage': 'granted' }); gtag('config', "G-BK1SCP8YYK", { 'anonymize_ip': true, 'debug_mode': gdpr.debug, 'allow_google_signals': false, // Désactiver signaux Google (remarketing) 'allow_ad_personalization_signals': false // Pas de pub personnalisée }); // Supprimer cookies déjà posés (pour respecter le refus) gdpr.analytics.clearCookie(); gdpr.utils.debugLog("Google Analytics en mode ANONYME"); }, clearCookie: function() { document.cookie = '_ga=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;'; document.cookie = '_gid=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;'; document.cookie = '_gat=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;'; gdpr.utils.debugLog("Cookies Google Analytics supprimés"); }, gtagLoad: function() { if (!!document.getElementById("ga4-script")) return; if (!"G-BK1SCP8YYK") return gdpr.utils.debugLog("ID GA4 requis pour charger gtag.js, mais non défini."); var script = document.createElement("script"); script.id = "ga4-script"; script.async = true; script.src = "https://www.googletagmanager.com/gtag/js?id=G-BK1SCP8YYK"; document.head.appendChild(script); } }; // Matomo JS cookieless : chargé inconditionnellement (hors consentement) window._paq = window._paq || []; (function() { var u = "https://stats.tesweb.com/"; _paq.push(['disableCookies']); _paq.push(['setTrackerUrl', u + 'matomo.php']); _paq.push(['setSiteId', '3']); _paq.push(['trackPageView']); _paq.push(['enableLinkTracking']); var d = document, g = d.createElement('script'), s = d.getElementsByTagName('script')[0]; g.async = true; g.src = u + 'matomo.js'; s.parentNode.insertBefore(g, s); })(); document.addEventListener("DOMContentLoaded", function() { const cc = CookiesConsentJS({ expirationDays: 365, buttons : ["settings","accept"], content : { title : window.gdpr.translations.title, message : window.gdpr.translations.message, policy : window.gdpr.translations.policy, policyLink : "/ko/gdpr.html", btnAccept: window.gdpr.translations.btnAccept, btnReject: window.gdpr.translations.btnReject, btnSettings: window.gdpr.translations.btnSettings, btnDismiss: "Cookies", btnSettingsSelectAll: window.gdpr.translations.btnSelectAll, btnSettingsUnselectAll: window.gdpr.translations.btnUnselectAll, btnSettingsAccept: window.gdpr.translations.btnAcceptSelection, settingsHeader: window.gdpr.translations.header, settingsFooter: window.gdpr.translations.footer }, cookies: { preferences: { name: "rgpdPreferences", title: window.gdpr.translations.preferenceTitle, description: window.gdpr.translations.preferenceDescription, checked: true, disabled: true }, statistics: { name: "rgpdGoogleAnalytics", title: "Statistics - Google Analytics", description: "<p>The cookies used by Google Analytics allow us to measure the traffic and/or audience of our website, analyze the visited pages, and evaluate the interactions performed. If you refuse these cookies, the data will be anonymized and used solely for statistical purposes without allowing individual identification.</p>" }, }, callback: { first_load: "gdpr.cookieManager.first_load", accept: "gdpr.cookieManager.accept", reject: "gdpr.cookieManager.reject", load: "gdpr.cookieManager.load" } }); // Exposer l'instance pour piloter la bannière depuis le site window.gdpr.cc = cc; document.querySelectorAll("#gdpr-manage-cookies").forEach(function(el) { el.addEventListener("click", function(e) { e.preventDefault(); cc.printHtmlMessage(); }); }); }); </script> <link rel="preload" href="/vendor/gdpr/cookiesconsent.min.1738320683.css" as="style"> <link rel="stylesheet" href="/vendor/gdpr/cookiesconsent.min.1738320683.css" media="print" onload="this.media='all'"> <noscript><link rel="stylesheet" href="/vendor/gdpr/cookiesconsent.min.1738320683.css"></noscript> <script src="/vendor/gdpr/cookiesconsent.min.1744282164.js" defer></script> <script>// Frame-busting to prevent site from being loaded within a frame without permission (click-jacking) if (window.top != window.self) { window.top.location.replace(window.self.location.href); }</script> </head> <body id="kt_body" class="header-fixed header-tablet-and-mobile-fixed toolbar-enabled"> <script>var defaultThemeMode = "light"; var themeMode; if ( document.documentElement ) { if ( document.documentElement.hasAttribute("data-bs-theme-mode")) { themeMode = document.documentElement.getAttribute("data-bs-theme-mode"); } else { if ( localStorage.getItem("data-bs-theme") !== null ) { themeMode = localStorage.getItem("data-bs-theme"); } else { themeMode = defaultThemeMode; } } if (themeMode === "system") { themeMode = window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light"; } document.documentElement.setAttribute("data-bs-theme", themeMode); }</script> <!-- start: page --> <!--begin::Main--> <div class="d-flex flex-column flex-root"> <div class="page d-flex flex-row flex-column-fluid"> <div class="wrapper d-flex flex-column flex-row-fluid" id="kt_wrapper"> <div id="kt_header" class="header align-items-stretch mb-5 mb-lg-10" data-kt-sticky="true" data-kt-sticky-name="header" data-kt-sticky-offset="{default: '200px', lg: '300px'}"> <div class="container-xxl d-flex align-items-center"> <div class="header-logo me-5 me-md-10 flex-grow-1 flex-lg-grow-0"> <a href="/ko/"> <img src="/media/logos/logo.png" class="logo-default h-50px" alt="CVE Find - Vulnerabilities" width="44" height="50"/> </a> </div> <div class="d-flex topbar align-items-center d-lg-none ms-n2 me-3" title="Show aside menu"> <div class="btn btn-icon btn-active-light-primary btn-custom w-30px h-30px w-md-40px h-md-40px" id="kt_header_menu_mobile_toggle"> <i class="ki-duotone ki-abstract-14 fs-1"> <span class="path1"></span> <span class="path2"></span> </i> </div> </div> <div class="d-flex align-items-stretch justify-content-between flex-lg-grow-1"> <div class="d-flex align-items-stretch" id="kt_header_nav"> <div class="header-menu align-items-stretch" data-kt-drawer="true" data-kt-drawer-name="header-menu" data-kt-drawer-activate="{default: true, lg: false}" data-kt-drawer-overlay="true" data-kt-drawer-width="{default:'200px', '300px': '250px'}" data-kt-drawer-direction="start" data-kt-drawer-toggle="#kt_header_menu_mobile_toggle" data-kt-swapper="true" data-kt-swapper-mode="prepend" data-kt-swapper-parent="{default: '#kt_body', lg: '#kt_header_nav'}"> <div class="menu menu-rounded menu-column menu-lg-row menu-active-bg menu-title-gray-700 menu-state-primary menu-arrow-gray-500 fw-semibold my-5 my-lg-0 align-items-stretch px-2 px-lg-0" id="#kt_header_menu" data-kt-menu="true"> <!--begin:Menu item--> <div data-kt-menu-trigger="{default: 'click', lg: 'hover'}" data-kt-menu-placement="bottom-start" class="menu-item menu-lg-down-accordion me-0 me-lg-2"> <span class="menu-link py-3"> <span class="menu-title">취약점 (CVE)</span> <span class="menu-arrow d-lg-none"></span> </span> <div class="menu-sub menu-sub-lg-down-accordion menu-sub-lg-dropdown p-0"> <div class="menu-active-bg px-4 px-lg-0"> <div class="d-flex w-100 overflow-auto"> <ul class="nav nav-stretch nav-line-tabs fw-bold fs-6 p-0 p-lg-10 flex-nowrap flex-grow-1"> <li class="nav-item mx-lg-1"> <a class="nav-link py-3 py-lg-6 active text-active-primary" href="#" data-bs-toggle="tab" data-bs-target="#menuCve">공통 취약점 및 노출</a> </li> </ul> </div> <div class="tab-content py-4 py-lg-8 px-lg-7"> <div class="tab-pane active w-lg-1000px" id="menuCve"> <div class="row"> <div class="col-lg-8"> <div class="row"> <div class="col-lg-4 mb-6 mb-lg-0"> <nav> <div class="fs-6 fs-lg-4 fw-bold mb-3 ms-4">취약점 목록</div> <ul> <li class="menu-item p-0 m-0"> <a href="/ko/cve.html" class="menu-link menu-title"> 전체 CVE </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cve-find-cisa-kev.html" class="menu-link menu-title"> CISA - 악용된 취약점 </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cve-find-owasp.html" class="menu-link menu-title"> OWASP - 취약점 </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cve-find-category.html" class="menu-link menu-title"> 카테고리별 CVE </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/vendor.html" class="menu-link menu-title"> 벤더로 검색 </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/vendor-product.html" class="menu-link menu-title"> 제품으로 검색 </a> </li> </ul> </nav> <nav> <div class="fs-6 fs-lg-4 fw-bold mb-3 ms-4">연도별 정렬</div> <ul> <li class="menu-item p-0 m-0"> <a href="/ko/cve.html?sid=CVE-2026*" class="menu-link menu-title"> CVE 2026 </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cve.html?sid=CVE-2025*" class="menu-link menu-title"> CVE 2025 </a> </li> </ul> </nav> </div> <div class="col-lg-4 mb-6 mb-lg-0"> <nav> <div class="fs-6 fs-lg-4 fw-bold mb-3 ms-4">CVE 통계</div> <ul> <li class="menu-item p-0 m-0"> <a href="/ko/cve-statistic-date.html" class="menu-link menu-title"> 연도/월별 CVE </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cve-statistic-category.html" class="menu-link menu-title"> 카테고리별 CVE </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cve-statistic-owasp.html" class="menu-link menu-title"> OWASP별 CVE </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cve-statistic-cvss-score.html" class="menu-link menu-title"> CVSS 점수별 CVE </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cve-statistic-vendor.html" class="menu-link menu-title"> CVE가 있는 상위 100개 벤더 </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cve-statistic-product.html" class="menu-link menu-title"> CVE가 있는 상위 100개 제품 </a> </li> </ul> </nav> </div> <div class="col-lg-4 mb-6 mb-lg-0"> <nav> <div class="fs-6 fs-lg-4 fw-bold mb-3 ms-4">특수 뷰</div> <ul> <li class="menu-item p-0 m-0"> <a href="/ko/cve.html?sseverity=critical" class="menu-link menu-title"> CVE 긴급 점수 </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cve.html?sepss=0.7" class="menu-link menu-title"> CVE EPSS > 70% </a> </li> <li class="menu-item p-0 m-0 mt-4"> <a href="/ko/cve.html?sseverity=high" class="menu-link menu-title"> CVE 높은 점수 </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cve.html?svector=network" class="menu-link menu-title"> CVE 네트워크 (벡터) </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cve.html?svector=local" class="menu-link menu-title"> CVE 로컬 (벡터) </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cve.html?svector=physical" class="menu-link menu-title"> CVE 물리적 (벡터) </a> </li> </ul> </nav> </div> </div> </div> <div class="col-lg-4 d-none d-lg-block"> <span> <div class="tw-h6">CVE</div> <div class="fw-light"> CVE(공통 취약점 및 노출)는 공개적으로 공개된 컴퓨터 보안 결함 목록입니다. </div> </span> <span> <div class="tw-h6" style="padding-top:25px">OWASP</div> <div class="fw-light"> OWASP Top 10은 웹 애플리케이션의 상위 10가지 보안 취약점을 식별하고 문서화하는 이니셔티브입니다. </div> </span> <span> <div class="tw-h6" style="padding-top:25px">CISA KEV</div> <div class="fw-light"> CISA 알려진 악용 취약점(KEV)은 알려진 악용 취약점 목록을 식별하고 게시하는 이니셔티브입니다. </div> </span> </div> </div> </div> </div> </div> </div> </div> <div data-kt-menu-trigger="{default: 'click', lg: 'hover'}" data-kt-menu-placement="bottom-start" class="menu-item menu-lg-down-accordion me-0 me-lg-2"> <span class="menu-link py-3"> <span class="menu-title">제조사 & 제품 (CPE)</span> <span class="menu-arrow d-lg-none"></span> </span> <div class="menu-sub menu-sub-lg-down-accordion menu-sub-lg-dropdown p-0"> <div class="menu-active-bg px-4 px-lg-0"> <div class="d-flex w-100 overflow-auto"> <ul class="nav nav-stretch nav-line-tabs fw-bold fs-6 p-0 p-lg-10 flex-nowrap flex-grow-1"> <li class="nav-item mx-lg-1"> <a class="nav-link py-3 py-lg-6 active text-active-primary" href="#" data-bs-toggle="tab" data-bs-target="#menuVendorProduct">벤더 및 제품</a> </li> </ul> </div> <div class="tab-content py-4 py-lg-8 px-lg-7"> <div class="tab-pane active w-lg-1000px" id="menuVendorProduct"> <div class="row"> <div class="col-lg-8"> <div class="row"> <div class="col-lg-4 mb-6 mb-lg-0"> <nav> <div class="fs-6 fs-lg-4 fw-bold mb-3 ms-4">벤더 목록</div> <ul> <li class="menu-item p-0 m-0"> <a href="/ko/vendor.html" class="menu-link menu-title"> 모든 벤더 </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cve-statistic-vendor.html" class="menu-link menu-title"> CVE가 있는 상위 100개 벤더 </a> </li> </ul> </nav> </div> <div class="col-lg-4 mb-6 mb-lg-0"> <nav> <div class="fs-6 fs-lg-4 fw-bold mb-3 ms-4">제품 목록</div> <ul> <li class="menu-item p-0 m-0"> <a href="/ko/vendor-product.html" class="menu-link menu-title"> 모든 제품 </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cve-statistic-product.html" class="menu-link menu-title"> CVE가 있는 상위 100개 제품 </a> </li> </ul> </nav> </div> </div> </div> <div class="col-lg-4 d-none d-lg-block"> <div class="fw-light"> CPE(공통 플랫폼 열거)는 하드웨어, 소프트웨어 및 운영 체제의 이름을 지정하는 표준화된 체계입니다. </div> </div> </div> </div> </div> </div> </div> </div> <div data-kt-menu-trigger="{default: 'click', lg: 'hover'}" data-kt-menu-placement="bottom-start" class="menu-item menu-lg-down-accordion me-0 me-lg-2"> <span class="menu-link py-3"> <span class="menu-title">약점 (CWE)</span> <span class="menu-arrow d-lg-none"></span> </span> <div class="menu-sub menu-sub-lg-down-accordion menu-sub-lg-dropdown p-0"> <div class="menu-active-bg px-4 px-lg-0"> <div class="d-flex w-100 overflow-auto"> <ul class="nav nav-stretch nav-line-tabs fw-bold fs-6 p-0 p-lg-10 flex-nowrap flex-grow-1"> <li class="nav-item mx-lg-1"> <a class="nav-link py-3 py-lg-6 active text-active-primary" href="#" data-bs-toggle="tab" data-bs-target="#menuCwe">공통 약점 열거</a> </li> </ul> </div> <div class="tab-content py-4 py-lg-8 px-lg-7"> <div class="tab-pane active w-lg-1000px" id="menuCwe"> <div class="row"> <div class="col-lg-8"> <div class="row"> <div class="col-lg-4 mb-6 mb-lg-0"> <nav> <div class="fs-6 fs-lg-4 fw-bold mb-3 ms-4">CWE 목록</div> <ul> <li class="menu-item p-0 m-0"> <a href="/ko/cwe.html" class="menu-link menu-title"> 전체 CWE </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cwe-view.html" class="menu-link menu-title"> CWE 뷰 </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cwe-category.html" class="menu-link menu-title"> CWE 카테고리 </a> </li> </ul> </nav> </div> <div class="col-lg-4 mb-6 mb-lg-0"> <nav> <div class="fs-6 fs-lg-4 fw-bold mb-3 ms-4">특수 뷰</div> <ul> <li class="menu-item p-0 m-0"> <a href="/ko/cwe/cwe-1425.html" class="menu-link menu-title"> CWE Top 25 (2023) </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cwe/cwe-1387.html" class="menu-link menu-title"> CWE Top 25 (2022) </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cwe/cwe-1337.html" class="menu-link menu-title"> CWE Top 25 (2021) </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cwe/cwe-699.html" class="menu-link menu-title"> 소프트웨어 개발 </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cwe/cwe-1194.html" class="menu-link menu-title"> 하드웨어 설계 </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cwe/cwe-1000.html" class="menu-link menu-title"> 연구 개념 </a> </li> </ul> </nav> </div> <div class="col-lg-4 mb-6 mb-lg-0"> <nav> <div class="fs-6 fs-lg-4 fw-bold mb-3 ms-4">최신 CWE 5개</div> <ul> <li class="menu-item p-0 m-0"> <a href="/ko/cwe/cwe-1463.html" class="menu-link menu-title" style="display: block;"> CWE-1463 <div><span class='text-muted fs-8'>(2026-10-28 00:00 +00:00)</span></div> </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cwe/cwe-1462.html" class="menu-link menu-title" style="display: block;"> CWE-1462 <div><span class='text-muted fs-8'>(2026-10-28 00:00 +00:00)</span></div> </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cwe/cwe-1466.html" class="menu-link menu-title" style="display: block;"> CWE-1466 <div><span class='text-muted fs-8'>(2026-10-28 00:00 +00:00)</span></div> </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cwe/cwe-1465.html" class="menu-link menu-title" style="display: block;"> CWE-1465 <div><span class='text-muted fs-8'>(2026-10-28 00:00 +00:00)</span></div> </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/cwe/cwe-1464.html" class="menu-link menu-title" style="display: block;"> CWE-1464 <div><span class='text-muted fs-8'>(2026-10-28 00:00 +00:00)</span></div> </a> </li> </ul> </nav> </div> </div> </div> <div class="col-lg-4 d-none d-lg-block"> <div class="fw-light"> CWE(공통 약점 열거)는 소프트웨어 약점 및 취약점의 포괄적인 목록 및 분류입니다. </div> </div> </div> </div> </div> </div> </div> </div> <div data-kt-menu-trigger="{default: 'click', lg: 'hover'}" data-kt-menu-placement="bottom-start" class="menu-item menu-lg-down-accordion me-0 me-lg-2"> <span class="menu-link py-3"> <span class="menu-title">공격 패턴 (CAPEC)</span> <span class="menu-arrow d-lg-none"></span> </span> <div class="menu-sub menu-sub-lg-down-accordion menu-sub-lg-dropdown p-0"> <div class="menu-active-bg px-4 px-lg-0"> <div class="d-flex w-100 overflow-auto"> <ul class="nav nav-stretch nav-line-tabs fw-bold fs-6 p-0 p-lg-10 flex-nowrap flex-grow-1"> <li class="nav-item mx-lg-1"> <a class="nav-link py-3 py-lg-6 active text-active-primary" href="#" data-bs-toggle="tab" data-bs-target="#menuCapec">공통 공격 패턴 열거 및 분류</a> </li> </ul> </div> <div class="tab-content py-4 py-lg-8 px-lg-7"> <div class="tab-pane active w-lg-1000px" id="menuCapec"> <div class="row"> <div class="col-lg-8"> <div class="row"> <div class="col-lg-4 mb-6 mb-lg-0"> <nav> <div class="fs-6 fs-lg-4 fw-bold mb-3 ms-4">CAPEC 목록</div> <ul> <li class="menu-item p-0 m-0"> <a href="/ko/capec.html" class="menu-link menu-title"> 전체 CAPEC </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/capec-view.html" class="menu-link menu-title"> CAPEC 뷰 </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/capec-category.html" class="menu-link menu-title"> CAPEC 카테고리 </a> </li> </ul> </nav> </div> <div class="col-lg-4 mb-6 mb-lg-0"> <nav> <div class="fs-6 fs-lg-4 fw-bold mb-3 ms-4">특수 뷰</div> <ul> <li class="menu-item p-0 m-0"> <a href="/ko/capec/capec-1000.html" class="menu-link menu-title"> 공격 메커니즘 </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/capec/capec-3000.html" class="menu-link menu-title"> 공격 도메인 </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/capec/capec-333.html" class="menu-link menu-title"> WASC 위협 분류 2.0 </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/capec/capec-658.html" class="menu-link menu-title"> ATT&CK 관련 패턴 </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/capec/capec-659.html" class="menu-link menu-title"> OWASP 관련 패턴 </a> </li> </ul> </nav> </div> <div class="col-lg-4 mb-6 mb-lg-0"> <nav> <div class="fs-6 fs-lg-4 fw-bold mb-3 ms-4">최신 CAPEC 5개</div> <ul> <li class="menu-item p-0 m-0"> <a href="/ko/capec/capec-701.html" class="menu-link menu-title" style="display: block;"> CAPEC-701 <div><span class='text-muted fs-8'>(2023-01-24 00:00 +00:00)</span></div> </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/capec/capec-700.html" class="menu-link menu-title" style="display: block;"> CAPEC-700 <div><span class='text-muted fs-8'>(2023-01-24 00:00 +00:00)</span></div> </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/capec/capec-702.html" class="menu-link menu-title" style="display: block;"> CAPEC-702 <div><span class='text-muted fs-8'>(2023-01-24 00:00 +00:00)</span></div> </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/capec/capec-699.html" class="menu-link menu-title" style="display: block;"> CAPEC-699 <div><span class='text-muted fs-8'>(2023-01-24 00:00 +00:00)</span></div> </a> </li> <li class="menu-item p-0 m-0"> <a href="/ko/capec/capec-691.html" class="menu-link menu-title" style="display: block;"> CAPEC-691 <div><span class='text-muted fs-8'>(2022-09-29 00:00 +00:00)</span></div> </a> </li> </ul> </nav> </div> </div> </div> <div class="col-lg-4 d-none d-lg-block"> <div class="fw-light"> CAPEC(공통 공격 패턴 열거 및 분류)은 사이버 공격에서 적대자가 사용하는 공통 공격 패턴을 문서화하는 리소스입니다. </div> </div> </div> </div> </div> </div> </div> </div> <div data-kt-menu-trigger="{default: 'click', lg: 'hover'}" data-kt-menu-placement="bottom-start" class="menu-item menu-lg-down-accordion me-0 me-lg-2"> <span class="menu-link py-3"> <span class="menu-title">서비스 & 가격</span> <span class="menu-arrow d-lg-none"></span> </span> <div class="menu-sub menu-sub-lg-down-accordion menu-sub-lg-dropdown px-lg-2 py-lg-4 w-lg-200px"> <nav> <ul> <li class="menu-item"> <a class="menu-link py-3" href="/ko/plan-price.html" data-bs-toggle="tooltip" data-bs-trigger="hover" data-bs-dismiss="click" data-bs-placement="right" data-bs-original-title="" data-kt-initialized="1"> <span class="menu-icon"> <i class="ki-duotone ki-rocket fs-2"> <span class="path1"></span> <span class="path2"></span> </i> </span> <span class="menu-title">가격 및 라이선스</span> </a> </li> <li class="menu-item"> <a class="menu-link py-3" href="/ko/sign-up.html" data-bs-toggle="tooltip" data-bs-trigger="hover" data-bs-dismiss="click" data-bs-placement="right" data-bs-original-title="" data-kt-initialized="1" target="_blank"> <span class="menu-icon"> <i class="ki-duotone ki-abstract-10 fs-2"> <span class="path1"></span> <span class="path2"></span> </i> </span> <span class="menu-title">계정 만들기</span> </a> </li> </ul> </nav> </div> </div> <div data-kt-menu-trigger="{default: 'click', lg: 'hover'}" data-kt-menu-placement="bottom-start" class="menu-item menu-lg-down-accordion me-0 me-lg-2"> <span class="menu-link py-3"> <span class="menu-title">도움말 & 정보</span> <span class="menu-arrow d-lg-none"></span> </span> <div class="menu-sub menu-sub-lg-down-accordion menu-sub-lg-dropdown px-lg-2 py-lg-4 w-lg-200px"> <nav> <ul> <li class="menu-item"> <a class="menu-link py-3" href="/ko/faq.html" data-bs-toggle="tooltip" data-bs-trigger="hover" data-bs-dismiss="click" data-bs-placement="right" data-bs-original-title="" data-kt-initialized="1"> <span class="menu-icon"> <i class="ki-duotone ki-abstract-33 fs-2"> <span class="path1"></span> <span class="path2"></span> </i> </span> <span class="menu-title">FAQ & 도움말</span> </a> </li> <li class="menu-item"> <a class="menu-link py-3" href="/ko/blog.html" data-bs-toggle="tooltip" data-bs-trigger="hover" data-bs-dismiss="click" data-bs-placement="right" data-bs-original-title="" data-kt-initialized="1"> <span class="menu-icon"> <i class="ki-duotone ki-like-shapes fs-2"> <span class="path1"></span> <span class="path2"></span> </i> </span> <span class="menu-title">블로그 & 기사</span> </a> </li> <li class="menu-item"> <a class="menu-link py-3" href="/ko/official.html" data-bs-toggle="tooltip" data-bs-trigger="hover" data-bs-dismiss="click" data-bs-placement="right" data-bs-original-title="" data-kt-initialized="1"> <span class="menu-icon"> <i class="ki-duotone ki-simcard-2 fs-2"> <span class="path1"></span> <span class="path2"></span> </i> </span> <span class="menu-title">데이터베이스 파트너</span> </a> </li> <li class="menu-item"> <a class="menu-link py-3" href="/ko/contact.html" data-bs-toggle="tooltip" data-bs-trigger="hover" data-bs-dismiss="click" data-bs-placement="right" data-bs-original-title="" data-kt-initialized="1"> <span class="menu-icon"> <i class="ki-duotone ki-messages fs-2"> <span class="path1"></span> <span class="path2"></span> <span class="path3"></span> <span class="path4"></span> <span class="path5"></span> </i> </span> <span class="menu-title">문의하기</span> </a> </li> </ul> </nav> </div> </div> </div> </div> </div> <div class="topbar d-flex align-items-stretch flex-shrink-0"> <div class="d-flex align-items-stretch ms-1 ms-lg-3"> <div id="ktSearch" class="header-search d-flex align-items-stretch" data-kt-search-keypress="true" data-kt-search-min-length="3" data-kt-search-enter="enter" data-kt-search-layout="menu" data-kt-menu-trigger="auto" data-kt-menu-overflow="false" data-kt-menu-permanent="true" data-kt-menu-placement="bottom-end"> <div class="d-flex align-items-center" data-kt-search-element="toggle" id="kt_header_search_toggle"> <div class="btn btn-icon btn-active-light-primary btn-custom w-30px h-30px w-md-40px h-md-40px"> <i class="ki-duotone ki-magnifier fs-1"> <span class="path1"></span> <span class="path2"></span> </i> </div> </div> <div data-kt-search-element="content" class="menu menu-sub menu-sub-dropdown p-7 w-325px w-md-375px"> <div data-kt-search-element="wrapper"> <form data-kt-search-element="form" class="w-100 position-relative mb-3" autocomplete="off"> <i class="ki-duotone ki-magnifier fs-2 text-gray-500 position-absolute top-50 translate-middle-y ms-0"> <span class="path1"></span> <span class="path2"></span> </i> <input type="text" class="search-input form-control form-control-solid ps-10" name="search" value="" placeholder="검색..." data-kt-search-element="input" /> <span class="search-spinner position-absolute top-50 end-0 translate-middle-y lh-0 d-none me-1" data-kt-search-element="spinner"> <span class="spinner-border h-15px w-15px align-middle text-gray-500"></span> </span> <span class="search-reset btn btn-flush btn-active-color-primary position-absolute top-50 end-0 translate-middle-y lh-0 d-none" data-kt-search-element="clear"> <i class="ki-duotone ki-cross fs-2 fs-lg-1 me-0"> <span class="path1"></span> <span class="path2"></span> </i> </span> </form> <div data-kt-search-element="suggestions"> <span class="text-muted fw-semibold"> 검색: CVE ID, CWE ID, CAPEC ID, 벤더 또는 CVE 키워드 </span> </div> <div class="separator border-gray-200 mb-6"></div> <div data-kt-search-element="results" class="d-none"> <div class="scroll-y mh-250px mh-lg-350px" data-kt-search-element="items"> </div> </div> <div data-kt-search-element="main" class="mb-5"> <div class="d-flex flex-stack fw-semibold mb-4"> <span class="text-muted fs-6 me-2">최근 검색:</span> </div> <div class="scroll-y mh-250px mh-lg-325px" data-kt-search-element="itemsRecently"> </div> </div> <div data-kt-search-element="empty" class="text-center d-none"> <div class="pt-10 pb-10"> <i class="ki-duotone ki-search-list fs-4x opacity-50"> <span class="path1"></span> <span class="path2"></span> <span class="path3"></span> </i> </div> <div class="pb-15 fw-semibold"> <div class="text-gray-600 fs-5 mb-2">결과 없음</div> <div class="text-muted fs-7">다른 검색어로 다시 시도하세요</div> </div> </div> </div> </div> </div> </div> <div class="d-flex align-items-center ms-1 ms-lg-3"> <a href="#" class="btn btn-icon btn-active-light-primary btn-custom w-30px h-30px w-md-40px h-md-40px" data-kt-menu-trigger="{default:'click', lg: 'hover'}" data-kt-menu-attach="parent" data-kt-menu-placement="bottom-end"> <img class="rounded-1 fs-1" src="/media/flags/south-korea.svg" style="width:1em;height:1em;" alt="" /> </a> <div class="menu menu-sub menu-sub-dropdown menu-column menu-rounded menu-title-gray-700 menu-icon-gray-500 menu-active-bg menu-state-color fw-semibold py-4 fs-base w-175px" data-kt-menu="true"> <nav> <ul> <li class="menu-item px-3 my-0"> <a href="/en/" class="menu-link d-flex px-5 "> <span class="symbol symbol-20px me-4"> <img class="rounded-1" src="/media/flags/united-states.svg" alt="" /> </span>English </a> </li> <li class="menu-item px-3 my-0"> <a href="/fr/" class="menu-link d-flex px-5 "> <span class="symbol symbol-20px me-4"> <img class="rounded-1" src="/media/flags/france.svg" alt="" /> </span>Français </a> </li> <li class="menu-item px-3 my-0"> <a href="/de/" class="menu-link d-flex px-5 "> <span class="symbol symbol-20px me-4"> <img class="rounded-1" src="/media/flags/germany.svg" alt="" /> </span>Deutsch </a> </li> <li class="menu-item px-3 my-0"> <a href="/es/" class="menu-link d-flex px-5 "> <span class="symbol symbol-20px me-4"> <img class="rounded-1" src="/media/flags/spain.svg" alt="" /> </span>Español </a> </li> <li class="menu-item px-3 my-0"> <a href="/it/" class="menu-link d-flex px-5 "> <span class="symbol symbol-20px me-4"> <img class="rounded-1" src="/media/flags/italy.svg" alt="" /> </span>Italiano </a> </li> <li class="menu-item px-3 my-0"> <a href="/pt/" class="menu-link d-flex px-5 "> <span class="symbol symbol-20px me-4"> <img class="rounded-1" src="/media/flags/brazil.svg" alt="" /> </span>Português </a> </li> <li class="menu-item px-3 my-0"> <a href="/nl/" class="menu-link d-flex px-5 "> <span class="symbol symbol-20px me-4"> <img class="rounded-1" src="/media/flags/netherlands.svg" alt="" /> </span>Nederlands </a> </li> <li class="menu-item px-3 my-0"> <a href="/pl/" class="menu-link d-flex px-5 "> <span class="symbol symbol-20px me-4"> <img class="rounded-1" src="/media/flags/poland.svg" alt="" /> </span>Polski </a> </li> <li class="menu-item px-3 my-0"> <a href="/ja/" class="menu-link d-flex px-5 "> 日本語 </a> </li> <li class="menu-item px-3 my-0"> <a href="/zh-hans/" class="menu-link d-flex px-5 "> 简体中文 </a> </li> <li class="menu-item px-3 my-0"> <a href="/zh-hant/" class="menu-link d-flex px-5 "> 繁體中文 </a> </li> <li class="menu-item px-3 my-0"> <a href="/ko/" class="menu-link d-flex px-5 active"> <span class="symbol symbol-20px me-4"> <img class="rounded-1" src="/media/flags/south-korea.svg" alt="" /> </span>한국어 </a> </li> <li class="menu-item px-3 my-0"> <a href="/id/" class="menu-link d-flex px-5 "> <span class="symbol symbol-20px me-4"> <img class="rounded-1" src="/media/flags/indonesia.svg" alt="" /> </span>Bahasa Indonesia </a> </li> <li class="menu-item px-3 my-0"> <a href="/vi/" class="menu-link d-flex px-5 "> <span class="symbol symbol-20px me-4"> <img class="rounded-1" src="/media/flags/vietnam.svg" alt="" /> </span>Tiếng Việt </a> </li> </ul> </nav> </div> </div> <div class="d-flex align-items-center ms-1 ms-lg-3"> <a href="#" class="btn btn-icon btn-active-light-primary btn-custom w-30px h-30px w-md-40px h-md-40px" data-kt-menu-trigger="{default:'click', lg: 'hover'}" data-kt-menu-attach="parent" data-kt-menu-placement="bottom-end"> <i class="ki-duotone ki-night-day theme-light-show fs-1"> <span class="path1"></span> <span class="path2"></span> <span class="path3"></span> <span class="path4"></span> <span class="path5"></span> <span class="path6"></span> <span class="path7"></span> <span class="path8"></span> <span class="path9"></span> <span class="path10"></span> </i> <i class="ki-duotone ki-moon theme-dark-show fs-1"> <span class="path1"></span> <span class="path2"></span> </i> </a> <div class="menu menu-sub menu-sub-dropdown menu-column menu-rounded menu-title-gray-700 menu-icon-gray-500 menu-active-bg menu-state-color fw-semibold py-4 fs-base w-150px" data-kt-menu="true" data-kt-element="theme-mode-menu"> <nav> <ul> <li class="menu-item px-3 my-0"> <a href="#" class="menu-link px-3 py-2" data-kt-element="mode" data-kt-value="light"> <span class="menu-icon" data-kt-element="icon"> <i class="ki-duotone ki-night-day fs-2"> <span class="path1"></span> <span class="path2"></span> <span class="path3"></span> <span class="path4"></span> <span class="path5"></span> <span class="path6"></span> <span class="path7"></span> <span class="path8"></span> <span class="path9"></span> <span class="path10"></span> </i> </span> <span class="menu-title">라이트</span> </a> </li> <li class="menu-item px-3 my-0"> <a href="#" class="menu-link px-3 py-2" data-kt-element="mode" data-kt-value="dark"> <span class="menu-icon" data-kt-element="icon"> <i class="ki-duotone ki-moon fs-2"> <span class="path1"></span> <span class="path2"></span> </i> </span> <span class="menu-title">다크</span> </a> </li> <li class="menu-item px-3 my-0"> <a href="#" class="menu-link px-3 py-2" data-kt-element="mode" data-kt-value="system"> <span class="menu-icon" data-kt-element="icon"> <i class="ki-duotone ki-screen fs-2"> <span class="path1"></span> <span class="path2"></span> <span class="path3"></span> <span class="path4"></span> </i> </span> <span class="menu-title">시스템</span> </a> </li> </ul> </nav> </div> </div> <div class="d-flex align-items-center ms-1 ms-lg-3"> <div class="btn btn-icon btn-active-light-primary btn-custom w-30px h-30px w-md-40px h-md-40px" data-kt-menu-trigger="{default:'click', lg: 'hover'}" data-kt-menu-attach="parent" data-kt-menu-placement="bottom-end"> <i class="ki-duotone ki-user-square fs-1"> <span class="path1"></span> <span class="path2"></span> <span class="path3"></span> </i> </div> <div class="menu menu-sub menu-sub-dropdown menu-column w-250px w-lg-325px" data-kt-menu="true" data-popper-placement="bottom-end" style="z-index: 107; position: fixed; inset: 0px 0px auto auto; margin: 0px; transform: translate(-123px, 61px);"> <nav> <div class="d-flex flex-column flex-center bgi-no-repeat rounded-top px-9 py-10" style="background-image:url('/media/misc/menu-header-bg.jpg')"> <div class="text-white fw-semibold mb-3">CVE Find - 알림 시스템</div> <span class="badge bg-primary text-inverse-primary py-2 px-3">언제나 최신 정보 파악</span> </div> <ul> <li> <a href="/ko/sign-up.html" class="d-flex flex-column flex-center h-100 p-6 bg-hover-light border-end border-bottom" target="_blank"> <i class="ki-duotone ki-abstract-10 fs-3x text-primary mb-2"> <span class="path1"></span> <span class="path2"></span> </i> <span class="fs-5 fw-semibold text-gray-800 mb-0">무료 계정 만들기</span> <span class="fs-7 text-gray-500">무료 계정 열기</span> </a> </li> <li> <a href="/ko/sign-in.html" class="d-flex flex-column flex-center h-100 p-6 bg-hover-light border-end border-bottom" target="_blank"> <i class="ki-duotone ki-security-user fs-3x text-primary mb-2"> <span class="path1"></span> <span class="path2"></span> </i> <span class="fs-5 fw-semibold text-gray-800 mb-0">계정에 로그인</span> <span class="fs-7 text-gray-500">알림 관리</span> </a> </li> </ul> </nav> </div> </div> </div> </div> </div> </div> <div class="toolbar py-5 pb-lg-15" id="kt_toolbar"> <div id="kt_toolbar_container" class="container-xxl d-flex flex-stack flex-wrap"> <div class="page-title d-flex flex-column me-3"> <h1 class="d-flex text-white fw-bold my-1 fs-3">CVE-2026-50190 : 상세 정보</h1> <ul class="breadcrumb breadcrumb-separatorless fw-semibold fs-7 my-1"> <li class="breadcrumb-item text-white opacity-75"> <a href="/ko/" class="text-white text-hover-primary">홈</a> </li> <li class="breadcrumb-item"> <span class="bullet bg-white opacity-75 w-5px h-2px"></span> </li> <li class="breadcrumb-item text-white opacity-75"> <a href="/ko/cve.html" class="text-white text-hover-primary">공통 취약점 및 노출(CVE)</a> </li> <li class="breadcrumb-item"> <span class="bullet bg-white opacity-75 w-5px h-2px"></span> </li> <li class="breadcrumb-item text-white opacity-75"> CVE-2026-50190 : 상세 정보 </li> </ul> </div> </div> </div> <!--begin::Container--> <div id="kt_content_container" class="d-flex flex-column-fluid align-items-start container-xxl"> <div class="content flex-row-fluid" id="kt_content"> <div class="d-flex flex-column flex-lg-row"> <div class="w-100 flex-lg-row-auto w-lg-300px mb-7 me-7 me-lg-10"> <div class="card card-flush py-4"> <div class="card-header"> <div class="card-title"> <h2>CVE-2026-50190</h2> </div> </div> <div class="card-body pt-0"> <div class="d-flex flex-column gap-10"> <div class="row"> <div class="fv-row col-12 col-sm-6 col-lg-12 infoDetail"> <label class="form-label">게시일</label> <div class="fw-bold fs-3">2026-08-20<br><span class='fs-7'> 19h16</span><span class='fs-9'> +00:00</span></div> </div> </div> </div> </div> </div> <div class="ea-slot my-7 d-none d-lg-block" data-ea-anchor="desktop" data-ea-pub="cvefindcom" data-ea-type="image" data-ea-format="horizontal" data-ea-kw="security|cybersecurity|vulnerability|cve"></div> <div class="card card-flush py-4"> <div class="card-body pt-0"> <div class="d-flex flex-column gap-10"> <div class="row"> <div class="fv-row col-12 col-sm-6 col-lg-12 infoDetail"> <label class="form-label">카테고리</label> <div class="fw-bold fs-3"> <span class="badge badge-light badge-lg">Cross-site Scripting</span> </div> </div> <div class="fv-row col-12 col-sm-6 col-lg-12 infoDetail"> <label class="form-label">OWASP</label> <div class="fw-bold fs-3"> <span class="badge badge-light badge-lg">A03-Injection</span> </div> </div> <div class="fv-row col-12 col-sm-6 col-lg-12 infoDetail"> <label class="form-label">수정일</label> <div class="fw-bold fs-3">2026-10-26<br><span class='fs-7'> 10h10</span><span class='fs-9'> +00:00</span></div> </div> <div class="fv-row col-12 col-sm-6 col-lg-12 infoDetail"> <label class="form-label">공식 링크</label> <div class="fw-bold fs-3"><a href='https://www.cve.org/CVERecord?id=CVE-2026-50190' target='_blank'>CVE.org <i class="ki-duotone ki-exit-right-corner" style="font-size: 10px;vertical-align:8px"><span class="path1"></span><span class="path2"></span></i></a></div> <div class="fw-bold fs-3"><a href='https://nvd.nist.gov/vuln/detail/CVE-2026-50190' target='_blank'>NVD <i class="ki-duotone ki-exit-right-corner" style="font-size: 10px;vertical-align:8px"><span class="path1"></span><span class="path2"></span></i></a></div> </div> </div> </div> </div> </div> <div class="mt-4"> <div class="card card-body d-flex align-items-center justify-content-between flex-wrap p-4" style="background-color: #071437;"> <div class="me-2"> <div class="fw-bold text-gray-800 mb-0 tw-h3" style="color: #ffffff !important;">특정 CVE 알림</div> <div class="text-muted fw-semibold fs-6" style="color: #d3d3d3 !important;">특정 CVE의 변경 사항에 대한 정보를 받아보세요.</div> </div> <a href="#" class="btn btn-primary fw-semibold p-2 mt-4" name="linkModalManageAlert" data-twmodal="kt_modal_alert_cveSpecAlert"> 알림 관리 </a> </div> <div class="modal fade" id="kt_modal_alert_cveSpecAlert" tabindex="-1" aria-hidden="true" data-twtype="cveSpecAlert" data-twidonly="CVE-2026-50190" style="text-align: left;"> <div class="modal-dialog modal-dialog-centered" style="max-width:1200px!important" temp="mw-1000px"> <div class="modal-content rounded"> <div class="modal-header pb-0 border-0 justify-content-end"> <div class="btn btn-sm btn-icon btn-active-color-primary" data-bs-dismiss="modal"> <i class="ki-duotone ki-cross fs-1"> <span class="path1"></span> <span class="path2"></span> </i> </div> </div> <div class="modal-body scroll-y px-10 px-lg-15 pt-0 pb-15"> <div class="row"> <div class="col-lg-3 card"> <div class="mt-4 mb-8"> <div class="text-center"> <div class="mb-3 tw-h2">맞춤 알림</div> </div> <div class=""> <div class="alert alert-dismissible bg-light-primary d-flex flex-column flex-sm-row w-100 p-5 mb-10"> <i class="ki-duotone ki-search-list fs-2hx text-primary me-4 mb-5 mb-sm-0"><span class="path1"></span><span class="path2"></span><span class="path3"></span></i> <!--end::Icon--> <div class="d-flex flex-column pe-0 pe-sm-10"> <div class="fw-semibold tw-h4">개인 알림을 활성화하세요!</div> <span>알림을 활성화하려면 무료 계정에 로그인하기만 하면 됩니다. 아직 로그인하지 않으셨다면 아래 옵션 중 하나를 선택하세요.</span> </div> </div> <div class="text-center"> <a href="/ko/sign-in.html" class="btn btn-primary fw-semibold p-2 mt-4">계정에 로그인</a> <a href="/ko/sign-up.html" class="btn btn-primary fw-semibold p-2 mt-4">무료 계정 만들기</a> </div> </div> </div> </div> <div class="col-lg-9 ps-8"> <form class="form" > <div class="mb-8 text-center"> <div class="tw-h3" class="mb-3 tw-h2">특정 CVE 알림</div> <div class="text-muted fw-semibold fs-5">특정 CVE의 변경 사항에 대한 정보를 받아보세요.</div> <div class="text-muted fs-7">알림 발송 기준: 마지막 알림과 비교하여 CISA, EPSS, CVSS, CWE, 솔루션, CPE의 차이.</div> </div> <div class="tw-h3">매개변수</div> <div class="d-flex flex-column fv-row mb-4"> <label class="d-flex align-items-center fs-6 fw-semibold mb-2"> <span class=""></span> 발송될 알림에서 검색할 수 있는 제목을 지정할 수 있습니다. <span class="ms-1" data-bs-toggle="tooltip" title="알림 제목"> <i class="ki-duotone ki-information-5 text-gray-500 fs-6"> <span class="path1"></span> <span class="path2"></span> <span class="path3"></span> </i> </span> </label> <input type="text" class="form-control form-control-solid" placeholder="" name="globalTitle" /> </div> <div class="d-flex flex-column fv-row mb-4"> <label class="d-flex align-items-center fs-6 fw-semibold mb-2 required"> <span class=""></span> CVE-2025-1234 형식으로 CVE ID를 입력하세요 </label> <input type="text" class="form-control form-control-solid" placeholder="CVE-2026-1234" name="paramId" data-twdefault="CVE-2026-50190" /> </div> <div class="separator my-5"></div> <div class="tw-h3">예약</div> <div name="twCronRoot" data-twdefault="month"> <label class="required fs-6 fw-semibold mb-4 d-block">빈도?</label> <div class="row g-5 mb-4"> <div class="col-12 col-md-6 col-xl-3"> <div class="btn btn-outline btn-outline-dashed btn-active-light-primary d-flex flex-column text-start p-5 h-100 opacity-75" data-twfreqcard="hour" data-twlocked="1"> <div class="d-flex justify-content-between w-100 mb-2"> <i class="ki-duotone ki-timer fs-2x text-primary"><span class="path1"></span><span class="path2"></span><span class="path3"></span></i> <span class="badge badge-warning"> <i class="ki-duotone ki-lock-2 fs-8 me-1"><span class="path1"></span><span class="path2"></span><span class="path3"></span><span class="path4"></span><span class="path5"></span></i>상위 플랜 필요 </span> </div> <span class="fw-bold fs-6 text-gray-900">매 시간</span> <span class="text-muted fs-7">게시에 즉각적인 반응</span> </div> </div> <div class="col-12 col-md-6 col-xl-3"> <div class="btn btn-outline btn-outline-dashed btn-active-light-primary d-flex flex-column text-start p-5 h-100 opacity-75" data-twfreqcard="day" data-twlocked="1"> <div class="d-flex justify-content-between w-100 mb-2"> <i class="ki-duotone ki-sun fs-2x text-primary"><span class="path1"></span><span class="path2"></span><span class="path3"></span><span class="path4"></span><span class="path5"></span><span class="path6"></span><span class="path7"></span><span class="path8"></span><span class="path9"></span></i> <span class="badge badge-warning"> <i class="ki-duotone ki-lock-2 fs-8 me-1"><span class="path1"></span><span class="path2"></span><span class="path3"></span><span class="path4"></span><span class="path5"></span></i>상위 플랜 필요 </span> </div> <span class="fw-bold fs-6 text-gray-900">매일</span> <span class="text-muted fs-7">선택한 요일에 이메일 발송</span> </div> </div> <div class="col-12 col-md-6 col-xl-3"> <div class="btn btn-outline btn-outline-dashed btn-active-light-primary d-flex flex-column text-start p-5 h-100 opacity-75" data-twfreqcard="week" data-twlocked="1"> <div class="d-flex justify-content-between w-100 mb-2"> <i class="ki-duotone ki-calendar fs-2x text-primary"><span class="path1"></span><span class="path2"></span></i> <span class="badge badge-warning"> <i class="ki-duotone ki-lock-2 fs-8 me-1"><span class="path1"></span><span class="path2"></span><span class="path3"></span><span class="path4"></span><span class="path5"></span></i>상위 플랜 필요 </span> </div> <span class="fw-bold fs-6 text-gray-900">매주</span> <span class="text-muted fs-7">선택한 날에 요약 발송</span> </div> </div> <div class="col-12 col-md-6 col-xl-3"> <div class="btn btn-outline btn-outline-dashed btn-active-light-primary d-flex flex-column text-start p-5 h-100 active" data-twfreqcard="month"> <div class="d-flex justify-content-between w-100 mb-2"> <i class="ki-duotone ki-calendar fs-2x text-primary"><span class="path1"></span><span class="path2"></span></i> </div> <span class="fw-bold fs-6 text-gray-900">매월</span> <span class="text-muted fs-7">월간 요약</span> </div> </div> </div> <div class="card bg-light mb-4"> <div class="card-body py-6"> <div class="row g-6 d-none" data-twpanel="hour"> <div class="col-12 fv-row"> <label class="required fs-6 fw-semibold mb-2">시간</label> <div class="w-300px"> <select twrole="hourMode" data-twnotchg="true" class="form-select form-select-solid" data-control="select2" data-hide-search="true"> <option value="every" selected>매 시간</option> <option disabled value="every15">15분마다 (상위 플랜 필요)</option> <option disabled value="every30">30분마다 (상위 플랜 필요)</option> </select> </div> </div> <div class="col-12 fv-row" data-twcol="hourMinute"> <label class="required fs-6 fw-semibold mb-2">분</label> <div class="w-150px"> <select twrole="hourMinute" data-twnotchg="true" class="form-select form-select-solid" data-control="select2" data-hide-search="true"> <option value="0" selected>00</option><option value="5">05</option><option value="10">10</option><option value="15">15</option><option value="20">20</option><option value="25">25</option><option value="30">30</option><option value="35">35</option><option value="40">40</option><option value="45">45</option><option value="50">50</option><option value="55">55</option> </select> </div> </div> </div> <div class="row g-6 d-none" data-twpanel="day"> <div class="col-12 fv-row"> <label class="required fs-6 fw-semibold mb-2">적용 요일</label> <div class="d-flex flex-wrap gap-5 pt-1"> <label class="form-check form-check-custom form-check-solid"> <input class="form-check-input" type="checkbox" twrole="dayWeekday" data-twnotchg="true" value="1" checked/> <span class="form-check-label text-gray-800">월요일</span> </label> <label class="form-check form-check-custom form-check-solid"> <input class="form-check-input" type="checkbox" twrole="dayWeekday" data-twnotchg="true" value="2" checked/> <span class="form-check-label text-gray-800">화요일</span> </label> <label class="form-check form-check-custom form-check-solid"> <input class="form-check-input" type="checkbox" twrole="dayWeekday" data-twnotchg="true" value="3" checked/> <span class="form-check-label text-gray-800">수요일</span> </label> <label class="form-check form-check-custom form-check-solid"> <input class="form-check-input" type="checkbox" twrole="dayWeekday" data-twnotchg="true" value="4" checked/> <span class="form-check-label text-gray-800">목요일</span> </label> <label class="form-check form-check-custom form-check-solid"> <input class="form-check-input" type="checkbox" twrole="dayWeekday" data-twnotchg="true" value="5" checked/> <span class="form-check-label text-gray-800">금요일</span> </label> <label class="form-check form-check-custom form-check-solid"> <input class="form-check-input" type="checkbox" twrole="dayWeekday" data-twnotchg="true" value="6" checked/> <span class="form-check-label text-gray-800">토요일</span> </label> <label class="form-check form-check-custom form-check-solid"> <input class="form-check-input" type="checkbox" twrole="dayWeekday" data-twnotchg="true" value="7" checked/> <span class="form-check-label text-gray-800">일요일</span> </label> </div> </div> <div class="col-12 fv-row"> <label class="required fs-6 fw-semibold mb-2">실행 시간 (UTC)</label> <input type="time" twrole="dayTime" data-twnotchg="true" class="form-control form-control-solid w-150px" value="06:00" step="300"/> </div> </div> <div class="row g-6 d-none" data-twpanel="week"> <div class="col-12 fv-row"> <label class="required fs-6 fw-semibold mb-2">적용 요일</label> <div class="w-250px"> <select twrole="weekWeekday" data-twnotchg="true" class="form-select form-select-solid" data-control="select2" data-hide-search="true"> <option value="1" selected>월요일</option> <option value="2">화요일</option> <option value="3">수요일</option> <option value="4">목요일</option> <option value="5">금요일</option> <option value="6">토요일</option> <option value="7">일요일</option> </select> </div> </div> <div class="col-12 fv-row"> <label class="required fs-6 fw-semibold mb-2">실행 시간 (UTC)</label> <input type="time" twrole="weekTime" data-twnotchg="true" class="form-control form-control-solid w-150px" value="06:00" step="300"/> </div> </div> <div class="row g-6 " data-twpanel="month"> <div class="col-12 fv-row"> <label class="required fs-6 fw-semibold mb-2">월</label> <div class="d-flex flex-wrap gap-6 pt-1"> <label class="form-check form-check-custom form-check-solid"> <input class="form-check-input" type="radio" twrole="monthMode" data-twnotchg="true" value="every" checked/> <span class="form-check-label text-gray-800">매월</span> </label> <label class="form-check form-check-custom form-check-solid"> <input class="form-check-input" type="radio" twrole="monthMode" data-twnotchg="true" value="select"/> <span class="form-check-label text-gray-800">선택한 월</span> </label> </div> <div class="d-flex flex-wrap gap-5 mt-4 d-none" data-twcol="monthChks"> <label class="form-check form-check-custom form-check-solid"> <input class="form-check-input" type="checkbox" twrole="monthChk" data-twnotchg="true" value="1"/> <span class="form-check-label text-gray-800">1월</span> </label> <label class="form-check form-check-custom form-check-solid"> <input class="form-check-input" type="checkbox" twrole="monthChk" data-twnotchg="true" value="2"/> <span class="form-check-label text-gray-800">2월</span> </label> <label class="form-check form-check-custom form-check-solid"> <input class="form-check-input" type="checkbox" twrole="monthChk" data-twnotchg="true" value="3"/> <span class="form-check-label text-gray-800">3월</span> </label> <label class="form-check form-check-custom form-check-solid"> <input class="form-check-input" type="checkbox" twrole="monthChk" data-twnotchg="true" value="4"/> <span class="form-check-label text-gray-800">4월</span> </label> <label class="form-check form-check-custom form-check-solid"> <input class="form-check-input" type="checkbox" twrole="monthChk" data-twnotchg="true" value="5"/> <span class="form-check-label text-gray-800">5월</span> </label> <label class="form-check form-check-custom form-check-solid"> <input class="form-check-input" type="checkbox" twrole="monthChk" data-twnotchg="true" value="6"/> <span class="form-check-label text-gray-800">6월</span> </label> <label class="form-check form-check-custom form-check-solid"> <input class="form-check-input" type="checkbox" twrole="monthChk" data-twnotchg="true" value="7"/> <span class="form-check-label text-gray-800">7월</span> </label> <label class="form-check form-check-custom form-check-solid"> <input class="form-check-input" type="checkbox" twrole="monthChk" data-twnotchg="true" value="8"/> <span class="form-check-label text-gray-800">8월</span> </label> <label class="form-check form-check-custom form-check-solid"> <input class="form-check-input" type="checkbox" twrole="monthChk" data-twnotchg="true" value="9"/> <span class="form-check-label text-gray-800">9월</span> </label> <label class="form-check form-check-custom form-check-solid"> <input class="form-check-input" type="checkbox" twrole="monthChk" data-twnotchg="true" value="10"/> <span class="form-check-label text-gray-800">10월</span> </label> <label class="form-check form-check-custom form-check-solid"> <input class="form-check-input" type="checkbox" twrole="monthChk" data-twnotchg="true" value="11"/> <span class="form-check-label text-gray-800">11월</span> </label> <label class="form-check form-check-custom form-check-solid"> <input class="form-check-input" type="checkbox" twrole="monthChk" data-twnotchg="true" value="12"/> <span class="form-check-label text-gray-800">12월</span> </label> </div> </div> <div class="col-12 fv-row"> <label class="required fs-6 fw-semibold mb-2">일</label> <div class="w-150px"> <select twrole="monthDay" data-twnotchg="true" class="form-select form-select-solid" data-control="select2" data-hide-search="true"> <option value="1" selected>1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> <option value="7">7</option> <option value="8">8</option> <option value="9">9</option> <option value="10">10</option> <option value="11">11</option> <option value="12">12</option> <option value="13">13</option> <option value="14">14</option> <option value="15">15</option> <option value="16">16</option> <option value="17">17</option> <option value="18">18</option> <option value="19">19</option> <option value="20">20</option> <option value="21">21</option> <option value="22">22</option> <option value="23">23</option> <option value="24">24</option> <option value="25">25</option> <option value="26">26</option> <option value="27">27</option> <option value="28">28</option> </select> </div> </div> <div class="col-12 fv-row"> <label class="required fs-6 fw-semibold mb-2">실행 시간 (UTC)</label> <input type="time" twrole="monthTime" data-twnotchg="true" class="form-control form-control-solid w-150px" value="06:00" step="300"/> </div> </div> </div> </div> <div class="card bg-light-primary border-0 mb-4"> <div class="card-body py-5 d-flex align-items-center"> <i class="ki-duotone ki-notification-on fs-2hx text-primary me-5"><span class="path1"></span><span class="path2"></span><span class="path3"></span><span class="path4"></span><span class="path5"></span></i> <div class="fs-6 fw-semibold text-gray-900" name="twCronPhrase"></div> </div> </div> <div class="d-none" name="cronCalc"></div> <div class="text-muted fs-8 mb-4"><span class="text-danger">*</span> 필수 항목</div> <div class="d-none"> <select name="cronMonth[]" multiple="multiple" twcron="true"> <option value="every">every</option> <option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option><option value="11">11</option><option value="12">12</option> </select> <select name="cronDay[]" multiple="multiple" twcron="true"> <option value="every">every</option> <option value="lastday">lastday</option> <option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option><option value="11">11</option><option value="12">12</option><option value="13">13</option><option value="14">14</option><option value="15">15</option><option value="16">16</option><option value="17">17</option><option value="18">18</option><option value="19">19</option><option value="20">20</option><option value="21">21</option><option value="22">22</option><option value="23">23</option><option value="24">24</option><option value="25">25</option><option value="26">26</option><option value="27">27</option><option value="28">28</option><option value="29">29</option><option value="30">30</option><option value="31">31</option> </select> <select name="cronWeekday[]" multiple="multiple" twcron="true"> <option value="every">every</option> <option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option> </select> <select name="cronHour[]" multiple="multiple" twcron="true"> <option value="every">every</option> <option value="every4">every4</option> <option value="every12">every12</option> <option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option><option value="11">11</option><option value="12">12</option><option value="13">13</option><option value="14">14</option><option value="15">15</option><option value="16">16</option><option value="17">17</option><option value="18">18</option><option value="19">19</option><option value="20">20</option><option value="21">21</option><option value="22">22</option><option value="23">23</option> </select> <select name="cronMinute[]" twcron="true"> <option value="every15">every15</option> <option value="every30">every30</option> <option value="0">0</option><option value="5">5</option><option value="10">10</option><option value="15">15</option><option value="20">20</option><option value="25">25</option><option value="30">30</option><option value="35">35</option><option value="40">40</option><option value="45">45</option><option value="50">50</option><option value="55">55</option> </select> </div> </div> <script> if (!window.twCronUi) { window.twCronUi = true; document.addEventListener("DOMContentLoaded", function () { (function ($) { var TR = {"phraseHour":"매 시간 %s분에","phraseDayAll":"매일 %s에","phraseDays":"%s의 %s에","phraseWeek":"매주 %s의 %s에","phraseMonthAll":"매월 %s일 %s에","phraseMonths":"%s의 %s일 %s에","every15":"15분마다","every30":"30분마다","weekdays":{"1":"월요일","2":"화요일","3":"수요일","4":"목요일","5":"금요일","6":"토요일","7":"일요일"},"months":{"1":"1월","2":"2월","3":"3월","4":"4월","5":"5월","6":"6월","7":"7월","8":"8월","9":"9월","10":"10월","11":"11월","12":"12월"},"needUpgradeDesc":"이 발송 빈도는 현재 플랜에서 사용할 수 없습니다. 상위 플랜으로 업그레이드하여 잠금을 해제하세요.","btSeePlans":"플랜 보기","btClose":"닫기","urlPlans":"\/ko\/plan-price.html"}; function fmt(tpl, args) { var i = 0; return String(tpl).replace(/%s/g, function () { return args[i++]; }); } function role($r, n) { return $r.find("[twrole='" + n + "']"); } function vals($r, name) { var v = $r.find("select[name='" + name + "']").val(); if (v == null || v === "") return []; return Array.isArray(v) ? v : [v]; } function sameVals(a, b) { return a.slice().sort().join(",") === b.slice().sort().join(","); } function isSpec(v) { return v !== "every" && v !== ""; } function isNum(v) { return v != null && /^[0-9]+$/.test(v); } var writing = false; // Écrit la configuration de l'interface dans les selects cron* soumis. // silent : ne déclenche pas "change" (pas de recalcul AJAX). function setHidden($r, name, values, silent) { if (sameVals(vals($r, name), values)) return; var $s = $r.find("select[name='" + name + "']"); $s.find("option").prop("selected", false); values.forEach(function (v) { $s.find("option[value='" + v + "']").prop("selected", true); }); if (!silent) $s.trigger("change"); } function currentCard($r) { var $a = $r.find("[data-twfreqcard].active"); return $a.length ? $a.attr("data-twfreqcard") : $r.attr("data-twdefault"); } function writeCron($r, silent) { writing = true; var card = currentCard($r); if (card === "hour") { var mode = role($r, "hourMode").val() || "every"; setHidden($r, "cronMonth[]", ["every"], silent); setHidden($r, "cronDay[]", ["every"], silent); setHidden($r, "cronWeekday[]", ["every"], silent); if (mode === "every15" || mode === "every30") { setHidden($r, "cronHour[]", ["every"], silent); setHidden($r, "cronMinute[]", [mode], silent); } else { setHidden($r, "cronHour[]", [mode], silent); setHidden($r, "cronMinute[]", [role($r, "hourMinute").val() || "0"], silent); } } else if (card === "day") { var days = role($r, "dayWeekday").filter(":checked").map(function () { return this.value; }).get(); if (days.length === 0 || days.length === 7) days = ["every"]; var td = timeParts($r, "dayTime"); setHidden($r, "cronMonth[]", ["every"], silent); setHidden($r, "cronDay[]", ["every"], silent); setHidden($r, "cronWeekday[]", days, silent); setHidden($r, "cronHour[]", [td.h], silent); setHidden($r, "cronMinute[]", [td.m], silent); } else if (card === "week") { var tw = timeParts($r, "weekTime"); setHidden($r, "cronMonth[]", ["every"], silent); setHidden($r, "cronDay[]", ["every"], silent); setHidden($r, "cronWeekday[]", [role($r, "weekWeekday").val() || "1"], silent); setHidden($r, "cronHour[]", [tw.h], silent); setHidden($r, "cronMinute[]", [tw.m], silent); } else { var months = ["every"]; if (monthMode($r) === "select") { var sel = role($r, "monthChk").filter(":checked").map(function () { return this.value; }).get(); if (sel.length) months = sel; } var tm = timeParts($r, "monthTime"); setHidden($r, "cronMonth[]", months, silent); setHidden($r, "cronDay[]", [role($r, "monthDay").val() || "1"], silent); setHidden($r, "cronWeekday[]", ["every"], silent); setHidden($r, "cronHour[]", [tm.h], silent); setHidden($r, "cronMinute[]", [tm.m], silent); } writing = false; updatePhrase($r); } function selectCard($r, f) { $r.find("[data-twfreqcard]").removeClass("active"); $r.find("[data-twfreqcard='" + f + "']").addClass("active"); $r.find("[data-twpanel]").each(function () { $(this).toggleClass("d-none", $(this).attr("data-twpanel") !== f); }); toggleHourMinute($r); toggleMonthChks($r); } function toggleHourMinute($r) { var m = role($r, "hourMode").val(); $r.find("[data-twcol='hourMinute']").toggleClass("d-none", m === "every15" || m === "every30"); } function monthMode($r) { return role($r, "monthMode").filter(":checked").val() || "every"; } function setMonthMode($r, v) { role($r, "monthMode").each(function () { this.checked = (this.value === v); }); } function toggleMonthChks($r) { $r.find("[data-twcol='monthChks']").toggleClass("d-none", monthMode($r) !== "select"); } function setSel($r, n, v) { role($r, n).val(v).trigger("change.select2"); } // Champ unique "Heure d'exécution" (input time) <-> cronHour[]/cronMinute[] function timeParts($r, n) { var p = (role($r, n).val() || "06:00").split(":"); var h = parseInt(p[0], 10); if (isNaN(h) || h < 0 || h > 23) h = 6; var m = parseInt(p[1], 10); if (isNaN(m) || m < 0) m = 0; m = Math.round(m / 5) * 5; if (m >= 60) m = 55; return { h: String(h), m: String(m) }; } function setTime($r, n, h, m) { role($r, n).val(("0" + h).slice(-2) + ":" + ("0" + m).slice(-2)); } // Phrase de résumé affichée dans le bandeau function updatePhrase($r) { var card = currentCard($r); var txt = ""; if (card === "hour") { var hm = role($r, "hourMode").val() || "every"; if (hm === "every15") txt = TR.every15; else if (hm === "every30") txt = TR.every30; else txt = fmt(TR.phraseHour, [String(parseInt(role($r, "hourMinute").val() || "0", 10))]); } else if (card === "day") { var t = role($r, "dayTime").val() || "06:00"; var names = role($r, "dayWeekday").filter(":checked").map(function () { return TR.weekdays[this.value]; }).get(); if (!names.length || names.length === 7) txt = fmt(TR.phraseDayAll, [t]); else txt = fmt(TR.phraseDays, [names.join(", "), t]); } else if (card === "week") { txt = fmt(TR.phraseWeek, [TR.weekdays[role($r, "weekWeekday").val() || "1"], role($r, "weekTime").val() || "06:00"]); } else { var d = role($r, "monthDay").val() || "1"; var t2 = role($r, "monthTime").val() || "06:00"; if (monthMode($r) === "select") { var ms = role($r, "monthChk").filter(":checked").map(function () { return TR.months[this.value]; }).get(); if (ms.length) txt = fmt(TR.phraseMonths, [d, ms.join(", "), t2]); } if (!txt) txt = fmt(TR.phraseMonthAll, [d, t2]); } $r.find("[name='twCronPhrase']").text(txt); } function resetDefaults($r) { selectCard($r, $r.attr("data-twdefault")); setSel($r, "hourMode", "every"); setSel($r, "hourMinute", "0"); role($r, "dayWeekday").prop("checked", true); setTime($r, "dayTime", 6, 0); setSel($r, "weekWeekday", "1"); setTime($r, "weekTime", 6, 0); setMonthMode($r, "every"); role($r, "monthChk").prop("checked", false); setSel($r, "monthDay", "1"); setTime($r, "monthTime", 6, 0); toggleHourMinute($r); toggleMonthChks($r); updatePhrase($r); } // Reflète les selects cron* dans l'interface (initForm / chargement d'une alerte). // Ne réécrit pas les selects : une alerte existante sauvegardée sans // modification repart avec ses valeurs d'origine. function syncFromCron($r) { var month = vals($r, "cronMonth[]"), day = vals($r, "cronDay[]"), wd = vals($r, "cronWeekday[]"), hour = vals($r, "cronHour[]"), min = vals($r, "cronMinute[]"); if (!month.length && !day.length && !wd.length && !hour.length && !min.length) { resetDefaults($r); return; } var card; if (hour.indexOf("every") !== -1 || hour.indexOf("every4") !== -1 || hour.indexOf("every12") !== -1) card = "hour"; else if (month.filter(isSpec).length || day.filter(isSpec).length) card = "month"; else if (wd.filter(isSpec).length === 1) card = "week"; else card = "day"; selectCard($r, card); if (card === "hour") { if (min[0] === "every15" || min[0] === "every30") setSel($r, "hourMode", min[0]); else { // every4/every12 (anciennes alertes) sont mappés sur "chaque heure" setSel($r, "hourMode", "every"); if (isNum(min[0])) setSel($r, "hourMinute", min[0]); } } else if (card === "day") { var set = wd.filter(isSpec); if (!set.length) set = ["1", "2", "3", "4", "5", "6", "7"]; role($r, "dayWeekday").each(function () { this.checked = set.indexOf(this.value) !== -1; }); setTime($r, "dayTime", isNum(hour[0]) ? hour[0] : 6, isNum(min[0]) ? min[0] : 0); } else if (card === "week") { setSel($r, "weekWeekday", wd.filter(isSpec)[0] || "1"); setTime($r, "weekTime", isNum(hour[0]) ? hour[0] : 6, isNum(min[0]) ? min[0] : 0); } else { var months = month.filter(isSpec); setMonthMode($r, months.length ? "select" : "every"); role($r, "monthChk").each(function () { this.checked = months.indexOf(this.value) !== -1; }); // jour limité à 1-28 : les anciennes valeurs 29-31 / lastday s'affichent 28 var d0 = day.filter(isSpec)[0]; if (d0) setSel($r, "monthDay", (isNum(d0) && parseInt(d0, 10) <= 28) ? d0 : "28"); setTime($r, "monthTime", isNum(hour[0]) ? hour[0] : 6, isNum(min[0]) ? min[0] : 0); } toggleHourMinute($r); toggleMonthChks($r); updatePhrase($r); } // Interactions utilisateur $(document).on("click", "[name='twCronRoot'] [data-twfreqcard]", function () { var $card = $(this); if ($card.attr("data-twlocked")) { Swal.fire({ text: TR.needUpgradeDesc, icon: "info", buttonsStyling: false, showCancelButton: true, confirmButtonText: TR.btSeePlans, cancelButtonText: TR.btClose, customClass: { confirmButton: "btn btn-primary", cancelButton: "btn btn-light" } }).then(function (res) { if (res.isConfirmed) window.location.href = TR.urlPlans; }); return; } var $r = $card.closest("[name='twCronRoot']"); selectCard($r, $card.attr("data-twfreqcard")); writeCron($r, false); }); $(document).on("change", "[name='twCronRoot'] [twrole]", function () { var $r = $(this).closest("[name='twCronRoot']"); if ($(this).attr("twrole") === "monthMode" && this.checked) role($r, "monthMode").not(this).prop("checked", false); toggleHourMinute($r); toggleMonthChks($r); writeCron($r, false); }); // Synchro depuis les champs réels (initForm vide tout, setSelect charge une alerte) $(document).on("change", "[name='twCronRoot'] select[twcron='true']", function () { if (writing) return; var r = $(this).closest("[name='twCronRoot']")[0]; clearTimeout(r.twCronSync); r.twCronSync = setTimeout(function () { syncFromCron($(r)); }, 0); }); // Garantie avant sauvegarde : si l'utilisateur n'a touché à rien, // les champs cron* reçoivent la configuration affichée par défaut. document.addEventListener("click", function (ev) { if (!ev.target.closest) return; var bt = ev.target.closest("button[name='btModalManageAlertSubmitUser'],button[name='btModalManageAlertSubmitAcc'],button[name='btModalManageAlertSubmitUpd']"); if (!bt) return; var modal = bt.closest(".modal"); var form = modal ? modal.querySelector("form") : bt.closest("form"); if (!form) return; $(form).find("[name='twCronRoot']").each(function () { var $r = $(this); var empty = !vals($r, "cronMonth[]").length && !vals($r, "cronDay[]").length && !vals($r, "cronWeekday[]").length && !vals($r, "cronHour[]").length && !vals($r, "cronMinute[]").length; if (empty) writeCron($r, true); }); }, true); // État initial de chaque instance $("[name='twCronRoot']").each(function () { resetDefaults($(this)); }); })(jQuery); }); } </script> <div class="separator my-5"></div> <span name="globalDivDate"> <div class="row g-9 mb-4" > <div class="col-md-4 fv-row"> <label class="fs-6 fw-semibold mb-2">생성일</label> <div name="globalDateCreation">-</div> </div> <div class="col-md-4 fv-row"> <label class="fs-6 fw-semibold mb-2">마지막 실행</label> <div name="globalLastExecution">-</div> </div> <div class="col-md-4 fv-row"> <label class="fs-6 fw-semibold mb-2">다음 실행</label> <div name="globalNextExecution">-</div> </div> </div> <div class="separator my-5"></div> </span> </form> </div> </div> </div> </div> </div> </div> </div> </div> <div class="d-flex flex-column flex-lg-row-fluid gap-7 gap-lg-10"> <div class="card card-flush py-4"> <div class="card-header"> <div class="card-title"> <h2>CVE 설명</h2> </div> </div> <div class="card-body pt-0"> Shaarli is a personal bookmarking service. Versions prior to 0.16.3 are vulnerable to stored XSS in `application/front/controller/visitor/BookmarkListController.php`. The `permalink` handler concatenates the raw `$bookmark->getTitle()` into the `pagetitle` template variable and the RainTPL template emits it into the document `<title>` element without HTML escaping. A bookmark title containing `` closes the document title early and the injected script executes in the Shaarli origin for any visitor of `/shaare/{hash}`. Shaarli's metadata fetcher copies a remote page's `` text verbatim into the local bookmark title, so an attacker who hosts an attacker-controlled URL and convinces an administrator to bookmark it plants the payload with no further interaction — and the resulting permalink fires for every visitor including the administrator on first save, providing a one-shot administrator account takeover. Version 0.16.3 fixes the issue. </div> </div> <div class="card card-flush py-4"> <div class="card-header"> <div class="card-title"> <h2>CVE 정보</h2> </div> </div> <div class="card-body pt-0"> <h2 class="tw-h3">관련 약점</h2> <div class="table-responsive"> <table class="table table-striped gy-7 gs-7"> <thead> <tr class="fw-semibold fs-6 text-gray-800 border-bottom border-gray-200"> <th><nobr>CWE-ID</nobr></th> <th>약점 이름</th> <th>출처</th> </tr> </thead> <tbody> <tr> <td><nobr><a href="/ko/cwe/cwe-79.html">CWE-79</a></nobr></td> <td><b>Improper Neutralization of Input During Web Page Generation</b><br>The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.</td> <td></td> </tr> </tbody> </table> </div> <div class="separator my-10"></div> <h2 class='tw-h3'>참고 자료</h2><div style='margin-bottom: 10px;'><a href='https://github.com/shaarli/Shaarli/security/advisories/GHSA-xm98-h5jj-64xv' target='_blank'>https://github.com/shaarli/Shaarli/security/advisories/GHSA-xm98-h5jj-64xv <i class="ki-duotone ki-exit-right-corner" style="font-size: 10px;vertical-align:8px"><span class="path1"></span><span class="path2"></span></i></a><br></div><div style='margin-bottom: 10px;'><a href='https://github.com/shaarli/Shaarli/security/advisories/GHSA-xm98-h5jj-64xv' target='_blank'>https://github.com/shaarli/Shaarli/security/advisories/GHSA-xm98-h5jj-64xv <i class="ki-duotone ki-exit-right-corner" style="font-size: 10px;vertical-align:8px"><span class="path1"></span><span class="path2"></span></i></a><br></div><div class="separator my-10"></div> </div> </div> </div> </div> </div> </div> <!--end::Container--> <!--begin::Footer--> <div class="footer py-4 d-flex flex-lg-column" id="kt_footer"> <div class="container-xxl d-flex flex-column flex-md-row align-items-center justify-content-between"> <div class="text-gray-900 order-2 order-md-1"> <span class="text-muted fw-semibold me-1">2026©</span> <a href="https://www.tesweb.com" target="_blank" class="text-gray-800 text-hover-primary">tesweb SA</a>, <a href="https://www.bexxo.ch" target="_blank" class="text-gray-800 text-hover-primary">bexxo Cyber Security</a> </div> <ul class="menu menu-gray-600 menu-hover-primary fw-semibold order-1"> <li class="menu-item"> <a href="/ko/official.html" class="menu-link px-2">데이터베이스 파트너</a> </li> <li class="menu-item"> <a href="/ko/gdpr.html" class="menu-link px-2">GDPR</a> </li> <li class="menu-item"> <a href="#" id="gdpr-manage-cookies" class="menu-link px-2">쿠키 관리</a> </li> <li class="menu-item"> <a href="/ko/contact.html" class="menu-link px-2">문의</a> </li> <li class="menu-item"> <a href="/ko/plan-price.html" class="menu-link px-2">구매</a> </li> <li class="menu-item"> <a href="https://www.linkedin.com/company/cve-find/" class="menu-link px-2" target="_blank"><img src="/media/social/linkedin.svg" width="40" height="40" alt="LinkedIn Account"/></a> </li> <li class="menu-item"> <a href="https://www.facebook.com/people/CVE-Find-Alert/61561116452093/" class="menu-link px-2" target="_blank"><img src="/media/social/facebook.svg" width="40" height="40" alt="Facebook Account"/></a> </li> <li class="menu-item"> <a href="https://x.com/cvefindcom" class="menu-link px-2" target="_blank"><img src="/media/social/twitter.svg" width="40" height="40" alt="Twitter Account"/></a> </li> </ul> </div> </div> <div class="footer py-4"> <div class="container-xxl align-items-center justify-content-between"> CVE Find에 제시된 정보는 엄선된 여러 참고 소스에서 가져옵니다. CVE 데이터는 <a href="https://cve.mitre.org/" target="_blank">MITRE Corporation</a>과 <a href="https://nvd.nist.gov/" target="_blank">국가 취약점 데이터베이스(NVD)</a>에서 제공됩니다. KEV 카탈로그는 <a href="https://www.cisa.gov/known-exploited-vulnerabilities-catalog" target="_blank">CISA</a>에서 가져오며, EPSS 점수는 <a href="https://www.first.org/epss/" target="_blank">FIRST.org</a>에서 제공됩니다. CWE 및 CAPEC 데이터는 <a href="https://mitre.org/" target="_blank">MITRE Corporation</a>에서 관리하며, CPE 정보는 <a href="https://nvd.nist.gov/products/cpe" target="_blank">NVD</a>에서 제공됩니다. </div> </div> </div> </div> </div> <!--begin::Javascript--> <script>var hostUrl = "assets/";</script> <script src="/plugins/global/plugins.bundle.min.1743008562.js"></script> <script src="/js/scripts.bundle.1718974735.js"></script> <script src="/js/app/custom.min.1788264851.js"></script> <script src="/js/app/base.ko.min.1793721674.js" defer></script> <script src="/plugins/custom/datatables/datatables.bundle.1718974031.js"></script> <script src="/js/aceeditor/ace.1715679271.js"></script> <script src="/js/app/bloc/cve/epss.min.1738322185.js"></script> <script src="/js/app/bloc/cve/exploitdb.min.1738322201.js"></script> <script src="/js/app/account/manageAlertNeedAccount.min.1782998772.js" defer></script> <div class="ea-slot d-lg-none" data-ea-anchor="mobile" data-ea-pub="cvefindcom" data-ea-type="text" data-ea-style="fixedfooter" data-ea-kw="security|cybersecurity|vulnerability|cve"></div> <style> /* Encart EthicalAds centré dans son emplacement */ .ea-slot [data-ea-publisher]{margin-left:auto;margin-right:auto;} /* Format horizontal : remplit la largeur de la colonne (variable officielle EthicalAds) */ .ea-slot [data-ea-publisher].horizontal{--ea-image-placement-width-horizontal:100%;} </style> <script async src="https://media.ethicalads.io/media/client/ethicalads.min.js"></script> <script src="/js/app/ads/ethicalads.min.1792667231.js" defer></script> </body> </html> <script> var cookieTimezoneBrowser = function () { let timeZone = Intl.DateTimeFormat().resolvedOptions().timeZone; var offset = -new Date().getTimezoneOffset(); var prefix = offset >= 0 ? '+' : '-'; var timezoneOffset = prefix + Math.floor(Math.abs(offset) / 60).toString().padStart(2, '0') + ':' + (Math.abs(offset) % 60).toString().padStart(2, '0'); document.cookie = "tw-browser=" + timeZone+"|"+ timezoneOffset+ "; path=/"; } cookieTimezoneBrowser(); </script>