<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>XLSX vs. XLSM on File Format Blog</title>
    <link>https://blog.fileformat.com/ru/tag/xlsx-vs.-xlsm/</link>
    <description>Recent content in XLSX vs. XLSM on File Format Blog</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>ru</language>
    <lastBuildDate>Mon, 28 Sep 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://blog.fileformat.com/ru/tag/xlsx-vs.-xlsm/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Безопасность файлов Excel: XLSX, XLSM и риски макросов</title>
      <link>https://blog.fileformat.com/ru/spreadsheet/excel-file-security-explained-xlsx-xlsm-and-macro-risks/</link>
      <pubDate>Mon, 28 Sep 2026 00:00:00 +0000</pubDate>
      
      <guid>https://blog.fileformat.com/ru/spreadsheet/excel-file-security-explained-xlsx-xlsm-and-macro-risks/</guid>
      <description>Поймите реальные различия в безопасности файлов XLSX и XLSM, как работают атаки с использованием макросов и как защитить вашу организацию от вредоносных электронных таблиц.</description>
      <content:encoded><![CDATA[<p><strong>Последнее обновление</strong>: 28 сент., 2026</p>
<figure class="align-center ">
    <img loading="lazy" src="images/excel-file-security-explained-xlsx-xlsm-and-macro-risks.png#center"
         alt="XLSX vs. XLSM Security: How Spreadsheet Macros Expose Your Network"/> 
</figure>

<h2 id="безопасность-файлов-excel-xlsx-xlsm-и-риски-макросов">Безопасность файлов Excel: XLSX, XLSM и риски макросов</h2>
<p>На протяжении десятилетий Microsoft Excel служит универсальным движком бизнес‑операций. Он балансирует корпоративные бюджеты, визуализирует сложные наборы данных, отслеживает запасы и обеспечивает аналитические конвейеры практически во всех отраслях.</p>
<p>Тем не менее, именно эта вычислительная гибкость делает электронные таблицы постоянным объектом интереса киберпротивников. Злоумышленники используют таблицы с начала эпохи макровирусов в конце 1990‑х. Хотя Microsoft и системные администраторы внедрили несколько уровней защиты — такие как сегрегация форматов файлов и блокировка макросов по умолчанию — социальная инженерия и скрытые архитектурные риски продолжают поддерживать актуальность атак, ориентированных на Excel‑focused attacks relevant.</p>
<p>Чтобы построить устойчивую систему безопасности, разработчикам, администраторам и продвинутым пользователям необходимо заглянуть за интерфейс рабочей книги. Понимание того, как работает базовый формат OpenXML, как <code>.xlsx</code> и <code>.xlsm</code> различаются на архитектурном уровне и как работают механизмы выполнения макросов, имеет решающее значение для защиты современных конечных точек.</p>
<h2 id="1-структура-современных-файлов-excel-разбор-openxml">1. Структура современных файлов Excel: разбор OpenXML</h2>
<p>До выхода Microsoft Office 2007 Excel сохранял файлы в основном в проприетарных бинарных форматах, наиболее известным из которых был формат <code>.xls</code> (регулируемый Binary Interchange File Format, или BIFF8). В файлах <code>.xls</code> записи данных, определения форматирования, формулы и потоки макросов Visual Basic for Applications (VBA) упаковывались в один контейнер структурированного хранилища. Это усложняло программный анализ и позволяло злоумышленникам скрывать вредоносные скрипты‑полезные нагрузки внутри непрозрачных бинарных секторов.</p>
<p>Начиная с Excel 2007, Microsoft представила стандарт <strong>Office Open XML (OOXML)</strong> (стандартизированный как ECMA-376 и ISO/IEC 29500). В рамках OOXML рабочие книги Excel больше не являются монолитными бинарными блоками. Вместо этого они представляют собой zip‑архивы, содержащие иерархическую структуру XML‑документов, таблицы связей и встроенные медиа‑ресурсы.</p>
<h3 id="внутри-zipконтейнера">Внутри ZIP‑контейнера</h3>
<p>Если взять любой стандартный современный файл Excel и переименовать его расширение в <code>.zip</code>, вы сможете извлечь его содержимое с помощью любой стандартной утилиты распаковки:</p>
<pre tabindex="0"><code>my_workbook.xlsx (extracted)
│
├── [Content_Types].xml        &lt;-- Registry of MIME types and structural parts
├── _rels/                     &lt;-- Package-level relationship mappings
│   └── .rels
├── docProps/                  &lt;-- Metadata (author, creation date, revision)
│   ├── app.xml
│   └── core.xml
└── xl/                        &lt;-- Core spreadsheet contents
    ├── workbook.xml           &lt;-- Workbook-level parameters and sheet list
    ├── styles.xml             &lt;-- Cell styles, fonts, and borders
    ├── sharedStrings.xml      &lt;-- Unique string index for performance optimization
    ├── _rels/
    │   └── workbook.xml.rels  &lt;-- Sheet and component dependencies
    └── worksheets/
        ├── sheet1.xml         &lt;-- Raw cell values, formulas, and grid geometry
        └── sheet2.xml
</code></pre><p>Это структурное изменение предоставило немедленные преимущества в области безопасности:</p>
<ol>
<li><strong>DPI (Deep Packet Inspection) &amp; Gateway Visibility:</strong> Устройства безопасности, прокси и агенты конечных точек могут распаковывать архив «на лету» и разбирать открытые XML‑деревья, чтобы выявлять подозрительные строки, внешние URL‑адреса или встроенные объекты.</li>
<li><strong>Deterministic File Validation:</strong> Если файл утверждает, что является документом OpenXML, но нарушает ограничения схемы, Excel отказывается его открывать или запускает в режиме изолированного восстановления.</li>
<li><strong>Format Separation:</strong> Microsoft отделила обычные вычислительные таблицы от файлов, способных выполнять встроенные процедурные скрипты.</li>
</ol>
<h2 id="2-xlsx1-vs-xlsm7-архитектурная-граница">2. <a href="https://docs.fileformat.com/spreadsheet/xlsx/">XLSX</a> vs. <a href="https://docs.fileformat.com/spreadsheet/xlsm/">XLSM</a>: Архитектурная граница</h2>
<p>Основное различие между <code>.xlsx</code> и <code>.xlsm</code> заключается в том, позволяет ли структура файла включать исполняемые макропроекты.</p>
<table>
<thead>
<tr>
<th style="text-align:left">Функция / Параметр</th>
<th style="text-align:left"><code>.xlsx</code> (Excel OpenXML таблица)</th>
<th style="text-align:left"><code>.xlsm</code> (Электронная таблица Excel с поддержкой макросов)</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align:left"><strong>Тип MIME содержимого</strong></td>
<td style="text-align:left"><code>application/vnd.openxmlformats-officedocument.spreadsheetml.sheet</code></td>
<td style="text-align:left"><code>application/vnd.ms-excel.sheet.macroEnabled.12</code></td>
</tr>
<tr>
<td style="text-align:left"><strong>Контейнер хранения VBA</strong></td>
<td style="text-align:left"><strong>Строго запрещено.</strong> Нельзя хранить <code>vbaProject.bin</code></td>
<td style="text-align:left"><strong>Разрешено.</strong> Содержит <code>xl/vbaProject.bin</code></td>
</tr>
<tr>
<td style="text-align:left"><strong>Риск нативного выполнения</strong></td>
<td style="text-align:left">Практически незначительно для выполнения макросов; ограничено внедрением формул/DDE</td>
<td style="text-align:left">Высокий; может выполнять автоматизированный VBA‑код при взаимодействии с книгой</td>
</tr>
<tr>
<td style="text-align:left"><strong>Схема OpenXML Strict</strong></td>
<td style="text-align:left">Соответствует строгим, не содержащим макросов XML‑определениям</td>
<td style="text-align:left">Включает определения для устаревших и современных расширений автоматизации</td>
</tr>
<tr>
<td style="text-align:left"><strong>Визуальный индикатор пользователя</strong></td>
<td style="text-align:left">Стандартный зелёный значок таблицы</td>
<td style="text-align:left">Значок таблицы с восклицательным знаком</td>
</tr>
</tbody>
</table>
<h3 id="механизм-принудительного-выполнения-почему-xlsx-не-может-выполнять-макросы">Механизм принудительного выполнения: Почему XLSX не может выполнять макросы</h3>
<p>Распространённый вопрос среди младших администраторов и разработчиков: <em>Что происходит, если злоумышленник берёт вредоносный файл <code>.xlsm</code>, внедряет исполняемый код и переименовывает расширение файла в <code>.xlsx</code>?</em></p>
<p>Краткий ответ: <strong>Файл не выполнит макрос.</strong></p>
<p>Excel не полагается исключительно на расширение файла при определении правил выполнения. При открытии файла с именем <code>.xlsx</code>:</p>
<ol>
<li>Excel проверяет zip‑payload и ссылается на <code>[Content_Types].xml</code>.</li>
<li>В подлинном файле <code>.xlsx</code> все определённые типы содержимого представляют стандартные элементы данных (например, <code>worksheet</code>, <code>sharedStrings</code> или <code>styles</code>).</li>
<li>Если злоумышленник вручную внедряет скомпилированный поток VBA (<code>xl/vbaProject.bin</code>) в пакет <code>.xlsx</code> и обновляет отношения, Excel сталкивается с явным противоречием схемы:
<ul>
<li>Он видит, что расширение <code>.xlsx</code> связано с типами содержимого, указывающими на возможность макросов.</li>
<li>Excel выдаёт фатальную ошибку целостности: <em>&quot;Excel не может открыть файл &lsquo;filename.xlsx&rsquo;, потому что формат файла или расширение недействительны. Убедитесь, что файл не повреждён&hellip;&quot;</em></li>
</ul>
</li>
<li>Если злоумышленник оставляет внутренние типы неизменными, не регистрируя бинарный файл, Excel рассматривает <code>vbaProject.bin</code> как несвязанное, осиротевшее вложение в zip‑архиве и полностью отбрасывает его во время цикла загрузки.</li>
</ol>
<p>Следовательно, <strong>файл, строго функционирующий как подлинный контейнер <code>.xlsx</code>, не может выполнять нативный VBA‑код.</strong> Однако это не означает, что файлы <code>.xlsx</code> свободны от всех векторов атак, как будет рассмотрено далее в этом руководстве.</p>
<h2 id="3-риски-макросов--жизненный-цикл-атаки">3. Риски макросов &amp; Жизненный цикл атаки</h2>
<p>Макросы были созданы для автоматизации повторяющихся задач бухгалтерского учёта, финансового моделирования и обработки данных с помощью Visual Basic for Applications (VBA). Поскольку VBA разрабатывался для автоматизации рабочих процессов, ему был предоставлен обширный доступ к базовой операционной системе Windows через Component Object Model (COM), Windows Script Host (WSH) и прямые вызовы Win32 API.</p>
<p>Когда выполняется недоверенный макрос, он работает с <strong>точно теми же привилегиями, что и вошедший пользователь</strong>. Он не изолирован в виртуализированном песочном окружении в стиле JavaScript‑браузера.</p>
<pre tabindex="0"><code>+--------------------------------------------------------------------------------+
|                             ATTACK LIFECYCLE                                   |
+--------------------------------------------------------------------------------+
                                       │
                                       ▼
  [ Delivery &amp; Evasion ]  ──────► Spear-phishing email with .xlsm, .xlam, or .zip.
                                       │
                                       ▼
  [ Social Engineering ]  ──────► Lures victim to bypass Protected View (&#34;Enable Content&#34;).
                                       │
                                       ▼
  [ Auto-Execution ]      ──────► Auto_Open() or Workbook_Open() triggers automatically.
                                       │
                                       ▼
  [ System Invocation ]   ──────► VBA creates COM objects (WScript.Shell, WinHttp.WinHttpRequest).
                                       │
                                       ▼
  [ Payload Retrieval ]   ──────► Spawns hidden PowerShell/cURL to fetch staging binary.
                                       │
                                       ▼
  [ Post-Exploitation ]   ──────► In-memory execution, credential theft, lateral movement.
</code></pre><h3 id="общие-техники-внедрения-макросов">Общие техники внедрения макросов</h3>
<ol>
<li>
<p><strong>Хуки автоисполнения:</strong>
Злоумышленники размещают точку входа во встроенных обработчиках событий, таких как <code>Sub Auto_Open()</code> или <code>Private Sub Workbook_Open()</code>. Как только пользователь предоставляет разрешения на выполнение, эти процедуры запускаются без необходимости каких-либо кликов внутри таблицы.</p>
</li>
<li>
<p><strong>Обфускация и затирание:</strong></p>
<ul>
<li><strong>Обфускация строк:</strong> Полезные нагрузки скрывают URL‑адреса и системные вызовы, используя массивы символов, XOR‑кодирование, декодирование Base64 или конкатенацию переменных окружения (например, <code>Chr(112) &amp; Chr(111) &amp; Chr(119)...</code>).</li>
<li><strong>VBA затирание:</strong> VBA существует в двух формах внутри <code>vbaProject.bin</code>: интерпретируемый исходный код и скомпилированный p‑code (псевдокод, ориентированный на конкретную версию Office, в которой он был скомпилирован). Злоумышленники могут полностью удалить открытый исходный код, оставив только скомпилированный p‑code. Многие базовые антивирусные решения и статические анализаторы проверяют только поток исходного кода, поэтому p‑code остаётся незамеченным до тех пор, пока не будет выполнен соответствующей версией Office.</li>
</ul>
</li>
<li>
<p><strong>Использование встроенных средств (LotL):</strong>
Современные вредоносные макросы редко сохраняют файл <code>.exe</code> непосредственно на диск, что сразу же привлекло бы внимание агентов Endpoint Detection and Response (EDR). Вместо этого они взаимодействуют со встроенными системными инструментами:</p>
<ul>
<li>Создание экземпляра <code>WScript.Shell</code> для выполнения аргументов командной строки.</li>
<li>Вызов <code>PowerShell.exe</code> с обходом политики выполнения (<code>-ExecutionPolicy Bypass -WindowStyle Hidden</code>).</li>
<li>Вызов нативных API Win32 через <code>Declare PtrSafe Function CreateProcess</code> или <code>VirtualAlloc</code> для внедрения шеллкода непосредственно в системную память.</li>
</ul>
</li>
</ol>
<h2 id="4-другие-векторы-угроз-электронных-таблиц-за-пределами-стандартного-vba">4. Другие векторы угроз электронных таблиц (за пределами стандартного VBA)</h2>
<p>Обеспечение защиты среды от файлов <code>.xlsm</code> — лишь половина задачи. Противники также используют механизмы, работающие независимо от традиционного VBA.</p>
<h3 id="dynamic-data-exchange-dde-и-внедрение-csv11">Dynamic Data Exchange (DDE) и внедрение <a href="https://docs.fileformat.com/spreadsheet/csv/">CSV</a></h3>
<p>Excel поддерживает устаревший протокол под названием Dynamic Data Exchange (DDE), предназначенный для обмена данными между запущенными приложениями (например, потоковая передача данных о котировках акций из отдельной программы в ячейку Excel).</p>
<ul>
<li><strong>Как работает внедрение формул:</strong>
Когда ячейка таблицы начинается с символов, таких как <code>=</code>, <code>@</code>, <code>+</code> или <code>-</code>, Excel интерпретирует содержимое как формулу. Если злоумышленник контролирует ввод, экспортируемый в таблицу (например, несанитизированное поле «Comments» в веб‑приложении, экспортируемое в CSV или XLSX), он может внедрить:
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-text" data-lang="text"><span style="display:flex;"><span>=cmd|&#39;/C powershell.exe -w hidden -enc &lt;base64_payload&gt;&#39;!A0
</span></span></code></pre></div></li>
<li>При открытии Excel вычисляет формулу, выводит пользователю запрос о запуске внешнего приложения и, при согласии, запускает системную оболочку.</li>
</ul>
<h3 id="excel-40-xlm-устаревшие-макросы">Excel 4.0 (XLM) устаревшие макросы</h3>
<p>До того как VBA был введён в 1993 году, Excel использовал основанную на формулах систему макросов, известную как <strong>Excel 4.0 (XLM) макросы</strong>. Эти макросы находятся в специальных листах макросов, а не в отдельном проекте VBA.</p>
<p>Поскольку XLM макросы пишутся как формулы ячеек (например <code>=EXEC(&quot;calc.exe&quot;)</code>), они обходят многие стандартные движки статической проверки VBA. Злоумышленники предпочитали XLM макросы в конце 2010‑х и начале 2020‑х годов, чтобы избежать автоматического обнаружения, пока Microsoft не отключил их по умолчанию в современных корпоративных сборках.</p>
<h3 id="вредоносные-внешние-соединения-и-oleобъекты">Вредоносные внешние соединения и OLE‑объекты</h3>
<p>Обычная рабочая книга <code>.xlsx</code> всё ещё может представлять риск через внешние ресурсы:</p>
<ul>
<li><strong>Встроенные OLE‑пакеты:</strong> Злоумышленник может вставить исполняемый файл, замаскированный под встроенный значок PDF, непосредственно в лист.</li>
<li><strong>Внешние ссылки на книги и веб‑запросы:</strong> XLSX может содержать внешние ссылки, которые автоматически инициируют HTTP‑запросы GET к серверам командно‑управляющего (C2), контролируемым злоумышленником, при открытии файла, в основном используемые для разведки или атак по сбору хешей netNTLM.</li>
</ul>
<h2 id="5-укрепление-корпоративной-инфраструктуры-и-стратегии-глубокой-обороны">5. Укрепление корпоративной инфраструктуры и стратегии глубокой обороны</h2>
<p>Защита от угроз, связанных с Excel, требует многоуровневого подхода, охватывающего сетевую инспекцию, конфигурацию системы, контроль доступа и операционные процессы.</p>
<pre tabindex="0"><code>+─────────────────────────────────────────────────────────+
|                  ENTERPRISE DEFENSE LAYERS               |
+─────────────────────────────────────────────────────────+
|  PERIMETER: Drop inbound .xlsm, .xla, and .xltm at mail |
|  gateway unless cryptographically signed or exempted.   |
+---------------------------------------------------------+
|  IDENTITY &amp; POLICY: Enforce ASR rules and apply         |
|  Mark of the Web (MotW) macro execution blocks.         |
+---------------------------------------------------------+
|  RUNTIME: Hook AMSI into Office to evaluate dynamic     |
|  VBA buffers directly before execution.                 |
+---------------------------------------------------------+
|  STORAGE: Restrict macro execution exclusively to       |
|  managed, centralized Trusted Locations.                |
+─────────────────────────────────────────────────────────+
</code></pre><h3 id="1-применять-метку-вебстраницы-motw-для-блокировки-макросов">1. Применять метку веб‑страницы (MotW) для блокировки макросов</h3>
<p>В 2022 году Microsoft обновила поведение по умолчанию приложений Office: макросы в файлах, полученных из интернета, <strong>по умолчанию блокируются</strong>.</p>
<p>Когда пользователь загружает файл через браузер или внешнее приложение, Windows помечает файл альтернативным потоком данных (ADS) с именем <code>Zone.Identifier</code> (Зона 3 указывает на Интернет). Для файлов с этой меткой Excel полностью отключает макросы и отображает красный баннер безопасности: &gt; <em>&ldquo;РИСК БЕЗОПАСНОСТИ: Microsoft заблокировала выполнение макросов, потому что источник этого файла ненадежен.&rdquo;</em></p>
<p><strong>Administrative Action:</strong> Убедитесь, что это поведение применяется через групповую политику и не может быть переопределено конечными пользователями:</p>
<ul>
<li><strong>Путь GPO:</strong> <code>User Configuration &gt; Administrative Templates &gt; Microsoft Excel 2016 &gt; Excel Options &gt; Security &gt; Trust Center</code></li>
<li><strong>Настройка:</strong> Включить <em>&ldquo;Блокировать выполнение макросов в Office‑файлах из Интернета&rdquo;</em>.</li>
</ul>
<h3 id="2-настроить-правила-снижения-поверхности-атаки-asr">2. Настроить правила снижения поверхности атаки (ASR)</h3>
<p>Организациям, использующим Microsoft Defender for Endpoint, следует активировать основные правила снижения поверхности атаки, разработанные специально для приложений Office:</p>
<ul>
<li><code>Блокировать создание дочерних процессов приложениями Office</code> (GUID: <code>D4F940AB-401B-4EFC-AADC-AD5F3C50688A</code>)
<ul>
<li><em>Не позволяет Excel запускать PowerShell, CMD или движки сценариев.</em></li>
</ul>
</li>
<li><code>Блокировать приложения Office от внедрения кода в другие процессы</code> (GUID: <code>75668C1F-73B5-4CF0-BB93-3ECF5CB7CC84</code>)</li>
<li><code>Блокировать вызовы Win32 API из макросов Office</code> (GUID: <code>92E6390C-CF9E-43CE-BD8C-0E6F0FE66680</code>)</li>
</ul>
<h3 id="3-использовать-интерфейс-сканирования-антивирусного-по-amsi">3. Использовать интерфейс сканирования антивирусного ПО (AMSI)</h3>
<p>Современные версии Microsoft 365 интегрируют выполнение VBA напрямую с AMSI. Даже если злоумышленник применяет сложное обфусцирование строк или VBA stomping, движок выполнения VBA передаёт восстановленные, незашифрованные команды вашему установленному антивирусу/EDR‑движку в точную миллисекунду перед выполнением. Убедитесь, что защита конечных точек активно мониторит события выполнения AMSI.</p>
<h3 id="4-перейти-к-доверенным-расположениям-и-цифровым-сертификатам">4. Перейти к доверенным расположениям и цифровым сертификатам</h3>
<p>Для организаций, зависящих от автоматизированных электронных таблиц в ежедневной работе:</p>
<ul>
<li><strong>Устранить разрозненные файлы XLSM в папках «Загрузки» или на рабочем столе пользователей.</strong></li>
<li><strong>Использовать доверенные места:</strong> Ограничить выполнение макросов исключительно до сетевых ресурсов только для чтения, управляемых ИТ‑администраторами.</li>
<li><strong>Подпись кода:</strong> Требовать, чтобы все внутренне разработанные макросы были криптографически подписаны сертификатом, выданным корпоративной инфраструктурой открытых ключей (PKI). Настроить Excel на выполнение <strong>только</strong> цифрово подписанных макросов и тихо блокировать неподписанные.</li>
</ul>
<h2 id="6-точка-зрения-разработчика-создание-безопасной-автоматизации">6. Точка зрения разработчика: создание безопасной автоматизации</h2>
<p>Если вы разрабатываете программное обеспечение, которое анализирует, генерирует или использует файлы Excel (например, конвейеры Python с использованием <code>pandas</code>/<code>openpyxl</code>, микросервисы Node.js или приложения C#/.NET), примените следующие меры защиты при разработке:</p>
<ol>
<li>
<p><strong>Отклонять неожиданные форматы файлов на границе загрузки:</strong>
Если ваше приложение ожидает финансовые отчёты, строго проверяйте, что входящие файлы соответствуют формату <code>.xlsx</code>. Проверьте внутренние магические байты (стандартный заголовок zip <code>50 4B 03 04</code>) и убедитесь, что в индексе архива нет записей <code>vbaProject.bin</code> перед сохранением в облачные корзины или базы данных.</p>
</li>
<li>
<p><strong>Очистка данных от внедрения формул:</strong>
При экспорте пользовательского ввода в файлы CSV или XLSX добавляйте апостроф (<code>'</code>) или пробел к любой ячейке, начинающейся с опасных символов (<code>=</code>, <code>+</code>, <code>-</code>, <code>@</code>, <code>\t</code>, <code>\r</code>):</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-python" data-lang="python"><span style="display:flex;"><span><span style="color:#66d9ef">def</span> <span style="color:#a6e22e">sanitize_for_spreadsheet</span>(value: str) <span style="color:#f92672">-&gt;</span> str:
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">if</span> value <span style="color:#f92672">and</span> value[<span style="color:#ae81ff">0</span>] <span style="color:#f92672">in</span> (<span style="color:#e6db74">&#39;=&#39;</span>, <span style="color:#e6db74">&#39;+&#39;</span>, <span style="color:#e6db74">&#39;-&#39;</span>, <span style="color:#e6db74">&#39;@&#39;</span>, <span style="color:#e6db74">&#39;</span><span style="color:#ae81ff">\t</span><span style="color:#e6db74">&#39;</span>, <span style="color:#e6db74">&#39;</span><span style="color:#ae81ff">\r</span><span style="color:#e6db74">&#39;</span>):
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">return</span> <span style="color:#e6db74">f</span><span style="color:#e6db74">&#34;&#39;</span><span style="color:#e6db74">{</span>value<span style="color:#e6db74">}</span><span style="color:#e6db74">&#34;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> value
</span></span></code></pre></div></li>
<li>
<p><strong>Перейти от VBA к Office Scripts или веб‑надстройкам:</strong>
Для современной корпоративной автоматизации полностью откажитесь от устаревшего VBA:</p>
<ul>
<li><strong>Office Scripts:</strong> Написанные на TypeScript, Office Scripts работают в изолированной облачной среде и корректно функционируют как в веб‑, так и в настольных версиях, не раскрывая нативные системные вызовы ОС.</li>
<li><strong>Office Web Add-ins:</strong> Созданы с использованием стандартного HTML, CSS и современного JavaScript, веб-надстройки взаимодействуют через управляемые JavaScript API и изолированы от локальной операционной системы.</li>
</ul>
</li>
</ol>
<h2 id="7-сводный-чеклист-по-безопасности-электронных-таблиц">7. Сводный чек‑лист по безопасности электронных таблиц</h2>
<ul>
<li><input disabled="" type="checkbox"> <strong>Применять <code>.xlsx</code> по умолчанию:</strong> Требовать, чтобы все стандартные пользовательские рабочие процессы сохранялись в формате без макросов <code>.xlsx</code>.</li>
<li><input disabled="" type="checkbox"> <strong>Блокировать макросы из интернета:</strong> Убедитесь, что принудительное применение политики MotW развернуто по всей организации через GPO или Intune.</li>
<li><input disabled="" type="checkbox"> <strong>Включить правила ASR:</strong> Запретить продуктам Office запускать интерпретаторы команд или дочерние процессы.</li>
<li><input disabled="" type="checkbox"> <strong>Устареть Excel 4.0 (XLM):</strong> Обеспечить постоянное отключение устаревших движков макросов XLM на всех рабочих станциях.</li>
<li><input disabled="" type="checkbox"> <strong>Очистить экспорт приложений:</strong> Защитить процедуры генерации CSV и Excel от внедрения CSV/формул.</li>
<li><input disabled="" type="checkbox"> <strong>Перейти к Office Scripts:</strong> Перенести устаревшие административные макросы в Office Scripts на основе TypeScript и управляемые API.</li>
</ul>
<p>Рассматривая электронные таблицы не просто как файлы документов, а как структурированные программные контейнеры, обладающие возможностями выполнения, команды безопасности и разработчики могут эффективно нейтрализовать один из самых старых векторов атак в корпоративных вычислениях.</p>
<h1 id="часто-задаваемые-вопросы-faq">Часто задаваемые вопросы (FAQ)</h1>
<h3 id="q1-может-ли-файл-с-расширением-xlsx-запускать-вредоносный-макрос">Q1: Может ли файл с расширением <code>.xlsx</code> запускать вредоносный макрос?</h3>
<p>Нет, стандарт OpenXML строго запрещает макросы в файлах <code>.xlsx</code>, и Excel отклонит или удалит любой проект VBA, внедрённый в подлинный контейнер <code>.xlsx</code>.</p>
<h3 id="q2-что-мне-делать-если-файл-excel-предлагает-мне-включить-редактирование-или-включить-содержимое">Q2: Что мне делать, если файл Excel предлагает мне &ldquo;Включить редактирование&rdquo; или &ldquo;Включить содержимое&rdquo;?</h3>
<p>Предоставляйте разрешения только если вы знаете отправителя и ожидали файл; это окно является основным контрольным пунктом, позволяющим ненадёжным макросам выполнять код.</p>
<h3 id="q3-как-microsoft-excel-определяет-пришёл-ли-файл-из-интернета">Q3: Как Microsoft Excel определяет, пришёл ли файл из интернета?</h3>
<p>Windows добавляет к загруженным файлам скрытый поток &ldquo;Mark of the Web&rdquo; (Zone.Identifier), который сообщает Excel открывать их в защищённом режиме и по умолчанию блокировать макросы.</p>
<h3 id="q4--являются-ли-файлы-csv-более-безопасными-чем-файлы-xlsx1-и-xlsm7">Q4:  Являются ли файлы CSV более безопасными, чем файлы <a href="https://docs.fileformat.com/spreadsheet/xlsx/">XLSX</a> и <a href="https://docs.fileformat.com/spreadsheet/xlsm/">XLSM</a>?</h3>
<p>CSV‑файлы не могут содержать нативные макросы VBA, но они остаются уязвимыми к атакам внедрения формул, если содержат вредоносные команды, которые Excel выполнит при открытии.</p>
<h3 id="q5-чем-современные-office-scripts-отличаются-от-традиционных-макросов-vba">Q5: Чем современные Office Scripts отличаются от традиционных макросов VBA?</h3>
<p>Office Scripts работают на TypeScript в изолированной среде выполнения, что не позволяет им получать доступ к вашей локальной файловой системе, командной строке или API операционной системы.</p>
<h2 id="см-также">См. также</h2>
<ul>
<li><a href="https://blog.fileformat.com/en/spreadsheet/csv-vs-xlsx-vs-ods-in-2026-best-spreadsheet-format-for-developers/">CSV против XLSX против ODS в 2026 году: лучший формат таблиц для разработчиков</a></li>
<li><a href="https://blog.fileformat.com/en/spreadsheet/xls-vs-xlsx-vs-xlsm-vs-xlsb-choosing-the-right-spreadsheet-format/">XLS против XLSX против XLSM против XLSB — выбор правильного формата таблиц</a></li>
<li><a href="https://blog.fileformat.com/spreadsheet/what-is-excel/">Что такое Excel? Ключевая информация, которую вам нужно знать</a></li>
<li><a href="https://blog.fileformat.com/spreadsheet/excel-file-extensions-xlsx-xlsm-xls-xltx-xltm/">Форматы файлов Excel: XLSX, XLSM, XLS, XLTX, XLTM</a></li>
<li><a href="https://blog.fileformat.com/spreadsheet/xls-vs-xlsx/">Разница между XLS и XLSX</a></li>
</ul>
<!-- raw HTML omitted -->
]]></content:encoded>
    </item>
    
  </channel>
</rss>
