1
0
Fork 0
Commit Graph

1493 Commits

Author SHA1 Message Date
torusrxxx 3817686d95
Add autocomment for breakpoint 2021-12-26 17:24:00 +08:00
torusrxxx d7d9e95272
Add support for printing floating point numbers in XMM/YMM 2021-12-25 17:36:29 +08:00
torusrxxx 0f9f668221
Add string format to print floating point number pointer 2021-12-21 14:46:37 +08:00
Duncan Ogilvie 703ae954d7 Rudimentary support for Windows Sandbox
- \Device\ paths are not supported by CreateFile
- Add a hackfix for \Device\vmsmb\VSMB-*\os\Windows\ paths
2021-11-24 01:21:39 +01:00
Duncan Ogilvie 527356f640 Fix a use after free in ExpressionFunctions::Unregister
Closes #2774
2021-10-25 10:55:22 +02:00
Duncan Ogilvie 4ee4a51e43
Merge pull request #2771 from ZehMatt/scriptapi-memoryprot
Refactor memory protection access and add new script API method
2021-10-23 16:31:27 +02:00
ζeh Matt 2c14dbb0c9
Split pages only if view requests it 2021-10-23 17:30:27 +03:00
ζeh Matt dad048647e
Use explicit size for changing memory protections and split range 2021-10-22 15:55:23 +03:00
ζeh Matt 105aaa2ab7
Refactor scripting API to use new accessors 2021-10-22 14:27:28 +03:00
ζeh Matt c6da82bf7b
Refactor access to memory page protection 2021-10-22 14:26:51 +03:00
torusrxxx bb579fe509
fix #2769 2021-10-22 18:42:05 +08:00
Duncan Ogilvie 296091f6dd
Merge pull request #2762 from ZehMatt/refactor-warnings
Fix some warnings
2021-10-15 10:00:16 +02:00
Duncan Ogilvie 4af034a3e7
Merge pull request #2760 from torusrxxx/patch000000c9
Fixed a bug that overwrites last character of DBCS string with NUL
2021-10-14 21:49:33 +02:00
ζeh Matt 9fe339b902
Fix some warnings 2021-10-14 17:46:23 +03:00
torusrxxx a2459f64ab
Fixed a bug that overwrites last character of DBCS string with NUL 2021-10-14 18:15:33 +08:00
Duncan Ogilvie 4da46324a6
Merge pull request #2758 from ZehMatt/refactor-memupdate
Split MemUpdateMap into smaller functions
2021-10-14 11:34:23 +02:00
ZehMatt 5f0afc0845
Split MemUpdateMap into smaller functions 2021-10-13 22:01:16 +03:00
Duncan Ogilvie 555c3912f8
Merge pull request #2744 from torusrxxx/patch000000c8
set default log and command conditions
2021-10-05 00:03:51 +02:00
Duncan Ogilvie cb045065d9
Merge pull request #2740 from yunzheng/comment-label-formatfunction
DBG: add comment and label format functions
2021-10-05 00:03:24 +02:00
Yun Zheng Hu fe77dbb6db DBG: AStyle formatfunctions.cpp 2021-10-02 20:07:28 +02:00
torusrxxx 220ba9a7d1
set default log and command conditions 2021-10-01 17:46:26 +08:00
Yun Zheng Hu bf7a9d2f32 DBG: add comment and label format functions 2021-09-28 13:42:58 +02:00
the_janitor 02f8f2c7da Added optional flag to enable the alternative memory breakpoint (PAGE_NOACCESS) 2021-09-02 03:19:07 +02:00
the_janitor e14aa41768 Moved the location of CB_STOPPINGDEBUG to the end of the enum 2021-08-21 03:01:48 +02:00
the_janitor 60e0224155 Added CB_STOPPINGDEBUG plugin callback in order to let pluginsperform clean-up 2021-08-17 14:03:40 +02:00
morsisko f73d44c0e4 DBG: Changed comment near symfollow 2021-07-31 23:59:15 +02:00
morsisko 5e6e503185 GUI: Added command to follow address in symbols tab 2021-07-31 19:36:30 +02:00
morsisko b3f699d207 DBG: Fixed crash when comment longer than 512 characters 2021-07-28 22:29:58 +02:00
Duncan Ogilvie 2a34dd14c9
Merge pull request #2695 from ZehMatt/templabel
Add temporary label support for scripting
2021-07-25 22:01:58 +02:00
ZehMatt 2179aa1467
Fix Script::Label::GetInfo never returning anything 2021-07-19 21:42:33 +03:00
ZehMatt c85d52b0d6
Add temporary label support for scripting 2021-07-19 18:36:11 +03:00
ZehMatt 31bec6102a
Fix expressions not passing correct arguments 2021-07-09 20:45:27 +03:00
Duncan Ogilvie 65625d9de5 Return zero instead of an undefined value when using Script::Memory::ReadXXX on an invalid address 2021-07-01 13:32:43 +02:00
Duncan Ogilvie da085fe84f Attempt to fix a potential deadlock in rare conditions while unloading plugins 2021-06-29 23:19:12 +02:00
Duncan Ogilvie a0ec113979 Simplify and improve process creation handling
Delays the CB_CREATEPROCESS callback until after the main thread is created
2021-06-14 16:26:32 +02:00
Duncan Ogilvie e0ed301085
Merge pull request #2661 from torusrxxx/patch000000bf
Break when there is an error in conditional breakpoint or tracing
2021-06-12 12:04:39 +02:00
the_janitor 71ee2aa12d hActiveThread is now being updated in cbDebugEvent (Issue #2663) 2021-06-12 06:37:58 +02:00
torusrxxx c1b9464884
Allow the user to cancel reloading plugin 2021-05-11 18:32:27 +08:00
torusrxxx fc59b0919b
Break when there is an error in conditional breakpoint or tracing 2021-05-11 18:20:47 +08:00
Duncan Ogilvie 2ed439677e Show ordinal names in the undecorated symbol column
Thanks to @dmex for the suggestion
2021-05-08 14:06:57 +02:00
Duncan Ogilvie 654f1195b3 DBG: Fix a minor correctness issue in the utf8 and utf16 expression functions 2021-04-05 01:52:12 +02:00
Duncan Ogilvie c12eb532c7
Merge pull request #2430 from xenocidewiki/exprfunc
New system for expression functions
2021-03-24 22:42:00 +01:00
xenocidewiki dceea084c2 Added support for any value types and done some improvements 2021-03-24 21:07:27 +00:00
xenocidewiki 91a1b9d766 Add check to not evaluate expressions that don't make sense 2021-03-23 23:46:21 +00:00
Duncan Ogilvie b0271eb268 DBG: Add kusd() expression function 2021-03-23 19:06:51 +01:00
Duncan Ogilvie d6c168c25e Implement type-safe expression functions 2021-03-21 02:51:48 +01:00
xenocidewiki 3ab89502cd DBG: New expression function plugin system, string support 2021-03-20 23:46:41 +00:00
Matthijs Lavrijsen 6092acd0d0
DBG: clear history before exit breakpoint 2021-03-18 16:49:01 +01:00
Duncan Ogilvie d5e265a501 Fix a race condition when spamming restarts 2021-03-16 01:09:45 +01:00
Matthijs Lavrijsen 0c81a126ca
DBG: move NtTerminateProcess event from a bp to exit process callback 2021-02-04 05:08:43 +01:00
Duncan Ogilvie b7e50aa3a2
Merge pull request #2586 from Mattiwatti/exception-filters
Make Exceptions Great Again
2021-02-02 17:29:44 +01:00
Duncan Ogilvie b8b677d654
Merge pull request #2566 from torusrxxx/patch000000b7
Database actions in the file menu, and recover database backup
2021-02-02 17:29:24 +01:00
Matthijs Lavrijsen f49835b3bf
DBG: use PointerToRawData in debug directory if no RVA is present 2021-01-31 00:49:46 +01:00
Matthijs Lavrijsen 93794bf8cf
DBG: add more fine-grained exception filtering settings 2021-01-29 11:33:29 +01:00
torusrxxx c1f51a31bc
Add symbols in function list when no label 2021-01-20 17:14:02 +08:00
Duncan Ogilvie 1cf9e5d167
Merge pull request #2571 from torusrxxx/patch000000b8
Hopefully fix #2570
2021-01-14 13:04:31 +01:00
torusrxxx 11c8f7e02a
Fix GUI exceptions with massive traceexecute 2021-01-08 22:28:59 +08:00
torusrxxx 400964e876
Merge branch 'development' into patch000000b9 2021-01-08 20:26:43 +08:00
torusrxxx 4dfeca4078
Fix bugs with singleshoot breakpoints 2021-01-05 23:27:13 +08:00
torusrxxx 7adea4d975
Go to function return in trace view 2021-01-05 18:03:09 +08:00
torusrxxx 9fb5641b7e
Hopefully fix #2570 2021-01-04 20:33:45 +08:00
torusrxxx 178482bf85
Database actions in the file menu, and recover database backup 2020-12-30 20:18:33 +08:00
torusrxxx 42f9370076 Merge branch 'newcallview' of https://github.com/morsisko/x64dbg into patch000000b2 2020-12-24 18:59:48 +08:00
torusrxxx 9fe6a9c164
Fixing handles crash 2020-12-22 19:44:16 +08:00
morsisko b8db2b23e7 DBG: Fixed issue mentioned in comment to #2310 - force value refresh after watch expression change 2020-12-15 17:39:05 +01:00
torusrxxx 89fa008726 Added process name to PID 2020-12-15 17:34:48 +01:00
torusrxxx 427514e583 display thread name for debuggee threads in handles view 2020-12-15 17:34:48 +01:00
torusrxxx d6bbca12c0 Display both labels and comments for functions and bookmarks list 2020-12-15 17:33:32 +01:00
torusrxxx 58156c14bc Don't focus on graph view in silent mode (#2537) 2020-12-15 17:32:53 +01:00
torusrxxx b25636bc87 Allow animation interval greater than 100ms 2020-12-15 17:32:53 +01:00
Duncan Ogilvie 991daa005c Fix an issue with SizeOfImage not being page aligned in memory map 2020-12-14 15:21:00 +01:00
Duncan Ogilvie a510dfb444 Remove the attach breakpoint functionality 2020-11-12 03:32:59 +01:00
Duncan Ogilvie c69ab584fe Fix compilation for 32-bit 2020-11-12 03:31:37 +01:00
Duncan Ogilvie c3bdb07ab6 Fix a bug where the CB_BREAKPOINT info can be wrong for certain hardware breakpoints 2020-11-12 03:14:05 +01:00
Duncan Ogilvie d7439b7465 Significantly simplify detaching 2020-11-12 03:12:05 +01:00
Duncan Ogilvie dc0cbd9dc2 Fix a race condition when attaching as JIT debugger 2020-11-12 01:45:35 +01:00
Duncan Ogilvie 9a177f94ed Update lastExceptionInfo on breakpoints 2020-11-12 01:10:47 +01:00
Duncan Ogilvie dad16543c3 Stop offering GleeBug for beta testing, users can switch from the settings if they want 2020-11-11 23:40:31 +01:00
Duncan Ogilvie a49d32cca8 Add undocumented LabelRuntimeFunctions command 2020-11-11 23:38:58 +01:00
Layle | Luca 156fe7cd2e
Fix flag setting when flag is already set (#2505)
* Fix flag setting when flag is already set

* Simplify flag setting
2020-11-03 15:25:42 +01:00
torusrxxx 1e1809bb02 Add separate event settings for system module;Add debug engine selection 2020-10-31 19:43:33 +01:00
Duncan Ogilvie 1d10dc549e Do not load symbols when getting syscall indices 2020-10-31 13:28:44 +01:00
Duncan Ogilvie d74095770c Fix a crash in _dbg_addrinfoget
Thanks to @JustasMasiulis for reporting!
2020-10-30 20:56:30 +01:00
Layle 84c50b1fe9 Implemented non Windows 10 syscalls 2020-10-29 00:18:41 +01:00
Duncan Ogilvie 8ef53a1931 Parse syscall indices and display the Nt function name in the comments 2020-10-29 00:18:41 +01:00
morsisko a5f7196c27 DBG: Fixed call stack generation for 64bit processes as in #2490 2020-10-27 17:01:24 +01:00
morsisko c84f198539 DBG: Added new command SetWatchType 2020-10-27 16:27:31 +01:00
Private d9fcf82f2e Update stackinfo.cpp
In some cases, the call stack information for a 64-bit process cannot be obtained correctly.
reference: https://docs.microsoft.com/en-us/windows/win32/api/dbghelp/ns-dbghelp-stackframe

AddrFrame

An ADDRESS64 structure that specifies the frame pointer.

x86:  The frame pointer is EBP.

Intel Itanium:  There is no frame pointer, but AddrBStore is used.

x64:  The frame pointer is RBP or RDI. This value is not always used.
2020-10-27 16:25:34 +01:00
morsisko 9311752b74 GUI: Added new function GetCallStackByThread 2020-10-23 16:54:41 +02:00
torusrxxx 01f5afc778 Fix string detection 2020-10-19 22:47:21 +02:00
Duncan Ogilvie f9a038e566 Fix compilation errors 2020-10-19 22:40:56 +02:00
Duncan Ogilvie 306449fa6b Implement DebugFlags command 2020-10-11 20:57:09 +02:00
torusrxxx d7024454d0 Add icons to windows view, fixed wrong window proc for some samples, swap windows tab and handles tab 2020-10-02 23:04:45 +02:00
Duncan Ogilvie ab0e9a932b Fix compilation on Visual Studio 2015 Update 3 and later
Closes #2445
2020-09-20 20:07:10 +02:00
Duncan Ogilvie 5a0caf0be0 Show current debug engine in the version string 2020-09-20 19:59:59 +02:00
Duncan Ogilvie d24c278d2b DBG: allow loading different debug engines 2020-09-14 20:07:30 +02:00
Duncan Ogilvie 54051bdcd1 improve code and fix bugs 2020-09-14 20:06:01 +02:00
Duncan Ogilvie 81b5b518fd DBG: fix format function unregister copy paste error 2020-08-16 04:37:37 +02:00
Torusrxxx e169fd8b44
Fixed a buffer overflow vulnerability 2020-07-29 02:06:38 +00:00
Duncan Ogilvie 2f27a26e43 DBG: fix StringUtils::Trim 2020-07-29 02:20:28 +02:00
torusrxxx 448d1fbfbc Updated string searching algorithm to support string in any language 2020-07-29 02:10:54 +02:00
torusrxxx eaf11a2292 Press ENTER : Follow memory operand in dump/stack 2020-07-22 21:48:25 +02:00
torusrxxx e046b86901 Implement infobox in trace browser 2020-07-22 21:47:22 +02:00
Duncan Ogilvie 3676f1ab75 DBG: fix some edge cases related to MAX_PATH 2020-07-11 18:44:14 +02:00
Duncan Ogilvie 84274382e4 DBG: remove default exception skip limit 2020-07-11 18:29:28 +02:00
torusrxxx d0002c0d0d Add previously undocumented AnimateInterval to settings; Remove AnimateInterval restrictions; Fix a bug on GuiOpenTraceFile 2020-07-05 16:02:52 +02:00
torusrxxx be725d82e1 fix "Trace already active" after "ticnd ())" 2020-07-04 02:48:21 +02:00
Jack Reez a5bd8f1dcc DBG: Fixed DLL breakpoints.
DLL breakpoints can now be enabled/disabled/removed!
2020-07-04 02:45:22 +02:00
Duncan Ogilvie 7b4b40b34b 1984
https://twitter.com/TwitterEng/status/1278733305190342656
2020-07-03 21:57:48 +02:00
Jack Reez 829235659f DBG: Added memory breakpoint's types in BpToBridge conversion.
Fixes: Memory breakpoints summary always shows type as access for all types.
@BreakPointView.
2020-06-25 21:35:33 +02:00
morsisko 95315402f1 DBG: added new command showref that shows the references tab 2020-06-22 14:08:45 +02:00
Duncan Ogilvie d73d4058df DBG: fix oversight in instruction counting algorithm 2020-06-04 18:59:37 +02:00
Duncan Ogilvie 6f5e786a54 DBG: improve function analysis and introduce loop analysis
Thanks to DefCon42 for help on the backedge algorithm!
2020-06-04 17:26:47 +02:00
Duncan Ogilvie 5ab09dae92 DBG: add parent in function API to support function chunks 2020-06-04 17:26:47 +02:00
Duncan Ogilvie bb49270921 DBG: show progress in status bar when downloading symbols 2020-06-04 17:26:47 +02:00
Duncan Ogilvie b9b8e52c4e DBG: improve loop API 2020-06-04 17:26:42 +02:00
Duncan Ogilvie 2b9fc285c8 DBG: minor fixes with iterators and erasing 2020-06-04 17:25:50 +02:00
Duncan Ogilvie 10da0d4654 DBG: allow setting temporary labels from the labelset command 2020-06-04 17:25:50 +02:00
Duncan Ogilvie 6293b90aff DBG: add dbdecompress helper command 2020-06-04 17:25:50 +02:00
Duncan Ogilvie 9c3e5ec5ff DBG: truncate labels in LabelGet 2020-06-04 17:25:50 +02:00
Duncan Ogilvie 33403df92b DBG: improve working set mitigation 2020-06-04 17:25:50 +02:00
Duncan Ogilvie d2f19c334d DBG: properly truncate the page info 2020-06-04 17:25:50 +02:00
Torusrxxx 6043dcf5a6
Allow stopping run trace when not debugging (#2326) 2020-05-15 12:31:12 +00:00
Duncan Ogilvie 5507b46dc4 DBG: error message improvement in cbDebugPause + minor project fixes 2020-05-09 22:40:45 +02:00
Duncan Ogilvie 8dd8026d55
DBG: remove a check that has been proven stable in MemoryReadSafePage 2020-04-28 00:25:50 +02:00
Duncan Ogilvie 1d5766e8bc
DBG: not not force RIP to the ExceptionAddress for EXCEPTION_BREAKPOINT 2020-04-28 00:25:04 +02:00
Duncan Ogilvie 0763064b70
DBG: fix more complex union scenarios 2020-04-27 13:20:37 +02:00
Duncan Ogilvie b1c0eee865
DBG: fix an issue with unions in the type system 2020-04-27 12:58:28 +02:00
Duncan Ogilvie e0b92786f0
DBG: move InitDLLDebugW out of TitanEngine 2020-04-25 22:14:06 +02:00
Duncan Ogilvie 434ef31a05
PROJECT: minor fixes in vcproj files 2020-04-25 22:14:05 +02:00
Duncan Ogilvie 2bd139d89f
DBG: fix regression related to hardware breakpoint storage 2020-04-12 18:02:40 +02:00
Duncan Ogilvie 99f7d096a8
DBG: refresh the gui in some previously untested scenarios 2020-04-02 00:16:47 +02:00
Duncan Ogilvie 3a253248e5
DBG: finally properly implement setBpActive for hardware breakpoints 2020-04-02 00:16:47 +02:00
Duncan Ogilvie 6f92c63ce2
DBG: fix some potential bugs when disabling/deleting hardware breakpoints 2020-04-02 00:16:46 +02:00
Duncan Ogilvie 5a6817680a
DBG: change order of breakpoint name and custom breakpoint identifier syntax in BpGet 2020-04-02 00:16:46 +02:00
Duncan Ogilvie d2c62e69c2
DBG: move DbLoad from cbCreateProcess to before entering the debug loop
fixes #2296
2020-02-23 16:24:23 +01:00
Duncan Ogilvie 6745514e31
DBG: improvements to initialization script experience 2020-02-23 16:01:29 +01:00
Duncan Ogilvie 1774ba1f89
DBG: call reference update less frequently 2020-02-10 03:10:35 +01:00
Duncan Ogilvie 472a8160dd
DBG: CloseHandle on the AeDebug event 2020-02-10 02:35:13 +01:00
Duncan Ogilvie 063ce31ec6
DBG+GUI: improve disassembly navigation
closes #1226
2020-01-16 15:49:52 +01:00
Duncan Ogilvie e20cd71549
DBG: fix a race condition with a cached context in _dbg_getregdump
closes #2248
2020-01-16 15:25:48 +01:00
Duncan Ogilvie f7f7a2f463
DBG: attempt to undecorate more symbols based on other prefixes
closes #2268
2020-01-08 01:39:49 +01:00
Duncan Ogilvie ebf3db1095
DBG: add forgotten CBSELCHANGED in pluginload 2020-01-08 01:34:49 +01:00
Duncan Ogilvie b6b1cce7ba DBG: force a terminating command at the end of a script 2019-11-26 13:26:35 +01:00
now-raymond ec451897a5 DBG: Fix function boundary computation when getting x64 stack frames
RUNTIME_FUNCTION range: [BeginAddress, EndAddress)

Old code:
Find `func` where:
`func.BeginAddress <= rva <= func.EndAddress`

New code:
Find `func` where:
`func.BeginAddress <= rva < func.EndAddress`
2019-11-26 13:26:15 +01:00
Duncan Ogilvie 824100eea8
DBG: implement memcpy command 2019-11-13 01:13:06 +01:00
Duncan Ogilvie b23c0dfe37
DBG: remove leading whitespace when loading script to correctly handle tabs 2019-11-12 23:55:56 +01:00
Duncan Ogilvie fae8434284
DBG: fix a buffer overflow in a terrible 5-year old API
Thanks to dudeme for finding a reliable way to reproduce this!
2019-11-12 23:55:23 +01:00
mappzor b0ba7d40e1 Fixed #2228 (#2244)
* Fixed #2228
2019-11-11 22:15:46 +01:00
Duncan Ogilvie e2a20266d1
DBG: close #2245
fix by lynnux
2019-11-10 23:15:29 +01:00