Vector35 / binaryninja-api

Public API, examples, documentation and issues for Binary Ninja
https://binary.ninja/
MIT License
927 stars 209 forks source link

Frequent crashing on Windows 11 #4585

Closed Kharos102 closed 1 year ago

Kharos102 commented 1 year ago

Version and Platform (required):

Bug Description: Using the application (opening / analyzing windows 64bit PE files, browsing the UI) will frequently cause a crash at seemingly random times.

Steps To Reproduce:

  1. Open a PE32+ DLL or binary
  2. Browse around the UI, view strings, click on cross-references, etc for about 10 minutes
  3. Crash happens

Screenshots:

Additional Information: I've also included a stack trace below:

First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
binaryninjaui!SymbolListModel::OnSymbolUpdated+0x1b64:
00007ff9`27eeba24 ff9068010000    call    qword ptr [rax+168h] ds:00007ff9`00000189=????????????????
0:000> knL
 # Child-SP          RetAddr               Call Site
00 00000007`4b2fa000 00007ff9`27badca9     binaryninjaui!SymbolListModel::OnSymbolUpdated+0x1b64
01 00000007`4b2fa040 00007ff9`27bc8c60     binaryninjaui!UIActionHandler::actionContext+0x29
02 00000007`4b2fa080 00007ff6`9e5f744e     binaryninjaui!MainMenuInstance::update+0x70
03 00000007`4b2fa1e0 00007ff6`9e5f715f     binaryninja+0xb744e
04 00000007`4b2fa330 00007ff6`9e5851f2     binaryninja+0xb715f
05 00000007`4b2fa360 00007ff9`2886aa21     binaryninja+0x451f2
06 00000007`4b2fa390 00007ff9`2886ce64     Qt6Core!QObject::qt_static_metacall+0x1951
07 00000007`4b2fa4f0 00007ff9`2755ab2a     Qt6Core!QMetaObject::activate+0x84
08 00000007`4b2fa520 00007ff9`27565c20     Qt6Widgets!QApplication::focusChanged+0x4a
09 00000007`4b2fa580 00007ff9`275a92d5     Qt6Widgets!QApplicationPrivate::setFocusWidget+0x200
0a 00000007`4b2fa5f0 00007ff9`27ea8b2a     Qt6Widgets!QWidget::setFocus+0x285
0b 00000007`4b2fa6a0 00007ff9`2759c8e3     binaryninjaui!Sidebar::mousePressEvent+0x1da
0c 00000007`4b2fa710 00007ff9`27560fae     Qt6Widgets!QWidget::event+0x143
0d 00000007`4b2fa7f0 00007ff9`2755f17e     Qt6Widgets!QApplicationPrivate::notify_helper+0x10e
0e 00000007`4b2fa820 00007ff9`28831175     Qt6Widgets!QApplication::notify+0x6ce
0f 00000007`4b2facf0 00007ff9`275649c2     Qt6Core!QCoreApplication::notifyInternal2+0xc5
10 00000007`4b2fad60 00007ff9`275ba649     Qt6Widgets!QApplicationPrivate::sendMouseEvent+0x402
11 00000007`4b2fae80 00007ff9`275b7e8b     Qt6Widgets!QWidgetRepaintManager::updateStaticContentsSize+0x33d9
12 00000007`4b2fb380 00007ff9`27560fae     Qt6Widgets!QWidgetRepaintManager::updateStaticContentsSize+0xc1b
13 00000007`4b2fb490 00007ff9`275601ca     Qt6Widgets!QApplicationPrivate::notify_helper+0x10e
14 00000007`4b2fb4c0 00007ff9`28831175     Qt6Widgets!QApplication::notify+0x171a
15 00000007`4b2fb990 00007ff9`23e553c6     Qt6Core!QCoreApplication::notifyInternal2+0xc5
16 00000007`4b2fba00 00007ff9`23ea0da8     Qt6Gui!QGuiApplicationPrivate::processMouseEvent+0x676
17 00000007`4b2fbf30 00007ff9`28987990     Qt6Gui!QWindowSystemInterface::sendWindowSystemEvents+0xe8
18 00000007`4b2fbf60 00007ff9`240dc329     Qt6Core!QEventDispatcherWin32::processEvents+0x90
19 00000007`4b2ff0c0 00007ff9`28836844     Qt6Gui!QWindowsGuiEventDispatcher::processEvents+0x19
1a 00000007`4b2ff0f0 00007ff9`2882f45d     Qt6Core!QEventLoop::exec+0x1c4
1b 00000007`4b2ff190 00007ff6`9e588f75     Qt6Core!QCoreApplication::exec+0x15d
1c 00000007`4b2ff1f0 00007ff6`9e7b50e0     binaryninja+0x48f75
1d 00000007`4b2ffe00 00007ff9`631b257d     binaryninja+0x2750e0
1e 00000007`4b2ffe40 00007ff9`645eaa68     KERNEL32!BaseThreadInitThunk+0x1d
1f 00000007`4b2ffe70 00000000`00000000     ntdll!RtlUserThreadStart+0x28
xusheng6 commented 1 year ago

This seems related to: https://github.com/Vector35/debugger/issues/506. We are seeing multiple crashes related to the symbol list recently. I am trying to find if a particular commit is causing this.

bpotchik commented 1 year ago

Fixed in 3.5.4482-dev.