Україна, Черкаси

Сміянська 119

+38 (067)4740973

24/6 Support

пн. - пт: 11:00 - 17:00

Онлайн

Дорожня карта · Чеклист впровадження НБУ №143 · ВІВА КАПІТАЛ
NBU №143 · Roadmap
0%
📄
TXT звіт
Тільки текст: статуси + коментарі
💾
JSON резервна копія РЕКОМЕНДОВАНО
Повна копія стану. Перенесення на інший ПК.
🌐
HTML snapshot
Самодостатня копія цього файлу з даними
📋
PDF / Друк
Через діалог друку браузера
ДОРОЖНЯ КАРТА · ІНТЕРАКТИВНИЙ ЧЕКЛИСТ

Що реалізовано, а що ні

Повний чеклист вимог Постанови НБУ №143 для ТОВ "ФК "ВІВА КАПІТАЛ". Пройдіть весь список, відмічаючи статус кожного пункту. Прогрес зберігається автоматично у браузері — можна повертатись і продовжувати. Для кожного пункту можна додати коментар (хто відповідає, дедлайн, нюанси).

Реалізовано
В процесі
Не розпочато
Не застосовно
0
Всього вимог
0
Реалізовано
0
В процесі
0
Не розпочато
0
Не застосовно
Фільтр: Пріоритет:
— дорожня карта впровадження · Постанова НБУ №143 від 09.12.2025 —
ВЕРСІЯ 1.0 · 2026 · ВІВА КАПІТАЛ · LNZ GROUP / CYBERSEC
Прогрес зберігається локально у вашому браузері. Для передачі іншим — використовуйте кнопку «Експорт».
✓ Збережено
html = html.replace('', snapshot + '');// Додаємо banner для відстеження що це snapshot const stamp = new Date().toLocaleString('uk-UA'); const banner = '
📸 SNAPSHOT від '+stamp+'
'; html = html.replace('', ''+banner);const blob = new Blob(['\n'+html], {type:'text/html;charset=utf-8'}); const url = URL.createObjectURL(blob); const a = document.createElement('a'); a.href = url; a.download = 'nbu143_roadmap_snapshot_'+new Date().toISOString().slice(0,10)+'.html'; a.click(); URL.revokeObjectURL(url); document.getElementById('saveMenu').classList.remove('show'); showToast('✓ HTML snapshot збережено'); }// ===== PRINT/PDF ===== function printPDF(){ // Розгортаємо всі секції перед друком document.querySelectorAll('.section.collapsed').forEach(s=>s.classList.remove('collapsed')); // Показуємо всі айтеми (скидаємо фільтри) document.querySelectorAll('.item').forEach(i=>i.style.display=''); document.querySelectorAll('.section').forEach(s=>s.style.display=''); document.getElementById('saveMenu').classList.remove('show'); setTimeout(()=>window.print(), 200); }// ===== АВТО-ЗАВАНТАЖЕННЯ SNAPSHOT-СТАНУ ===== // Якщо файл відкрито як HTML snapshot з вбудованими даними — їх вже записано в localStorage // до запуску основного скрипту. Тут просто переконуємось що state підвантажено правильно. if(window.__SNAPSHOT_STATE__ && Object.keys(state).length === 0){ state = window.__SNAPSHOT_STATE__; saveState(); }// ============= TASK CATALOG ============= // Маппінг ref → задача з ціною. Дзеркало з seowork_nbu143_assessment.html const TASK_PRICES = { // === Документація (Compliance NBU) === 'PREP-1': {q:'Q1', src:'seowork-compliance', svc:'Gap-аналіз поточного стану', uah:[8000,15000]}, 'PREP-2': {q:'Q1', src:'self', svc:'Формування робочої групи', uah:[0,0], note:'Внутрішня організаційна задача'}, 'PREP-3': {q:'Q1', src:'self', svc:'Затвердження плану та бюджету', uah:[0,0], note:'Рішення керівництва'}, 'п.5': {q:'Q1', src:'seowork-compliance', svc:'Визначення об\'єктів захисту', uah:[5000,8000]}, 'п.6': {q:'Q1-Q2', src:'seowork-compliance', svc:'Процес управління кіберризиками', uah:[12000,18000]}, 'п.8': {q:'Q1-Q2', src:'seowork-compliance', svc:'Ризик-орієнтований підхід (методика)', uah:[8000,12000]}, 'п.9': {q:'Постійно', src:'seowork-compliance', svc:'Відповідність вимогам до підрядників', uah:[5000,8000]}, 'п.10': {q:'Постійно', src:'seowork-compliance', svc:'Контроль ПЗ та обладнання', uah:[5000,8000]}, 'п.11': {q:'Q1', src:'self', svc:'Призначення CISO (наказ директора)', uah:[0,0]}, 'п.12': {q:'Q1', src:'seowork-compliance', svc:'DOC-01 Наказ + посадова інструкція', uah:[8000,12000]}, 'п.13': {q:'Постійно', src:'seowork-compliance', svc:'Функції CISO (vCISO part-time)', uah:[15000,25000], note:'Щомісячна послуга'}, 'п.14': {q:'Q2', src:'seowork-compliance', svc:'DOC-12 Журнал ознайомлення', uah:[8000,12000]}, 'п.15': {q:'Постійно', src:'seowork-compliance', svc:'Щорічний перегляд документів', uah:[10000,15000], note:'Раз на рік'}, 'п.16': {q:'Q2', src:'seowork-compliance', svc:'Документ управління доступом', uah:[10000,15000]}, 'п.17': {q:'Q2+', src:'seowork', svc:'Перегляд прав доступу', uah:[5000,8000]}, 'п.18': {q:'Q2', src:'seowork-compliance', svc:'DOC-03 Стандарт IAM', uah:[18000,25000]}, 'п.19': {q:'Q2', src:'seowork', svc:'Технології автентифікації', uah:[6000,10000]}, 'п.20': {q:'Q2', src:'seowork', svc:'MFA для віддаленого доступу', uah:[12000,18000]}, 'п.21': {q:'Q2', src:'seowork', svc:'Блокування облікових записів', uah:[6000,10000]}, 'п.22': {q:'Q2', src:'seowork', svc:'Посилені вимоги до привілейованих акаунтів', uah:[5000,8000]}, 'п.23': {q:'Q2', src:'seowork', svc:'Складні паролі (GPO)', uah:[4000,6000]}, 'п.24': {q:'Q2', src:'seowork', svc:'Зміна паролів (90 днів)', uah:[3000,5000]}, 'п.25': {q:'Q2-Q3', src:'seowork', svc:'Маскування, автоблок 15хв, дефолтні акаунти', uah:[5000,9000]}, 'п.26': {q:'Q3', src:'seowork', svc:'Реєстрація подій (логи)', uah:[10000,15000]}, 'п.27': {q:'Q3', src:'self', svc:'Вимоги Положення №204 (для страховиків)', uah:[0,0], note:'Не застосовно для ФК'}, 'п.28': {q:'Q3', src:'seowork', svc:'Архівація логів + захист (1+ рік)', uah:[8000,14000]}, 'п.29': {q:'Q2-Q3', src:'seowork', svc:'Мережевий захист (NGFW, точки доступу)', uah:[15000,25000]}, 'п.30': {q:'Q2-Q3', src:'seowork', svc:'Захищена зона мережі + антивірус', uah:[12000,20000]}, 'п.31': {q:'Q3', src:'seowork', svc:'Підтримувані ОС з оновленнями', uah:[10000,18000]}, 'п.32': {q:'Q3', src:'seowork', svc:'Блокування дефолтних акаунтів ОС', uah:[3000,5000]}, 'п.33': {q:'Q3', src:'seowork', svc:'Офіційні версії ПЗ + підтримка', uah:[8000,14000]}, 'п.34': {q:'Q3', src:'seowork-compliance', svc:'Аналіз ризиків EOL-ПЗ + компенсуючі заходи', uah:[10000,15000]}, 'п.35': {q:'Q3-Q4', src:'seowork', svc:'План переходу EOL ≤ 2 років', uah:[8000,15000]}, 'п.36': {q:'Q3', src:'seowork-compliance', svc:'Затвердження плану переходу', uah:[3000,5000]}, 'п.37': {q:'Q3', src:'seowork-compliance', svc:'Документ безпеки змінних носіїв', uah:[6000,10000]}, 'п.38': {q:'Q3', src:'seowork', svc:'Ідентифікація змінних носіїв (USB)', uah:[5000,8000]}, 'п.39': {q:'Q3', src:'seowork-compliance', svc:'Процес управління інцидентами + IRP', uah:[20000,30000]}, 'п.40': {q:'Q3', src:'seowork-compliance', svc:'Інтеграція IRP з BCP', uah:[5000,8000]}, 'п.41': {q:'Q3', src:'seowork-compliance', svc:'IRP з обов\'язковими елементами', uah:[8000,12000]}, 'п.42': {q:'Q3-Q4', src:'seowork-compliance', svc:'Взаємодія з підрядниками при інцидентах', uah:[5000,8000]}, 'п.43': {q:'Q3-Q4', src:'outsource', svc:'Договори з умовами реагування (юрист)', uah:[5000,10000]}, 'п.44-46': {q:'Постійно', src:'self', svc:'Готовність надати інформацію НБУ', uah:[0,0]}, // === Backup === 'BCP-1': {q:'Q2', src:'seowork', svc:'Backup 3-2-1 налаштовано', uah:[18000,30000]}, 'BCP-2': {q:'Q2', src:'seowork', svc:'Immutable storage (anti-ransomware)', uah:[8000,14000]}, 'BCP-3': {q:'Q2', src:'seowork', svc:'Backup шифрується (AES-256)', uah:[5000,8000]}, 'BCP-4': {q:'Постійно', src:'seowork', svc:'Регулярні тести відновлення (1×/кв)', uah:[8000,14000], note:'За цикл'}, 'BCP-5': {q:'Q2', src:'seowork-compliance', svc:'RTO/RPO для критичних систем', uah:[5000,8000]}, // === DOC === 'DOC-01': {q:'Q1', src:'seowork-compliance', svc:'DOC-01 Наказ про CISO', uah:[8000,12000]}, 'DOC-02': {q:'Q1', src:'seowork-compliance', svc:'DOC-02 Політика ІБ', uah:[10000,15000]}, 'DOC-03': {q:'Q2', src:'seowork-compliance', svc:'DOC-03 Стандарт IAM', uah:[18000,25000]}, 'DOC-04': {q:'Q2', src:'seowork-compliance', svc:'DOC-04 Парольна політика', uah:[8000,12000]}, 'DOC-05': {q:'Q2', src:'seowork-compliance', svc:'DOC-05 Мережева безпека + схема', uah:[15000,22000]}, 'DOC-06': {q:'Q3', src:'seowork-compliance', svc:'DOC-06 План IRP', uah:[25000,35000]}, 'DOC-07': {q:'Q3', src:'seowork-compliance', svc:'DOC-07 План BCP/DRP', uah:[30000,45000], extra:[{lbl:'Юрист (review)', uah:6000}]}, 'DOC-08': {q:'Q2', src:'seowork-compliance', svc:'DOC-08 Реєстр активів', uah:[25000,35000]}, 'DOC-09': {q:'Q2', src:'seowork-compliance', svc:'DOC-09 Реєстр підрядників + NDA', uah:[10000,15000], extra:[{lbl:'Юрист (NDA шаблон)', uah:5000}]}, 'DOC-10': {q:'Q2', src:'seowork-compliance', svc:'DOC-10 Класифікація інформації', uah:[8000,12000]}, 'DOC-11': {q:'Q3', src:'seowork-compliance', svc:'DOC-11 Управління вразливостями', uah:[10000,15000]}, 'DOC-12': {q:'Q2', src:'seowork-compliance', svc:'DOC-12 Журнал ознайомлення', uah:[8000,12000]}, 'DOC-13': {q:'Q1-Q2', src:'seowork-compliance', svc:'DOC-13 Захист ПД (ревізія)', uah:[10000,15000]}, 'DOC-14': {q:'Q3', src:'seowork-compliance', svc:'DOC-14 Програма awareness', uah:[15000,25000]}, 'DOC-15': {q:'Q3', src:'seowork-compliance', svc:'DOC-15 Кінцеві точки + USB', uah:[8000,12000]}, // === TECH === 'TECH-1': {q:'Q2', src:'seowork', svc:'MFA для всіх адміністраторів', uah:[6000,10000]}, 'TECH-2': {q:'Q2-Q3', src:'seowork', svc:'MFA для всіх користувачів', uah:[12000,18000]}, 'TECH-3': {q:'Q3', src:'seowork', svc:'EDR на 100% endpoints', uah:[15000,25000]}, 'TECH-4': {q:'Q3', src:'seowork', svc:'SIEM (Wazuh) з ретенцією 1+ рік', uah:[30000,50000]}, 'TECH-5': {q:'Q2-Q3', src:'seowork', svc:'NGFW у 12 відділеннях + центр', uah:[30000,60000]}, 'TECH-6': {q:'Q2-Q3', src:'seowork', svc:'VPN site-to-site + remote MFA', uah:[18000,28000]}, 'TECH-7': {q:'Q3', src:'seowork', svc:'Vulnerability scanning (квартально)', uah:[8000,14000]}, 'TECH-8': {q:'Q2', src:'seowork', svc:'Реєстр активів у GLPI/Snipe-IT', uah:[12000,18000]}, // === WEB === 'WEB-1': {q:'Q2', src:'seowork', svc:'vivacapital: Cloudflare', uah:[2500,4000]}, 'WEB-2': {q:'Q2', src:'seowork', svc:'vivacapital: HTTPS-заголовки', uah:[3000,5000]}, 'WEB-3': {q:'Q2', src:'seowork', svc:'vivacapital: CMS і плагіни', uah:[5000,9000]}, 'WEB-4': {q:'Q2-Q3', src:'seowork', svc:'vivacapital: security-аудит', uah:[13000,15000]}, 'WEB-5': {q:'Q2', src:'seowork', svc:'vivacapital: усунути .ru/.by', uah:[4000,7000]}, 'WEB-6': {q:'При відновленні', src:'seowork-compliance', svc:'dodam: план готовий до активації', uah:[8000,12000], note:'Активується при запуску сервісу'}, // === VND === 'VND-1': {q:'Q2', src:'seowork-compliance', svc:'Реєстр усіх підрядників', uah:[8000,12000]}, 'VND-2': {q:'Q2', src:'seowork-compliance', svc:'Санкційний скринінг (щорічно)', uah:[8000,12000], note:'Раз на рік'}, 'VND-3': {q:'Q2', src:'seowork-compliance', svc:'Локалізація даних підрядників', uah:[5000,8000]}, 'VND-4': {q:'Q2-Q3', src:'outsource', svc:'NDA з усіма (юрист)', uah:[5000,10000]}, 'VND-5': {q:'Q1-Q2', src:'seowork', svc:'Усунення російського/білоруського ПЗ', uah:[25000,50000], note:'Без міграції 1С'}, // === FIN === 'FIN-1': {q:'Q3', src:'seowork-compliance', svc:'Awareness-тренінги (100% персоналу)', uah:[15000,25000]}, 'FIN-2': {q:'Q3-Q4', src:'seowork-compliance', svc:'Phishing-симуляції (4-6×/рік)', uah:[12000,20000]}, 'FIN-3': {q:'Q4', src:'outsource', svc:'Зовнішній pentest', uah:[130000,200000], note:'Berezha Security / 10Guards'}, 'FIN-4': {q:'Q4', src:'outsource', svc:'Незалежний compliance-аудит', uah:[100000,170000], note:'BDO / Crowe / Deloitte'}, 'FIN-5': {q:'Q4', src:'seowork-compliance', svc:'Актуалізація всіх документів', uah:[15000,25000]}, 'FIN-6': {q:'13.12.2026', src:'self', svc:'Audit-ready state досягнуто', uah:[0,0]}, };function fmtUah(n){ return new Intl.NumberFormat('uk-UA').format(n) + ' ₴'; }function pad(s, len){ s = String(s); return s + ' '.repeat(Math.max(0, len-s.length)); }function exportProgress(){ // ===== ЗБИРАЄМО ДАНІ ===== let total=0, done=0, progress=0, todo=0, na=0; const toDoTasks = []; // задачі, які треба виконати (todo + progress) const doneTasks = [];ROADMAP.forEach((section,si)=>{ section.items.forEach((it,ii)=>{ total++; const k = itemKey(si,ii); const st = (state[k] && state[k].status) || 'todo'; const note = (state[k] && state[k].note) || '';if(st==='done'){ done++; doneTasks.push({...it, section: section.title, note}); } else if(st==='progress'){ progress++; toDoTasks.push({...it, section: section.title, note, status:'progress'}); } else if(st==='na'){ na++; } else { todo++; toDoTasks.push({...it, section: section.title, note, status:'todo'}); } }); });const effective = total-na; const pct = effective>0?Math.round(done/effective*100):0;// ===== ПРИВ'ЯЗУЄМО ЦІНИ ДО ЗАДАЧ ===== // Групуємо за пріоритетом const byPriority = {crit:[], high:[], med:[]}; let sumSeowork=[0,0], sumCompliance=[0,0], sumOutsource=[0,0], sumSelf=[0,0]; let countSelf=0, countSeowork=0, countCompliance=0, countOutsource=0;toDoTasks.forEach(t=>{ const priorityTag = t.tags.find(tag => ['crit','high','med'].includes(tag[0])); const priority = priorityTag ? priorityTag[0] : 'med'; const price = TASK_PRICES[t.ref];if(!price){ byPriority[priority].push({...t, _price: null}); return; }const totalMin = price.uah[0] + (price.extra||[]).reduce((s,e)=>s+e.uah,0); const totalMax = price.uah[1] + (price.extra||[]).reduce((s,e)=>s+e.uah,0);if(price.src === 'seowork'){ sumSeowork[0]+=price.uah[0]; sumSeowork[1]+=price.uah[1]; countSeowork++; } else if(price.src === 'seowork-compliance'){ sumCompliance[0]+=price.uah[0]; sumCompliance[1]+=price.uah[1]; countCompliance++; } else if(price.src === 'outsource'){ sumOutsource[0]+=price.uah[0]; sumOutsource[1]+=price.uah[1]; countOutsource++; } else if(price.src === 'self'){ countSelf++; }if(price.extra){ price.extra.forEach(e=>{ sumOutsource[0]+=e.uah; sumOutsource[1]+=e.uah; countOutsource++; }); }byPriority[priority].push({...t, _price: price, _totalMin: totalMin, _totalMax: totalMax}); });const totalMin = sumSeowork[0]+sumCompliance[0]+sumOutsource[0]; const totalMax = sumSeowork[1]+sumCompliance[1]+sumOutsource[1];// ===== БУДУЄМО ТЕКСТ ===== const sep = (ch, n) => ch.repeat(n); const today = new Date().toLocaleString('uk-UA');let txt = ''; txt += sep('═', 70) + '\n'; txt += ' SEOWORK · ЗВІТ ГОТОВНОСТІ ДО ПОСТАНОВИ НБУ №143\n'; txt += ' Замовник: ТОВ "ФК "ВІВА КАПІТАЛ"\n'; txt += ' Дата формування: ' + today + '\n'; txt += sep('═', 70) + '\n\n';// ===== БЛОК 1: ПІДСУМКОВІ ЦИФРИ ===== txt += sep('━', 70) + '\n'; txt += ' 📊 ПІДСУМКОВІ ЦИФРИ\n'; txt += sep('━', 70) + '\n\n'; txt += ' Compliance Score: ' + pct + '% (без N/A)\n'; txt += ' Всього вимог Постанови: ' + total + '\n'; txt += ' ✓ Реалізовано: ' + done + '\n'; txt += ' ⟳ В процесі: ' + progress + '\n'; txt += ' ○ Не розпочато: ' + todo + '\n'; txt += ' — Не застосовно: ' + na + '\n'; txt += '\n'; txt += ' Задач у дорожній карті: ' + toDoTasks.length + '\n'; txt += ' • Критичних: ' + byPriority.crit.length + '\n'; txt += ' • Високих: ' + byPriority.high.length + '\n'; txt += ' • Середніх: ' + byPriority.med.length + '\n\n';// ===== БЛОК 2: ОРІЄНТОВНИЙ БЮДЖЕТ ===== txt += sep('━', 70) + '\n'; txt += ' 💰 ОРІЄНТОВНИЙ БЮДЖЕТ\n'; txt += sep('━', 70) + '\n\n'; txt += ' 📦 SEOWORK · Стандартні послуги: ' + fmtUah(sumSeowork[0]) + ' – ' + fmtUah(sumSeowork[1]) + '\n'; txt += ' (' + countSeowork + ' задач: системне адмінування, мережа, backup, web)\n\n'; txt += ' 📋 SEOWORK · Compliance NBU: ' + fmtUah(sumCompliance[0]) + ' – ' + fmtUah(sumCompliance[1]) + '\n'; txt += ' (' + countCompliance + ' задач: документи, vCISO, координація)\n\n'; txt += ' 🤝 Зовнішні підрядники: ' + fmtUah(sumOutsource[0]) + ' – ' + fmtUah(sumOutsource[1]) + '\n'; txt += ' (' + countOutsource + ' задач: pentest, аудит, юрист)\n\n'; txt += ' ' + sep('─', 66) + '\n'; txt += ' 💼 УСЬОГО ПО ПРОЄКТУ: ' + fmtUah(totalMin) + ' – ' + fmtUah(totalMax) + '\n'; txt += ' У USD (~42): $' + Math.round(totalMin/42).toLocaleString() + ' – $' + Math.round(totalMax/42).toLocaleString() + '\n'; txt += ' На місяць (12 міс): ' + fmtUah(Math.round((totalMin+totalMax)/2/12)) + ' (середнє)\n'; txt += ' ' + sep('─', 66) + '\n\n'; txt += ' Не включено: hardware (NGFW, сервери), ліцензії ПЗ (M365, ESET,\n'; txt += ' Veeam), хостинг — узгоджується окремо.\n\n';// ===== БЛОК 3: ЩО РОБИМО — ПО ПРІОРИТЕТАХ ===== const renderPriorityBlock = (priorityKey, title, descr) => { const items = byPriority[priorityKey]; if(items.length === 0) return '';let block = sep('━', 70) + '\n'; block += ' ' + title + ' (' + items.length + ' задач)\n'; block += ' ' + descr + '\n'; block += sep('━', 70) + '\n\n';items.forEach((t, idx) => { const status = t.status === 'progress' ? '⟳ В ПРОЦЕСІ' : '○ НЕ РОЗПОЧАТО'; block += ' [' + (idx+1) + '] ' + t.ref + ' · ' + t.title + '\n'; block += ' Статус: ' + status + ' · Розділ: ' + t.section + '\n';if(t._price){ const p = t._price; const srcLabel = { 'seowork': '📦 SEOWORK · стандарт', 'seowork-compliance': '📋 SEOWORK · Compliance NBU', 'outsource': '🤝 Зовнішній підрядник', 'self': '👤 Внутрішня задача' }[p.src] || '?';block += ' Виконавець: ' + srcLabel + '\n'; block += ' Послуга: ' + p.svc + '\n'; block += ' Період: ' + p.q + '\n';if(p.uah[0] === 0 && p.uah[1] === 0){ block += ' Вартість: без оплати (внутрішнє рішення)\n'; } else { block += ' Вартість: ' + fmtUah(p.uah[0]) + ' – ' + fmtUah(p.uah[1]) + '\n'; }if(p.extra){ p.extra.forEach(e=>{ block += ' + ' + e.lbl + ': ' + fmtUah(e.uah) + '\n'; }); }if(p.note){ block += ' ⚠ ' + p.note + '\n'; } } else { block += ' ⚠ Ціна не визначена — узгоджується окремо\n'; }if(t.note){ block += ' 💬 Коментар: ' + t.note + '\n'; }block += '\n'; });return block; };if(byPriority.crit.length > 0){ txt += renderPriorityBlock('crit', '🔴 КРИТИЧНІ ЗАДАЧІ', 'Виконати в Q1–Q2 2026. Блокери compliance.'); } if(byPriority.high.length > 0){ txt += renderPriorityBlock('high', '🟠 ВИСОКИЙ ПРІОРИТЕТ', 'Виконати в Q2–Q3 2026.'); } if(byPriority.med.length > 0){ txt += renderPriorityBlock('med', '🔵 СЕРЕДНІЙ ПРІОРИТЕТ', 'Виконати в Q3–Q4 2026.'); }// ===== БЛОК 4: ЩО ВЖЕ ЗРОБЛЕНО (якщо є) ===== if(doneTasks.length > 0){ txt += sep('━', 70) + '\n'; txt += ' ✓ ВЖЕ РЕАЛІЗОВАНО (' + doneTasks.length + ')\n'; txt += sep('━', 70) + '\n\n'; doneTasks.forEach((t, idx) => { txt += ' [' + (idx+1) + '] ' + t.ref + ' · ' + t.title + '\n'; if(t.note) txt += ' 💬 ' + t.note + '\n'; }); txt += '\n'; }// ===== БЛОК 5: ЕТАПИ ВПРОВАДЖЕННЯ ===== txt += sep('━', 70) + '\n'; txt += ' 🗓️ РЕКОМЕНДОВАНІ ЕТАПИ ВПРОВАДЖЕННЯ\n'; txt += sep('━', 70) + '\n\n'; txt += ' ЕТАП 1 (Q1 · січ-бер 2026) — ФУНДАМЕНТ\n'; txt += ' • Призначення CISO (наказ + посадова інструкція)\n'; txt += ' • Політика ІБ (DOC-02)\n'; txt += ' • Gap-аналіз і план міграції з російського/EOL ПЗ\n\n'; txt += ' ЕТАП 2 (Q2 · кві-чер 2026) — ТЕХНІЧНИЙ БАЗИС\n'; txt += ' • MFA для адмінів та віддаленого доступу\n'; txt += ' • Backup за схемою 3-2-1 з immutable\n'; txt += ' • Реєстр активів + реєстр підрядників (NDA)\n'; txt += ' • Документи: DOC-03, DOC-04, DOC-08, DOC-09\n\n'; txt += ' ЕТАП 3 (Q3 · лип-вер 2026) — МОНІТОРИНГ\n'; txt += ' • SIEM (Wazuh) з ретенцією 1+ рік\n'; txt += ' • EDR на всіх endpoints\n'; txt += ' • IRP (DOC-06) + BCP/DRP (DOC-07)\n'; txt += ' • Awareness тренінги + phishing-симуляції\n\n'; txt += ' ЕТАП 4 (Q4 · жов-лис 2026) — ГОТОВНІСТЬ\n'; txt += ' • Зовнішній pentest (Berezha Security / 10Guards)\n'; txt += ' • Незалежний compliance-аудит (BDO / Crowe / Deloitte)\n'; txt += ' • Фіналізація всіх документів\n'; txt += ' • 🎯 ДЕДЛАЙН: 13.12.2026 — audit-ready state\n\n';// ===== БЛОК 6: КОНТАКТИ ===== txt += sep('═', 70) + '\n'; txt += ' 📞 КОНТАКТИ ВИКОНАВЦЯ\n'; txt += sep('═', 70) + '\n\n'; txt += ' SEOWORK · Комплексні рішення для бізнесу\n'; txt += ' ФОП Мальцев Костянтин Анатолійович\n\n'; txt += ' Адреса: м. Черкаси, вул. Смілянська, 119\n'; txt += ' Web: https://seowork.in.ua\n'; txt += ' Тел: +38 (067) 474-09-73\n'; txt += ' +38 (093) 474-09-73\n'; txt += ' Email: mka.malcev@gmail.com\n\n'; txt += sep('═', 70) + '\n'; txt += ' Документ згенеровано автоматично · v.2.0 · 2026\n'; txt += sep('═', 70) + '\n';// ===== ЗБЕРЕЖЕННЯ ===== const blob = new Blob([txt], {type:'text/plain;charset=utf-8'}); const url = URL.createObjectURL(blob); const a = document.createElement('a'); a.href = url; a.download = 'SEOWORK_NBU143_zvit_'+new Date().toISOString().slice(0,10)+'.txt'; a.click(); URL.revokeObjectURL(url); document.getElementById('saveMenu').classList.remove('show'); showToast('✓ Звіт збережено'); }// init render(); updateStats();