html2wp / Безпека

Як повідомити про вразливість

Напишіть на hello@html2wp.dev і вкажіть у темі листа SECURITY. Будь ласка, не повідомляйте про проблему безпеки через публічний issue на GitHub. Issues там публічні з моменту створення, тож кожен користувач навички опинився б під загрозою ще до того, як з’явиться оновлення для встановлення.

Як повідомити

Додайте все, що потрібно для відтворення проблеми: версію або коміт, кроки і те, що ви очікували натомість. Proof of concept (робоча демонстрація експлойту) допомагає, і ми йому раді, але для звіту він не обов’язковий.

Ендпоінт /v1/report з документації для цього не підходить. Це скринька для дефектів генератора, і людина читає її разом зі звичайними звітами про помилки.

Чого очікувати

  • Підтвердження, що ми отримали звіт, протягом 3 робочих днів.
  • Оцінку проблеми й приблизні строки протягом 10 робочих днів.
  • Згадку в примітках до релізу, якщо ви її хочете, і жодної згадки, якщо ні.

Якщо відповіді немає

Ми маленька команда, а не компанія з окремим відділом безпеки. Якщо звіт лишився без відповіді після цих строків, надішліть його ще раз. Ми його пропустили, а не ігноруємо.

Що входить у програму

  • Навичка і скрипти в skills/html2wp/assets/scripts/, які працюють на вашому власному комп’ютері.
  • Сервіс конвертації на api.html2wp.dev.
  • Тема WordPress, яку генерує сервіс, разом із PHP-рушієм, що йде з нею, та імпортером вмісту.

Про такі речі варто повідомляти, навіть коли вони здаються дрібницею. Це все, що читає або передає файли поза вхідним каталогом і робочою областю. Все, що дає одній конвертації побачити іншу. Все в згенерованій темі, до чого можна дістатися без автентифікації. І все, через що завершена конвертація віддає тему, яку мала відхилити.

Що не входить у програму

  • Знахідки щодо версії WordPress, PHP або плагіна, яку ви вирішили запускати, коли виправлення полягає в її оновленні.
  • Одноразовий WordPress у Docker, який test-env.sh використовує для локальної перевірки. У нього навмисно фіксований пароль адміністратора, він слухає лише 127.0.0.1 і видаляється після кожного запуску. Це тестове середовище, а не розгорнутий сайт.
  • Звіти про те, що перевірку ліцензії можна прибрати з клієнта. Так, можна: клієнт ваш, і ви можете його редагувати. Від цієї перевірки не залежить нічого, що стосується безпеки. Що вам належить, вирішує сервіс, а платні частини якраз ті, які він без ключа не створює.
  • Об’ємні DoS-атаки (засипання сервісу запитами) на api.html2wp.dev і знахідки, які зводяться до запуску сканера проти нього.

Тестування сервісу

Тестуйте на власних конвертаціях і з власним ліцензійним ключем. Не намагайтеся дістатися до завдань, артефактів чи робочих областей іншого облікового запису. Якщо вам здається, що ви знайшли спосіб це зробити, то саме такий звіт нам і потрібен, і опису методу достатньо. Доводити це на чужих даних не треба.

Що залишає ваш комп’ютер

Це описують сторінка про дані і власний README плагіна, бо політика безпеки не те місце, де про це варто дізнаватися вперше. Коротко: зібраний сайт вирушає до сервісу, і конвертація працює з ним. Вердикти перевірок надсилаються окремо й містять лише назви та числа. Етап 1 відфільтровує з пакета файли, схожі на облікові дані, і показує список усіх, які відкинув. Якщо ви знайдете щось, що проходить крізь цей фільтр, це входить у програму.

Ця сторінка повторює файл SECURITY.md, що постачається в репозиторіях плагіна. Якщо вони колись розійдуться, чинним є файл у репозиторії.