30818 Commits
Author SHA1 Message Date
Rot127 3a5ca619bf RzAbstInt clean up: renaming, function moving, labeler (#6803) 2026-10-11 18:15:38 +00:00
Sumeet Dhangare e26243f18d arch: fix heap buffer overflow in rz_analysis_mask() (#6802)
rz_analysis_mask() called memset() with an unclamped oplen when an
instruction's decoded length extended past the remaining bytes in
the mask window, writing up to (oplen - nopcode) bytes past the end
of the size-byte heap allocation.

Clamp the memset length to the bytes actually available in the
buffer (avail = size - idx) before computing safe_oplen, and only
memset when nopcode fits within that clamped length.

Reproduced and verified with the h8300 arch/analysis plugin, where a
jsr instruction decodes to 4 bytes with only 2 bytes remaining in a
256-byte mask window, causing a 2-3 byte out-of-bounds heap write
(CWE-787). Confirmed via glibc _FORTIFY_SOURCE abort on direct
reproduction and via AddressSanitizer heap-buffer-overflow report.

Fixes #6795
2026-10-11 17:03:06 +00:00
Syh-Xiong 74ff761f4c fix use after free (or double free) in segment_to_mdt_part() in librz/bin/format/mdt/mdt.c (#6867) 2026-10-11 15:38:37 +00:00
Peiwei Hu 662fb7af33 Fix: out-of-bound read leads to messy help info in panel mode (#6865) 2026-10-11 14:00:39 +00:00
Syh-Xiong 4a63efe541 fix memory leaks in dyldcache_classes() in librz/bin/p/bin_dyldcache.c (#6858) 2026-10-11 13:54:28 +00:00
Syh-Xiong 6b765ffbe1 fix memory leaks in cons_stack_dump() in librz/cons/cons.c (#6854) 2026-10-11 13:53:53 +00:00
billow e16786f799 M68k rzil base (#6706) 2026-10-11 12:06:06 +00:00
doomedraven d94fee433c perf(golang): optimize string recovery and basic block scanning
- Refactor rz_core_analysis_resolve_golang_strings to maintain persistent dynamically resized basic block and string buffers, eliminating per-block malloc/free churn
- Unify multi-instruction signature matching across all 8 architectures with fast bitmask pre-filtering before decode callbacks
- Implement table-driven GoSignatureTable dispatch and const-qualify GoAsmPattern and GoSignature definitions
- Reuse basic block instruction offsets (block->ninstr) to avoid redundant instruction disassembly during string recovery
- Guard rz_io_nread_at against errors and short reads, and reject invalid candidate addresses in decode callbacks
2026-10-11 17:58:50 +08:00
doomedraven 61f99aa3f7 feat(analysis): implement Golang ABI calling conventions and prologue voting
- Define golang (ABIInternal) and golang_abi0 calling conventions in SDB for x86-64, ARM64, and x86-32
- Implement statistical prologue voting heuristic across sampled Go functions to automatically distinguish ABIInternal from ABI0 on stripped/obfuscated binaries
- Automatically assign detected Go calling convention to recovered sym.go.* functions
- Filter compiler-generated wrapper symbols (.abi0, .abiinternal, ..inittask, type:*) from deep function analysis
- Linked to rz-ghidra PR for SLEIGH decompiler prototype integration
2026-10-11 15:58:31 +08:00
Anton Kochkov f52a6681ce librz/arch/tms320: decode the TMS320C28x FPU, TMU and FINTDIV instructions 2026-10-11 01:50:45 +08:00
Anton Kochkov fa093d4201 librz/arch/tms320: give the C28x and VCU instructions real analysis types 2026-10-11 01:50:45 +08:00
Anton Kochkov 9e95f9957a librz/arch/tms320: decode the TMS320C28x VCU instructions 2026-10-11 01:50:45 +08:00
Anton Kochkov b81023155b librz/arch/tms320: RzIL uplifting for the TMS320C28x core 2026-10-11 01:50:45 +08:00
Anton Kochkov eab103feb7 librz/arch/tms320: native TMS320C28x support 2026-10-11 01:50:45 +08:00
Anton Kochkov 2d03595fc2 librz/arch/tms320: read and write C6000 words through rz_read/write_ble 2026-10-11 01:50:45 +08:00
Anton Kochkov b7ea008625 librz/arch/tms320: correct and expand the C6000 notes in the README 2026-10-11 01:50:45 +08:00
مصطفي محمود كمال الدين 3039221889 Implemented a command catalog exporting as a json (#6597) 2026-10-10 12:30:32 +01:00
Syh-Xiong b80b386247 fix null pointer dereference in rz_name_filter2() in librz/util/name.c (#6846)
Co-authored-by agent: pi/deepseek-flash-guan
2026-10-10 12:15:53 +01:00
Syh-Xiong 9c0dfd47a2 fix memory leaks in maps() in librz/bin/p/bin_nro.c (#6853) 2026-10-10 12:10:59 +01:00
Vedant Singhal 5ab6b69a80 Fix rz-find -Z string handling (#6683) 2026-10-09 21:00:51 +01:00
doomedraven 8c66632851 feat(types): add Go baseline runtime types (string, slice, eface, iface, hmap) (#6831) 2026-10-09 20:22:54 +01:00
Khairul Azhar Kasmiran ef7ca0ba03 Upgrade Docker build to Debian 12 ("bookworm") (#6843) 2026-10-09 23:08:33 +08:00
Syh-Xiong d1ee04a165 Fix leaks in librz/bin/p/bin_nso.c (#6836) 2026-10-08 22:36:04 +01:00
Iskala Yashwin Sai c5323f3a99 librz/arch: remove globals from arcompact-dis.c (#6825) 2026-10-08 20:12:58 +01:00
SSharshunov 87ce9ae6d7 Fixes for c166 asm and analysis (#6819) 2026-10-08 20:07:45 +01:00
Syh-Xiong 140d43f0ce fix leaks in pdb7_extract_msf_stream_directory() in librz/bin/pdb/pdb.c (#6850) 2026-10-08 20:06:00 +01:00
Syh-Xiong 0ed7bdfdaf fix memory leaks in luajit_header_parser()(#6849) 2026-10-08 10:39:10 +00:00
SSharshunov 1f9de7ee37 librz/arch: change mmio_address in RzAnalysisOp to mmios[4]. (#6453) 2026-10-08 08:43:14 +08:00
Khairul Azhar Kasmiran 460a9f51e6 Run http test on Windows (#6839)
* Run http test on Windows
* Install `psutil` whenever `requests` is installed
* Use `psutil` 6.1.1 on CentOS 7
* Install `python3-devel` on CentOS 7
* Install `py3-psutil` on Alpine
* Use `Python314-x64` in `clang_cl_64_dyn` build
2026-10-06 19:37:30 +08:00
Syh-Xiong d14c3fac41 fix memory leaks in types_cb() in librz/arch/omf_process.c (#6835) 2026-10-05 09:37:23 +01:00
Syh-Xiong 4b103d16f1 fix null pointer dereference in get_frame_base() in librz/debug/p/native/bt/windows-x64.c (#6829) 2026-10-03 10:36:06 +08:00
Khairul Azhar Kasmiran 2b8aa1a5f2 Run http test on woodpecker (#6820) 2026-10-01 18:08:08 +08:00
NOT XVilka 046c88de0e Minor RzNum fixes for big numbers - #6821 2026-10-01 09:03:36 +08:00
Syh-Xiong 8ba5008967 fix memory leaks in get_complex_object() in librz/bin/format/marshal.c (#6814) 2026-09-29 22:17:46 +08:00
Khairul Azhar Kasmiran 9b5eb2c639 Fix http test if body lags behind header (#6806)
* Fix code correctness when actual read < Content-Length
* Set recv timeout to 10 seconds
2026-09-29 18:36:17 +08:00
Syh-XiongandGiovanni cb24b89102 fix memory leaks in bin_pe_dotnet_init_metadata (#6798)
---------

Co-authored-by: Giovanni <[email protected]>
2026-09-28 19:35:14 +00:00
Rot127 f053eae231 Upgrade to PCRE2 10.49 2026-09-28 20:17:35 +01:00
Anton Kochkov 00720d0fd2 analysis: mask only the analysed instruction in rz_core_analysis_bytes() 2026-09-28 23:58:34 +08:00
Anton Kochkov b52fdf807a test/bench: benchmark rz_core_analysis_bytes() 2026-09-28 23:58:34 +08:00
Syh-Xiong 771243e326 fix memory leaks in luajit_new_table() in librz/bin/format/luac/luajit/luajit_private.c (#6813) 2026-09-28 23:00:20 +08:00
Syh-Xiong 2f34a39b28 fix memory leaks in luajit_build_info_new() in librz/bin/format/luac/luajit/luajit_private.c (#6812) 2026-09-28 22:57:21 +08:00
Syh-Xiong b3054c218c fix memory leaks in update_vars_analysis in librz/arch/fcn.c (#6810) 2026-09-28 22:54:37 +08:00
Syh-Xiong 8ed7340ba1 fix memory leaks in get_calls in librz/core/cmd/cmd_analysis.c (#6811) 2026-09-28 12:20:02 +00:00
Syh-Xiong fb12ea77bb fix memory leaks in info() in librz/bin/p/bin_pyc.c (#6809) 2026-09-28 12:19:13 +00:00
Syh-Xiong ce0b1461a3 fix memory leaks in parse_export_entry function (#6776) 2026-09-27 18:09:57 +00:00
Rot127 7d75062276 Early return on attempt to lift from non executable memory. (#6804) 2026-09-27 18:07:53 +00:00
MrQuantum1915 97274e828f Fix memory leaks (#6770)
* fix pfile string mem leak

* fix hitory.data leak
2026-09-27 17:57:11 +00:00
Khairul Azhar Kasmiran 6db1c80315 Fix http test if partial read with complete header (#6785) 2026-09-26 20:45:37 +08:00
Rot127 3c4b10b560 Add size checks against actual buffer size before allocating memory. 2026-09-26 13:02:24 +01:00
Rot127andpancake b9515bb51e Partially port bound checks from radare2/6727454b666b28c33837b219a5f91136461357c0
Co-authored-by: pancake <[email protected]>
2026-09-26 13:02:24 +01:00