Abbyy finereader код ошибки 250

Обновлено: 07.07.2024

Цикл о том, как я нахожу уязвимости повышений привилегий в Windows приложениях, продолжается. В предыдущих сериях: Steam (CVE-2019-14743, CVE-2019-15316, CVE-2019-17180) и Origin (CVE-2019-19247, CVE-2019-19248). Но сегодня речь пойдет не об игровом лаунчере, а о прикладном программном комплексе ABBYY FinerReader.

Краткое содержание – я расскажу, как благодаря компоненту, проверяющему лицензию, за 10 минут можно поднять свои права с уровня пользователя до NT AUTHORITY\SYSTEM. Данной уязвимости был присвоен идентификатор CVE-2019-20383, ссылка на сайт ABBYY.

Разведка

Я скачал с сайта ABBYY пробную версию FineReader и быстро проверил ее на предмет того, а есть ли вообще смысл ковырять продукт на предмет повышения привилегий. Да, в состав продукта входит сервис, который, судя по названию «ABBYY network license server», связан с лицензиями и по-умолчанию запущен от пользователя NT AUTHORITY\SYSTEM. Я запустил ProcMon начал смотреть поведение сервиса.

Мое внимание привлек файл, расположенный по пути «C:\ProgramData\ABBYY\FineReader\15\Licenses\Licensing.cnt». Сервис что-то из него читает, что-то в него пишет, в общем файл выглядел интересным кандидатом для опытов. Рассмотрим папку «C:\ProgramData\ABBYY\FineReader\15\Licenses». Для данной папки действует наследованный ACL «Все-Полный доступ» от родительской папки («C:\ProgramData\ABBYY\FineReader\15»), а значит можно удалить все ее содержимое, включая файл «Licensing.cnt».

Сервис, обнаружив отсутствие файла, попытался его создать, причем немного странным образом. Он создал файл вида «tmpXXXX-YYYYYYYYY.tmp», записал в него какие-то данные, а затем переименовал его в «Licensing.cnt».

Вот лог ProcMon в котором эта операция выполняется дважды.


Сначала она происходит в 20:36, а затем в 20:46. Между этими временными отметками файл снова был удален, чтобы быть созданным снова.

Прямоугольником 1 обозначена ситуация, когда сервис обнаружил отсутствие файла. Прямоугольник 2 – создание временного файла. Прямоугольник 3 – переименование временного файла. Прямоугольник 4 – повторение операций через 10 минут.

Рассмотрим формат имени «tmpXXXX_YYYYYYYYY.tmp». В рамках одного запущенного процесса XXXX будет всегда постоянным, более того, на самом деле это идентификатор треда, который выполняет данные работы. YYYYYYYYY не остается постоянным, но если посмотрим на два соседних запуска (значения: 430210515 и 430810515), то появляется предположение, что это просто некоторая временная метка – разница между числами 600000 – удивительным образом совпадает с 10 минутами разницы. Еще несколько тестов подтверждают наше предположение.
Подведем итог этой части. Любой пользователь может удалить файл «C:\ProgramData\ABBYY\FineReader\15\Licenses\Licensing.cnt», далее он может в цикле очень часто запрашивать содержимое папки «C:\ProgramData\ABBYY\FineReader\15\Licenses» и в некоторый момент обнаружить там файл с именем «tmpXXXX_YYYYYYYYY.tmp». Теперь пользователь будет подготовлен, после удаления файла он точно будет знать, в какой момент и с каким именем будет создан файл в следующий раз.

Теперь мы поиграем с симлинками

Как создавать симлинки без прав администратора

В общем случае, для создания симлинка с одного файла на другой необходимы права администратора. Но эту необходимость можно обойти. Рассмотрим, например, создание симлинка с файла «C:\abc\1» на файл «C:\def\2».

Сначала создадим NTFS reparse point (другое название NTFS mount point) с папки «C:\abc» на «\RPC Control\". «\RPC Control\» – это не обычная папка в привычном нам понимании, ее нельзя посмотреть, например, в эксплорере. Это системная объектная директория, внутри которой находятся, например, именованные мьютексы, события и прочие подобные объекты. Почему для нее работает перенаправление через NTFS reparse point непонятно, скорее всего, дело в использовании одинаковых абстракций для папок в файловой системе и объектных директорий. Для создания репарс-поинта необходимо, чтобы папка-источник была пустой и были права на запись в эту папку у пользователя.

Из объектной директории можно создать симлинк на файл без прав администратора. Создадим симлинк вида "\RPC Control\1" <-> «C:\def\2». В итоге, при обращении к файлу «C:\abc\1», все действия будут перенаправлены на файл «C:\def\2».

Изначально процесс создания файла-лицензии выглядит так:


Когда мы знаем точный момент следующей такой операции, мы можем создать следующие симлинки (имя исходной папки «C:\ProgramData\ABBYY\FineReader\15\Licenses\» пропустим):

tmpXXXX_YYYYYYYYA.tmp <-> C:\test\l1\proxy
tmpXXXX_YYYYYYYYB.tmp <-> C:\test\l1\proxy
tmpXXXX_YYYYYYYYC.tmp <-> C:\test\l1\proxy

tmpXXXX_YYYYYYYYZ.tmp <-> C:\test\l1\proxy

Где YYYYYYYYA, YYYYYYYYB, YYYYYYYYC, … YYYYYYYYZ – это различные временные метки в районе YYYYYYYYY+10минут (на случай, если временная метка слегка запоздает).

Далее создадим линк:

Обратите внимание, что реально ни одного из этих файлов не существует. Это нужно, чтобы при обращении, например, к tmpXXXX_YYYYYYYYB.tmp, произошло два перенаправления и в результате сервис работал с файлом «C:\test\l2\nope».
Как только мы обнаружим создание файла «C:\test\l2\nope», тут же следует создать два новых симлинка:

C:\test\l1\proxy <-> C:\test\l2\payload
Licensing.cnt <-> C:\target\path

Сервис продолжит писать содержимое файла в «C:\test\l2\nope», но переименование будет производить, уже пройдя по новому симлинку. Таким образом, вместо переименования, например, «tmpXXXX_YYYYYYYYC.tmp» в «Licensing.cnt», реально будет переименован (перемещен) «C:\test\l2\payload» в «C:\target\path». Фактически мы можем разместить файл с любым содержимым по любому пути от имени пользователя NT AUTHORITY\SYSTEM.

Схематично это будет выглядеть так:


Цветом отмечено то, что реально будет выполняться из-за влияния симлинков.

Поднять привилегии, используя полученный примитив, уже легко – можно подложить свою dll к системным процессам и прочие подобные вещи. На этом этапе я обратился к представителям ABBYY и передал им информацию об уязвимости.

На данный момент, согласно ABBYY, уязвимость закрыта.

Timeline

25.11.2019 — обнаружение уязвимости
26.11.2019 — запросил у производителя security-контакт
26.11.2019 — отправка отчета об уязвимости производителю
09.12.2019 — уязвимость подтверждена производителем
10.01.2020 — уязвимость исправлена
22.01.2020 — уязвимости присвоен CVE-2019-20383
19.02.2020 — публикация данной статьи

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

Ошибка при установке

В том случае, если проблема осталась, проделайте следующие шаги:

Ошибка доступа к файлу в FineReader 1

Ошибка доступа к файлу в FineReader 2

Ошибка доступа к файлу в FineReader 3

Ошибка доступа к файлу в FineReader 4

После этого попробуйте начать установку заново.

Установочный файл всегда запускайте от имени администратора.

Ошибка при запуске

Обратите внимание на версию программы. Прописывайте ту, которая установлена у вас.

Ошибка доступа к файлу в FineReader 5

Ошибка доступа к файлу в FineReader 6

Ошибка доступа к файлу в FineReader 7

Таким образом исправляется ошибка доступа при установке и запуске FineReader. Надеемся, эта информация будет вам полезна.

Закрыть

Мы рады, что смогли помочь Вам в решении проблемы.

Отблагодарите автора, поделитесь статьей в социальных сетях.

Закрыть

Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.

Файл abbyy finereader 11.exe из unknown company является частью unknown product. abbyy finereader 11.exe, расположенный в c: \program files \ (x86)utilitesfinereader\ abbyy finereader 11 .exe с размером файла 91744626 байт, версия файла Unknown version, подпись b35a8daf87b1f83103cb8246beed424c.

  1. Запустите приложение Asmwsoft Pc Optimizer.
  2. Потом из главного окна выберите пункт "Clean Junk Files".
  3. Когда появится новое окно, нажмите на кнопку "start" и дождитесь окончания поиска.
  4. потом нажмите на кнопку "Select All".
  5. нажмите на кнопку "start cleaning".

Clean Registry to fix abbyy finereader 11.exe has stopped working error

  1. Запустите приложение Asmwsoft Pc Optimizer.
  2. Потом из главного окна выберите пункт "Fix Registry problems".
  3. Нажмите на кнопку "select all" для проверки всех разделов реестра на наличие ошибок.
  4. 4. Нажмите на кнопку "Start" и подождите несколько минут в зависимости от размера файла реестра.
  5. После завершения поиска нажмите на кнопку "select all".
  6. Нажмите на кнопку "Fix selected".
    P.S. Вам может потребоваться повторно выполнить эти шаги.

3- Настройка Windows для исправления критических ошибок abbyy finereader 11.exe:

Clean Registry to fix abbyy finereader 11.exe has stopped working error

  1. Нажмите правой кнопкой мыши на «Мой компьютер» на рабочем столе и выберите пункт «Свойства».
  2. В меню слева выберите " Advanced system settings".
  3. В разделе «Быстродействие» нажмите на кнопку «Параметры».
  4. Нажмите на вкладку "data Execution prevention".
  5. Выберите опцию " Turn on DEP for all programs and services . " .
  6. Нажмите на кнопку "add" и выберите файл abbyy finereader 11.exe, а затем нажмите на кнопку "open".
  7. Нажмите на кнопку "ok" и перезагрузите свой компьютер.
Как другие пользователи поступают с этим файлом?

Всего голосов ( 182 ), 115 говорят, что не будут удалять, а 67 говорят, что удалят его с компьютера.


Важно! По поводу распознавания текста. Скорее всего принцип работы такой: вы делаете скриншот области экрана с текстом, после чего прога может понять что за текст и записать в файл или скопировать его например в буфер. Но есть другая версия, что все работает немного иначе: вы выделяете область экрана с текстом, и уже после этого прога считывает текст. То есть без создания скриншота.

Устанавливается прога в эту папку:

C:\Program Files (x86)\ABBYY Screenshot Reader 11\

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

У программы есть своя иконка в трее, по которой если правой кнопкой нажать, то будет такое меню:

Можно сразу открыть прогу либо навести мышку на меню Настройки, в котором находятся такие функции: поверх других окон, запускать при загрузке системы, включить звуки, загружать подсказки с сервера ABBYY (этот пункт почему-то неактивен).

Кстати программа работает под процессом ScreenshotReader. exe.

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

Должен сказать, что функции впечатляют. Конечно это круче чем просто скриншотер.

То появляется такое окно:

И даже если выбрать первый вариант, то есть самый быстрый, то потом нужно заполнить вот столько данных:

Итак, какие я могу выделить плюсы:

И какие минусы вижу:

Возможно есть еще плюсы или минусы, может что-то не учел.

Штатное удаление (деинсталляция):

ABBYY FineReader зависает при сканировании (Ошибка «Параметр задан неверно»)

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

Содержание:

Введение

Первым делом нужно проверить, что сканер или любое другое ваше устройство подключено правильно и установлены последние драйвера для него. Можете еще проверить, как работает сканирование через стандартное приложение Windows. Если там всё работает, а в ABBYY FineReader отказывается, значит продолжаем разбираться дальше. В противном случае, скачиваем драйвера с официального сайта производителя и обновляем их.

Ошибки, с которыми я столкнулся

Первая. При попытке отсканировать документы, ABBYY FineReader зависает и уходите в бесконечное ожидание. Выйти из которого помогает только «Диспетчер задач» через снятие задачи с программы.

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

Инструкция для исправления ошибки

Запускаем ABBYY FineReader, в моем случае это 10 версия:

Находим на верхней панели «Сервис» и открываем меню:

Далее переходим в «Опции» (так же, можно воспользоваться сочетанием клавиш «Ctrl+Shift+O») и открываем вкладку «Сканировать/Открыть»:

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

Как правило, в большинстве случаев, и в моем тоже, рекомендуется выбирать TWAIN драйвер. Под списком драйверов, ставим галочку «Использовать интерфейс сканера». Закончив с настройкой, нажимаем на «ОК» для сохранения всех изменений. Если после выбора драйвера проблема не ушла, нужно попробовать другой.

Заключение

Ошибка при установке

Первым делом нужно проверить, что сканер или любое другое ваше устройство подключено правильно и установлены последние драйвера для него. Можете еще проверить, как работает сканирование через стандартное приложение Windows. Если там всё работает, а в ABBYY FineReader отказывается, значит продолжаем разбираться дальше. В противном случае, скачиваем драйвера с официального сайта производителя и обновляем их.

Ошибки, с которыми я столкнулся

Первая. При попытке отсканировать документы, ABBYY FineReader зависает и уходите в бесконечное ожидание. Выйти из которого помогает только «Диспетчер задач» через снятие задачи с программы.

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

Инструкция для исправления ошибки

Запускаем ABBYY FineReader, в моем случае это 10 версия:

Находим на верхней панели «Сервис» и открываем меню:

Далее переходим в «Опции» (так же, можно воспользоваться сочетанием клавиш «Ctrl+Shift+O») и открываем вкладку «Сканировать/Открыть»:

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

Как правило, в большинстве случаев, и в моем тоже, рекомендуется выбирать TWAIN драйвер. Под списком драйверов, ставим галочку «Использовать интерфейс сканера». Закончив с настройкой, нажимаем на «ОК» для сохранения всех изменений. Если после выбора драйвера проблема не ушла, нужно попробовать другой.

Заключение

С описанными в этом разделе неполадками пользователи сталкиваются еще до установки и начала использования Виндовс 10. Как правило, проблемы с переходом на новую ОС возникают у пользователей Windows 7. Это объясняется тем, что в Майкрософт отменили полную поддержку семерки и теперь установка новых компонентов десятой версии может привести к возникновению системных ошибок.

Коды ошибок, которые возникают при установке

Синий экран смерти (или BSoD) – это самая серьёзная ошибка всех версий ОС Windows. Цвет экрана может быть как синим (в 95% случаев), так и красным.

Распространенные причины появления BSoD:

Красный экран смерти

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

В десятой версии Виндовс стало гораздо удобнее взаимодействовать с BSoD. В окне появилось более-менее нормальное описание для возникшей ошибки, и пользователи могут просканировать QR-код, который перенаправит их на страничку с детальными указаниями для решения проблемы.

Универсальный способ устранения экрана смерти:

Другие ошибки в работе ОС

Рассмотрим распространенные типы неполадок, которые могу появляться при работе с ОС Windows 10.

Неполадки с USB

Часто при подключении любого устройства через USB (флешки или кабеля) появляется ошибка с кодом 43 Windows 10. Она указывает на то, что материнская плата не может подключиться к устройству.

Проблема имеет аппаратных характер и используемый разъем следует починить или заменить. Попробуйте подключить устройство к другому порту USB на вашем компьютере.

Не исключён и единовременный программный сбой. Для его устранения вы можете попробовать выполнить такие действия:

Код 0x8004005

Сразу после установки Виндовс 10 в системе может возникать ошибка с кодом 0х8004005. При этом, появляются проблемы в работе сетевого оборудования. Часто подключение к интернету пропадает, но появляется после перезагрузки ПК и снова исчезает через 5-10 минут.

Для устранения этой неполадки разработчики выпустили специальный пакет обновлений 0x80KB3081424. Если в данный момент на компьютере есть соединение с сетью, запустите работу Центра обновлений и пакет будет установлен автоматически.

В случае, если подключение не работает, загрузите нужный пакет с сайта Майкрософт на другой ПК и скиньте файл на свой компьютер. Выполните установку и перезапустите ОС.

Теперь вы знаете, как устранить распространенные коды ошибок в Windows 10. Делитесь в комментариях, с какими багами и неполадками сталкивались вы и как смогли их решить.

Читайте также: