отладчик edb: не удалось открыть и присоединить к процессу, пожалуйста, проверьте привилегии и повторите попытку

#debugging #edb

#отладка #edb

Вопрос:

При открытии двоичного файла я получил диалоговое окно «Не удалось открыть» с приведенной ниже ошибкой:

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

(это должны быть привилегии, а не привилегии)

Шаги для воспроизведения:

  • Запустите edb и откройте двоичный файл с помощью File -> Open
  • Или откройте его непосредственно с терминала: edb —run /path /to /binary /file

Дата сборки и платформа:

 dev-util/edb [1]
     Available versions:  (~)0.9.17!m!s
     Installed versions:  0.9.17!m!s(06:48:39 PM 04/17/2011)
     Homepage:            http://www.codef00.com/projects#debugger
     Description:         EDB "Evan's Debugger" (OllyDbg workalike for Linux)
  

в Gentoo r10 — 2.6.31

Ниже приведена информация при запуске с помощью gdb:

 (gdb) run --run virus.doc.bin 
Starting program: /usr/bin/edb --run virus.doc.bin
[Thread debugging using libthread_db enabled]
Starting edb version: 0.9.17 
Please Report Bugs amp; Requests At: http://bugs.codef00.com/
[load_plugins] Loading Plugin: libAnalyzer.so                 : 0x81dff18
[load_plugins] Loading Plugin: libBinarySearcher.so           : 0x81f1ea8
[load_plugins] Loading Plugin: libBookmarks.so                : 0x81f1a00
[load_plugins] Loading Plugin: libBreakpointManager.so        : 0x8250fe0
[load_plugins] Loading Plugin: libCheckVersion.so             : 0x81eb970
[load_plugins] Loading Core Plugin: libDebuggerCore.so        : 0x824b380
[load_plugins] Loading Plugin: libDumpState.so                : 0x8250938
[load_plugins] Loading Plugin: libELFBinaryInfo.so            : 0x82499c8
[load_plugins] Loading Plugin: libEnvironment.so              : 0x8253fa0
[load_plugins] Loading Plugin: libFunctionDB.so               : 0x824c768
[load_plugins] Loading Plugin: libFunctionFinder.so           : 0x824a0c0
[load_plugins] Loading Plugin: libHardwareBreakpoints.so      : 0x8257490
[load_plugins] Loading Plugin: libHeapAnalyzer.so             : 0x82586b0
[load_plugins] Loading Plugin: libOpcodeSearcher.so           : 0x8249940
[load_plugins] Loading Plugin: libOpenFiles.so                : 0x82574b0
[load_plugins] Loading Plugin: libReferences.so               : 0x82592b0
[load_plugins] Loading Plugin: libROPTool.so                  : 0x8259278
[load_plugins] Loading Plugin: libSessionManager.so           : 0x8258c90
[load_plugins] Loading Plugin: libStringSearcher.so           : 0x825b3d0
[load_plugins] Loading Plugin: libSymbolViewer.so             : 0x8255308
[Function Database] loaded with 103 function definitions. 
[New Thread 0xb26e0b70 (LWP 2401)]
[New Thread 0xb1d0eb70 (LWP 2481)]
comparing versions: [2321] [2321]
[Thread 0xb1d0eb70 (LWP 2481) exited]
[Thread 0xb26e0b70 (LWP 2401) exited]

Program exited normally.
(gdb)
  

PS: Я также пытался запустить его от имени root, но все равно получил ту же ошибку.

Ответ №1:

Я автор edb. Итак, прежде всего, спасибо за проявленный интерес к моему отладчику :-).

Если кому-то интересно продолжение, quanta связалась со мной через мою bugzilla, так что вы можете посмотреть больше обсуждения здесь:https://github.com/eteran/edb-debugger/issues/87

РЕДАКТИРОВАТЬ: Итак, недавно я смог воспроизвести ошибку такого рода! Возможно, это не та причина, с которой вы столкнулись, но кто знает, возможно, все возможно :-).

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

Ответ №2:

К вашему сведению, я увидел эту ошибку при попытке открыть двоичный файл, который принадлежал root с привилегиями 644. chmod для 755 и chown для обычного пользователя решили проблему.

Ответ №3:

У меня возникла проблема, из-за которой edb не удалось запустить crossfire. Моя проблема заключалась в том, что я запускал 64bit live cd, а crossfire не мог запуститься, поэтому edb выдал ошибку.

Установлена 32-разрядная библиотека поддержки (libc6-i386), и edb работает нормально.

Ответ №4:

Это, скорее всего, потому, что двоичный файл не был установлен в качестве исполняемого файла. Используйте Chmod, чтобы установить его как исполняемый файл. И запустите evan debugger от имени root. У меня это сработало.

Ответ №5:

Возможно, поздно, но в любом случае, я восстанавливаю то, что я сделал, и объясняю решение.

Я запустил текстовый редактор (Kate), создаю ассемблерные программы и сохраняю их на жестком диске, каталог, в котором я хотел сохранить, я создал в диалоговом окне «Сохранить как». Я собрал программу и запустил ее с помощью edb —run ./myprogram. И действительно, «Не удалось открыть и присоединить к процессу, пожалуйста, проверьте привилегии и повторите попытку». диалоговое окно.

Решение моей проблемы. Я изменил разрешения для папки (только) на 777, и это сработало. Странная вещь, когда я восстановил ошибку, она исчезла. (Первой папкой был ipv42hex, вторая папка была тестовой. У обеих папок было разрешение dwrx-rx—x.