1.9 KiB
1.9 KiB
2026-08-20 — КРИТИЧНО: mapping.csv (ключ расшифровки) убран из выходного ZIP (v0.0.56)
Проблема (утечка секретных данных)
Выходной ZIP содержал mapping.csv — таблицу соответствия «оригинал → замена»,
т.е. ключ расшифровки (реальные ФИО/телефоны/ИНН ↔ токены). Если ZIP передать
третьему лицу — тот получал и обфусцированные файлы, и таблицу расшифровки.
CSV должен храниться/скачиваться ОТДЕЛЬНО от обфусцированных файлов.
Фикс (drhider/builder.py build_zip)
- Убрана запись
mapping.csvв архив. Теперь в ZIP — ТОЛЬКО обфусцированные файлы. - Параметр
mapping_csvсохранён в сигнатуре (для совместимости вызовов), но в архив не пишется. - CSV продолжает генерироваться (
build_mapping_csv) и отдаваться отдельно через/api/csv/<sid>(кнопка «Скачать CSV»), как написано на странице.
Тесты (tests/test_builder.py)
- Блок «ZIP с mapping.csv» переписан: теперь проверяет, что mapping.csv НЕ в архиве.
- Интеграционный блок: ZIP содержит только doc.md, CSV проверяется отдельной строкой.
- Все 106 тестов OK.
Проверка
- python3 tests/test_builder.py — 20/20 OK (включая новый сценарий «mapping не в zip»).
- Остальные тесты — без изменений поведения, OK.
- VERSION 0.0.56.