Commit graph

920 commits

Author SHA1 Message Date
Kevin Grandemange
fd6310f108 add microblaze arch to elf 2015-10-28 10:13:18 +01:00
pancake
52cfe459a0 Enhance te command. Autocomplete and partial args working 2015-10-27 12:41:09 +01:00
Álvaro Felipe Melchor
13fd1d0673 Fix omf crash 605d 2015-10-27 03:26:17 +01:00
pancake
02e719fafe Aim to fix eeaf87ece627fe94f92f836ac3467ffd @revskills dyldcache crash 2015-10-26 03:45:54 +01:00
Álvaro Felipe Melchor
6a710d6119 Fix pe crash 9288a from revskills 2015-10-25 20:14:04 +01:00
Álvaro Felipe Melchor
40ba826074 Fix pe crash bf83856 by revskills 2015-10-24 23:39:39 +02:00
pancake
17c58bdb01 Fix bf8385 PE parser crash (thx @revskills) 2015-10-24 13:24:38 +02:00
Riccardo Schirone
70669bafc0 bin/bin: do not filter out non-pie binaries when using baddr 2015-10-23 10:55:13 +02:00
pancake
1b88200e31 Add support for 'interpreter' in RBin, ELF and MACH0 2015-10-22 02:13:26 +02:00
pancake
366ba23b30 Fix ab88f42f9b mach0 crash (reported by @revskills) 2015-10-21 23:46:41 +02:00
pancake
aaf386d023 Fix the last mach0 crash 2015-10-21 22:29:49 +02:00
pancake
5d440365af Fix 55c9c9 mach0 relocs segfault 2015-10-21 22:20:36 +02:00
Álvaro Felipe Melchor
9d5f7c44a0 Fix mach crash 45d2d1309807e95422006abb97462bc6 2015-10-21 19:35:14 +02:00
pancake
5fece33093 RBin.PE: Error -> Warning 2015-10-21 15:59:17 +02:00
pancake
461b714503 Fix objc heap overflow class parsing bug 2015-10-21 12:19:19 +02:00
Álvaro Felipe Melchor
748564683e Fix #3518 2015-10-20 23:52:34 +02:00
pancake
1b5cd887ce Disobey rabin2 -B if bin is not pie, enhace dmm* and mach0 2015-10-19 02:41:21 +02:00
Álvaro Felipe Melchor
d4f45dd0df Fix oob in pe.c 2015-10-18 22:23:19 +02:00
Álvaro Felipe Melchor
c5d5ee70da Fix oob in mach0.c 2015-10-18 22:23:19 +02:00
Jeffrey Crowell
4d4fc1eb08 fix null deref in elf
thanks @bspar for the fuzz-a-ton
2015-10-14 20:18:59 -04:00
pancake
6e40a70a9f Show warning when cannot find w32 ordinal module dbs 2015-10-14 22:27:27 +02:00
pancake
60b60aa50a Fix #3444 - Fix infinite loop in PE parser 2015-10-12 19:42:44 +02:00
pancake
be0538a6a8 Fix some windows build warnings 2015-10-08 11:14:10 +02:00
Álvaro Felipe Melchor
93a721f614 Fix #1846 - full and partial relro elf 2015-10-06 18:27:42 +02:00
pancake
9712a62b62 Fix #3296 - Identify main in thumb-elf bins 2015-10-03 14:16:08 +02:00
pancake
5ecd98305e Add support for MBN/SBL roms, fix 11acb8392, binsect->has_strings 2015-09-29 00:42:31 +02:00
pancake
ce1087999c Fix another infinite loop in PE #3369 2015-09-28 13:06:51 +02:00
pancake
06f159239a Fix mz crash reported by @jvoisin 2015-09-28 02:52:56 +02:00
pancake
c7c0961071 Fix #3369 - omf parser crash 2015-09-28 02:32:38 +02:00
Maijin
b73fb41cfc Add mem to nes plugin 2015-09-27 17:44:10 +02:00
pancake
8f79f82048 Fix 0576be2359 2015-09-25 10:49:27 +02:00
jvoisin
3abab8526b Fix some possible NULL-deref under memory-pressure 2015-09-25 02:13:58 +02:00
jvoisin
0576be2359 Small optimizations and coverity-- 2015-09-25 01:51:29 +02:00
pancake
ae2713e944 Fix PE regression 2015-09-23 15:23:36 +02:00
pancake
d1f3dc3e08 Some more fixes for exports and PE 2015-09-23 15:01:36 +02:00
pancake
46f8561986 Fix rabin2 -E crash and filter in elf 2015-09-23 13:24:10 +02:00
Maijin
d298ca5dbc Initial support for NES file 2015-09-20 20:10:03 +02:00
pancake
ec0b19e5f8 Fix thumb entry assumption (thx @ret2libc) 2015-09-17 11:13:34 +02:00
pancake
f10c8ec075 Fix #3296 - Thumb ELF entrypoint assumption 2015-09-17 01:32:13 +02:00
pancake
49975ccf95 Fix #3286 - Use stdbool.h 2015-09-14 02:08:31 +02:00
jvoisin
9db340a0a8 Fix some malloc(A*B) overflow detected by clang-analyzer 2015-09-09 21:44:06 +02:00
jvoisin
d4893718da Fix a bunch of dead assignements 2015-09-09 21:12:36 +02:00
pancake
d9c934f6b4 Fix some recent covs 2015-09-09 11:16:49 +02:00
inisisder
d2af97de2b objc_parser: refactor code related to class name allocation and etc 2015-09-08 23:49:08 +02:00
Riccardo Schirone
6a517aa66b bin/p: add CGC bin format plugin 2015-09-08 23:22:07 +02:00
Riccardo Schirone
ce14b20974 bin/format/elf: remove Elf_ prefix from static functions 2015-09-08 23:22:07 +02:00
pancake
318dc1da11 Honor Thumb vaddr in objc parser 2015-09-07 19:00:11 +02:00
pancake
868a97788e Only export has_crypto in mach0 when cryptid is set 2015-09-07 01:33:42 +02:00
pancake
346cc8e758 Fix latest covs 2015-09-03 12:23:49 +02:00
pancake
7fcb8e081d Remove last GPL headers and move old.rarc2 into r2e 2015-09-02 16:06:57 +02:00
jvoisin
dba909b1dd Fix yet-another-batch of clang-analyzer issues 2015-09-01 23:24:11 +02:00
pancake
a5655dff9b A bit dsojson leak just to avoid a crash 2015-09-01 18:44:37 +02:00
inisisder
ed6835a976 some small refactor 2015-09-01 14:25:25 +02:00
pancake
7157cf92b7 Fix some covs 2015-09-01 11:24:09 +02:00
inisisder
14760f4763 add check is it binary encrypted 2015-08-31 11:56:32 +02:00
jvoisin
b270e92021 Refactor a bit bin_pe_parse_imports 2015-08-29 23:30:16 +02:00
jvoisin
4261075d60 Misc fixes to make clang-analyser even more happy 2015-08-29 18:08:38 +02:00
Maijin
6831dd2f6d Revert "More misc cleanup"
This reverts commit 788a3b02c7.

	modifié :         libr/bin/format/pe/pe.c
2015-08-28 20:58:21 +02:00
jvoisin
788a3b02c7 More misc cleanup 2015-08-28 19:13:27 +02:00
jvoisin
e0e170c3c5 Fix various clang-analyser issues 2015-08-28 18:29:31 +02:00
jvoisin
98bb29c4ed Fix some clang-analyzer defects 2015-08-28 17:28:09 +02:00
pancake
1d4b0d8555 Fix some covs 2015-08-28 17:21:04 +02:00
Riccardo Schirone
2169980239 bin/p/bin_elf: fix symbols vaddr 2015-08-26 20:08:12 +02:00
Riccardo Schirone
18eaf1c8c5 format/elf: fix paddr2vaddr and vaddr2paddr conversions 2015-08-26 18:30:33 +02:00
Riccardo Schirone
eeef82c2b8 bin: use R_BIN_SCN_MAP flag when a section should be mapped by IO
- io/section: filter sections by looking at R_IO_MAP flag
- util/str: consider (m)apped flag when printing/parsing srwx info
2015-08-26 14:12:46 +02:00
Riccardo Schirone
5663e41177 bin/format/pe: fix imports vaddr
the RVA in the PE header doesn't consider the base address, so we
have to add it in the vaddr field.
2015-08-23 23:33:00 +02:00
Riccardo Schirone
e1739384ef bin/format/pe: remove PE_ macro from static functions 2015-08-23 23:33:00 +02:00
Álvaro Felipe Melchor
45b74a7a37 Fix an oob write in mz.c 2015-08-22 19:04:22 +02:00
pancake
3f036c1070 Fix null deref in objc parser 2015-08-20 12:08:16 +02:00
pancake
0868703c9f Enhancements for ic 2015-08-19 02:23:42 +02:00
pancake
564fb069be Fix #2991 - Add support for some SPARC ELF relocs 2015-08-19 02:04:07 +02:00
pancake
2c11af3e22 Fix buffer overflow in OBJC parser 2015-08-18 14:04:31 +02:00
inisider
1f2cd1695b move property to fields 2015-08-16 19:45:14 +02:00
Riccardo Schirone
2518c9e21c core/core: add scr.promptflag variable 2015-08-11 16:03:07 +02:00
pancake
2865786e4c Add bin.classes eval var and fix rabin2 -rc output 2015-08-11 15:58:01 +02:00
pancake
a343109c68 Fix aarch64 elf reloc type 2015-08-11 09:46:28 +02:00
yetmorecode
667cdecd37 Enhanced shell output for win32 native debugging
Fixed multiple whitespace issues
Removed unnecessary include for string.h
2015-08-11 09:17:23 +02:00
pancake
1931f684a4 Detect ELBRUS ELF binaries and fix arm esil issue 2015-08-11 01:47:51 +02:00
pancake
b630d82548 Parse PLT for imports in ARM64 ELF binaries 2015-08-11 00:54:03 +02:00
inisisder
2462f2c430 fix problem with iTerm bin and remove printf 2015-08-10 13:48:48 +02:00
inisider
3b378c50ac some refactor and fix code style 2015-08-10 13:48:48 +02:00
inisisder
684606bcee fix one more segfault 2015-08-10 13:48:48 +02:00
inisisder
553e20c3d9 fix segfault and memory leaks 2015-08-10 13:48:48 +02:00
inisisder
eca3a781c0 objc class parser code refactoring 2015-08-10 13:48:47 +02:00
inisisder
d8af00ea36 add parsing of objc classes from binary 2015-08-10 13:48:47 +02:00
pancake
1c352a9dab Fix two compiler warnings in PE parser 2015-08-09 12:44:03 +02:00
pancake
26dd53e8f4 Add support for RPI2 PE Windows executables 2015-08-09 02:13:47 +02:00
Álvaro Felipe Melchor
e764e8befa Fix regression mach0 relocs 2015-08-08 19:43:11 +02:00
pancake
4d672d9ecc mach0: two wrong switch indents, oob read in memcmp and useless warns 2015-08-08 19:04:07 +02:00
Álvaro Felipe Melchor
cf4b673d12 Fix #3047 & #3048 - oob write 2015-08-07 21:16:17 +02:00
Álvaro Felipe Melchor
a37fdb3dec Fix #3045 - oob write 2015-08-07 21:16:09 +02:00
pancake
04e128ab92 Fix some covs 2015-07-25 09:58:11 +02:00
pancake
40842b0e96 Fix some clang build issues 2015-07-25 01:54:07 +02:00
pancake
6ae0417278 Updsate SDB to optimize dupped symbol checks in mach0 parser 2015-07-24 13:24:32 +02:00
Jonathan Neuschäfer
ecf6792318 Fix #2927 and random code cleanups
- asm_dcpu16: remove an obsolete comment
  It was obsoleted in 5285d1bdea.
- Indentation fixes
- fix a few typos
- remove "#define NEW_ESIL"
- move comment about r_bin_filter_name to the right place
- README.md: Add V810 to the list of supported architectures
- Also, de-duplicate LH5801
- Add attribution to randomart.c, fixes #2927
2015-07-12 19:20:36 +02:00
pancake
d054008b17 Implement class methods for DEX and make icj 2015-07-06 02:38:54 +02:00
Álvaro Felipe Melchor
9dd078dfa5 Fix #2883 2015-07-05 20:44:03 +02:00
pancake
f622ba9f37 Partly fix the symtab parsing in mach0, postponed after dysymtab 2015-07-05 19:36:47 +02:00
pancake
6ed4d5a94b Comment the mach0's symtab parser, rabin2 -u and more 2015-07-05 03:25:20 +02:00
pancake
feef3cd7f7 Skip corrupted sub-bin in fatmach0's 2015-06-25 01:59:31 +02:00
pancake
83e9a155fd Be more permissive with corrupted mach0 files 2015-06-25 01:44:22 +02:00
skuater
2a8164515e fix buffer overflow in pe.c 2015-06-23 10:29:36 +02:00
SkUaTeR
3879017027 Update pe.c 2015-06-21 10:37:14 -04:00
pancake
1f21a2dae1 Remove unnecessary warning in PE 2015-06-20 17:30:23 +02:00
skuater
142bf2172f fix export issue in windows pe format 2015-06-20 00:05:57 +02:00
pancake
b10aa5a0a2 Initial support for loading Android ART binaries 2015-06-17 11:14:41 +02:00
Álvaro Felipe Melchor
53badd517d Fix COVs 2015-06-17 00:22:40 +02:00
Oleksii Kuchma
0c57a435fc Rewrite MZ bin plugin
* Add const modifiers, fix function call style
* Add checking and using dos_file_size
* Fix number of arguments in load_bytes.
* Add check for NE, LE and LX executables.
* Fix function declaration for btree_traverse.
2015-06-08 22:18:21 +02:00
Álvaro Felipe Melchor
7c2fd089f3 Fix #2706 & #2705 2015-06-04 13:14:43 +02:00
Álvaro Felipe Melchor
fddb32ccd7 Fix #2683 2015-06-03 12:28:19 +02:00
Álvaro Felipe Melchor
7f467e0162 Fix #2665 2015-06-01 23:19:49 +02:00
jvoisin
7c096bb1f4 Fix various coverity issues 2015-06-01 21:10:37 +02:00
Álvaro Felipe Melchor
2f23527217 Fix relocations in mach 2015-05-29 17:58:36 +02:00
ampotos
ea8107ed2f Fix #2633 #2632 #2631 #2630
also fix a litle bug in section name
2015-05-28 11:25:52 +02:00
pancake
f8384feb6b Initial disassembler support for HP PA-RISC (from GNU binutils) 2015-05-28 11:24:31 +02:00
pancake
4ce609b589 Some llx -> PFMT64x 2015-05-28 11:05:52 +02:00
ampotos
313a4f7fca Fix all problem on remaining in the omf loader except the baddr of the
entry point (because the baddr display is compute with vaddr - paddr
and this value if incorrect for omf file)
2015-05-26 17:55:24 +02:00
Álvaro Felipe Melchor
bc271a6691 Fix #2604 2015-05-23 19:07:40 +02:00
Jeffrey Crowell
1fab1e2338 fix relocation on amd64 elf
closes #2607
2015-05-23 10:37:19 -04:00
pancake
e26f86d654 Fix null deref issue in last mach0 commit 2015-05-23 11:43:32 +02:00
pancake
d727cebfbf Add Rust,Swift,C++14,.. dwarf detection and fix omf warning 2015-05-23 11:03:20 +02:00
pancake
2353737e17 Fix #2602 - Detect Canary and Go in MACH0 binaries 2015-05-23 10:55:44 +02:00
ampotos
b764fb8d93 Fix syntax rules
Fix potential segfault when a malformed omf file is loaded
(malformed omf are going to be pr on radare2-regression)
2015-05-23 10:12:56 +02:00
pancake
d59de8f570 Fix indentation in OMF plugin (-111 LOC) 2015-05-22 13:23:26 +02:00
ampotos
44fd8b2555 omf loader is working but in 32bits omf file the vaddr take the value of the paddr in sections and for both 16 adn 32 bits file vaddr is take as offset to pd command instead of paddr (or i misunderstand how it suppose to work) 2015-05-22 12:47:19 +02:00
Álvaro Felipe Melchor
d40b0d122c Fix allocation with negative length 2015-05-20 18:16:25 +02:00
Álvaro Felipe Melchor
27a4f49b9f Fix an issue in mach parse. 2015-05-20 13:25:49 +02:00
Álvaro Felipe Melchor
57fb89d9fd Fix #2592 2015-05-20 00:10:29 +02:00
Álvaro Felipe Melchor
a3086c23e8 Fix an issue with mach parser in dyld_info 2015-05-17 00:39:22 +02:00
Álvaro Felipe Melchor
85f597dfb9 Fix #2575 2015-05-15 15:51:13 +02:00
Álvaro Felipe Melchor
e16931039a Fix #2576 2015-05-15 14:47:01 +02:00
pancake
a295e9a6d5 Enforce DEX null checks and fix fuzz regressions 2015-05-11 20:21:08 +02:00
pancake
c687641b17 Fix rbin regression by fixing compiler warnings 2015-05-11 20:04:00 +02:00
Alvaro Felipe
41170b9f8a Fix #2524 2015-05-09 10:42:53 +02:00
Álvaro Felipe Melchor
85b04c0160 Fix #2526 2015-05-08 15:30:20 +02:00
pancake
53cad19e1b Fix id053 fuzzed DEX crash 2015-05-07 02:17:08 +02:00
pancake
3cfde4b34e Fix #2502 - Fix crash in mach0 parser 2015-05-07 01:54:24 +02:00
pancake
7c4db8fd75 Fix import symbol size in mach0 2015-05-06 15:36:51 +02:00
Álvaro Felipe Melchor
a5b57a2882 Fix #2490 2015-05-06 00:39:38 +02:00
pancake
1bdf7430a8 Handle thumb on MACH0 binaries in a better way + tests 2015-05-05 11:44:00 +02:00
pancake
32118ad64f Fix #2489 - Fix PE32 imports OOM 2015-05-04 12:01:56 +02:00
Álvaro Felipe Melchor
3b04c5442b Added checks in mach parser & fix #2465 2015-05-04 09:52:00 +02:00
pancake
d52490f9f4 Fix noisy warning 2015-04-30 23:43:35 +02:00
Álvaro Felipe Melchor
d9b1b341a7 Fix #2455 2015-04-30 18:49:50 +02:00
pancake
fc6c788914 Huge speedup loading ELF bins with lot of symbols (1m30s vs 3s) 2015-04-30 16:55:30 +02:00
pancake
6ddb335b6c Fix another ASAN issue in PE 2015-04-30 01:43:35 +02:00
pancake
79b4820eaf Fix #2455 - several ASAN crashes in the PE parser 2015-04-30 01:33:52 +02:00
pancake
faf91d35ab Fix #2465 - Fix crash in mach0 parser 2015-04-30 00:17:42 +02:00
pancake
40de063d3f Fix some ELF/Dwarf memleaks reported by Coverity 2015-04-29 10:26:31 +02:00
Álvaro Felipe Melchor
ca308085e7 Added checks in elf.c and mach0.c 2015-04-29 01:25:32 +02:00
Jeffrey Crowell
5b4a4b7be0 pass the correct length in pe handling. fix build 2015-04-27 23:58:29 -04:00
pancake
876ac121b4 Fix #2451 - ASAN crash in PE parser 2015-04-28 00:31:51 +02:00
pancake
3d78af8988 Add support for ARMv7K mach0 binaries (Hello iWatch!) 2015-04-26 23:19:59 +02:00
Álvaro Felipe Melchor
72b30d01b9 CID 1295060
CID 12950549-52
2015-04-26 22:40:42 +02:00
pancake
780214dc4c Fix all zzufed PE bins crashes 2015-04-26 02:25:43 +02:00
Álvaro Felipe Melchor
4532401066 Enhanced elf bin 2015-04-24 01:08:53 +02:00
pancake
e5b4fc7679 Fix deadcode in elf 2015-04-23 02:25:53 +02:00
Anton Kochkov
49c293871f Fix CID 1288755 and 1288758 2015-04-23 01:40:13 +03:00
pancake
59dcfae4d6 Add support for Blackfin machines in the ELF parser 2015-04-22 15:36:34 +02:00
Álvaro Felipe Melchor
a208cd56e6 Fix #1627 2015-04-22 15:22:24 +02:00
Anton Kochkov
8815ceac41 Fix Clang build 2015-04-21 07:00:17 +03:00
Anton Kochkov
eef9cd0b95 Fix TE pf parsing 2015-04-19 23:37:59 +03:00
Anton Kochkov
0ca9630806 Add TE header pf parsing 2015-04-19 14:29:55 +03:00
Anton Kochkov
1479aeca8e Fix a few Coverity issues
Fix CID 1205204
Fix CID 1171365
Fix CID 1135001
Fix CID 1134921
Fix CID 1134848
Fix CID 1134840
Fix CID 1134824
Fix CID 1267983
Fix CID 1230038
2015-04-19 03:15:29 +03:00
pancake
9a94698bd4 Fix #2382 - fix ragg2 crash and pe memleak 2015-04-16 17:24:26 +02:00
pancake
5187d37c13 Fix latest covs 2015-04-15 12:13:50 +02:00
pancake
c7a4b978d1 Fix w32 build 2015-04-15 02:16:18 +02:00
AntonDevil
8737ad2b65 Implementing version info parse 2015-04-15 01:44:17 +02:00
pancake
a975876015 Fix OOB read issue in PE. Partial fix 2015-04-13 12:24:51 +02:00
pancake
2aecde26d2 Tons of free candy. See details below:
- Fix arm-thumb ESIL for the SUB instruction
- Handle Java imports as symbols in code analysis
- Invoke Java instructions reference the imports now
- Fix 71 crashes reported by jn
- Affected bin modules: elf, mach0, java, te, pe, dex
2015-04-13 00:57:32 +02:00
pancake
80a1371586 Remove newline in the PE compiled timestamp field 2015-04-09 22:33:46 +02:00
pancake
2c161adda9 Increase symbol table size for MACH0 2015-04-09 17:55:40 +02:00
ninjahacker
e9cafe8df7 Fixed PE Segfault 2015-04-08 23:04:39 +02:00
condret
375427cb8c fix 2 warnings, low hanging tits 2015-04-08 13:20:26 +02:00
pancake
f1f068f68e Fix #2321 - ELF segfault in strings 2015-04-07 17:12:41 +02:00
pancake
a0ef11be00 Fix 3 covs and several warnings in windbg for w32 2015-04-07 14:53:28 +02:00
ninjahacker
d1351cf836 Added initial zimg support 2015-04-06 22:31:06 -04:00
pancake
0b04317bdb Sdb memoization in RBin speedups DEX loading
Avoid some memdupping in the dex parser - needs more work
2015-04-06 00:59:55 +02:00
pancake
1687ed552a Fix segfault in rabin2 -c mach0 2015-04-04 12:45:31 +02:00
pancake
0e6c60fd4f Implement mach0 symtab parser 2015-04-04 01:54:46 +02:00
pancake
3b4773d602 Add time.zone and time.fmt eval vars, honor zone in pt and correct PE gmt 2015-04-03 23:24:09 +02:00
pancake
fab078d7a3 Support main in linux64 PIE bins 2015-04-03 18:10:43 +02:00
David Kreuter
8a6e613ee1 libr/bin: completed the heuristic to find main for mips binaries 2015-03-24 15:59:41 +01:00
pancake
12ea9734b5 Fix about 15 more random COVs 2015-03-21 02:04:49 +01:00
pancake
515b2e77bc Fix about 40 COVs related to memleaks and buffer overflows 2015-03-21 01:27:54 +01:00
pancake
c03eff8af0 Fix memleak in previous commit 2015-03-14 03:47:35 +01:00
gsinclair
b55a7fbb7c Add compile time for PE binaries (see k bin/cur/info) 2015-03-14 03:47:35 +01:00
pancake
f681866124 Do not report main address if assumed is entry0 in PE 2015-02-27 15:45:39 +01:00
pancake
5f9d275bb8 Support ELF ARM PLT and mark symbols as Thumb from RBin 2015-02-26 02:48:54 +01:00
Kamil Rytarowski
4b636346a4 Resolve warnings: array subscript is of type 'char' 2015-02-22 23:11:05 +01:00
jvoisin
a4ba5f64f5 Even more Coverifix 2015-02-19 00:27:00 +01:00
pancake
2e0548b269 EM_MIPS have nothing to do with endianness 2015-02-12 15:59:32 +01:00
Jeffrey Crowell
0cbc69c580 Give proper endianness of MIPS binaries
closes #2078
2015-02-12 01:46:39 -05:00
jvoisin
5ad3afb628 Coverifix 2015-02-11 17:55:25 +01:00
pancake
dc75cb2320 Fix the rest of base64 warnings 2015-02-10 00:05:18 +01:00
pancake
33fcd7fbcf Enhacements for DEX sections and ignore methods at 0 (wip) 2015-02-06 18:53:11 +01:00
pancake
fcbec4091d Fix free(undefined) in elf parser 2015-02-06 02:00:45 +01:00
jvoisin
a2d4bd08bb Fix some memleaks 2015-02-05 11:43:10 +01:00
pancake
33d5fbb358 Fix #2011 - fix crash in ELF relocs parser 2015-02-01 03:07:02 +01:00
mortenoir
33c222778d pf.elf_phdr fix 2015-01-31 23:28:42 +01:00
Roi Martin (@nibble_ds)
7392437491 Fix symbol list regression in ELF parser 2015-01-31 04:42:44 +01:00
pancake
9d7aafc05c Fix #1994 - Fix crash in ELF loader 2015-01-26 03:32:40 +01:00
jvoisin
9681c6fcf7 More coverity 2015-01-25 14:35:46 +01:00
pancake
e11e1a633e Fix #1992 - fuzzed elf + dwarf segfaults 2015-01-25 03:23:30 +01:00
pancake
672b7057a4 Fix #1971 - Segfault in ELF parser 2015-01-17 00:32:20 +01:00
pancake
79e4e25d35 Fix #1919 - Autodetect main in ARM linux/arm programs 2015-01-14 23:47:37 +01:00
pancake
7c5c6624c2 Cleanup MD5 code and fix mach0 warning 2015-01-13 03:09:23 +01:00
pancake
ddf3187712 Fix crash for rabin2 -c pe 2015-01-09 17:41:47 +01:00
pancake
f495b5031a Handle ET_REL ELF relocs, asm.cpu for arm.cs: v8, mcortex 2014-12-28 03:53:39 +01:00
inisider
f18988f21f fix pdb downloader 2014-12-23 15:06:42 +01:00
skuater
2ef956e2d5 Resolve PE import Ordinal names from RBin 2014-12-23 10:35:00 +01:00
pancake
02d69d72f0 Fix build 2014-12-19 00:22:39 +01:00
pancake
68955c2d46 Handle ^C in /R and /R/ 2014-12-18 22:38:12 +01:00
pancake
49446b27c0 Fix #1848 - crash in dex parsing 2014-12-18 01:17:16 +01:00
pancake
c42056228d Define LC_ENCRYPTION_INFO_64 2014-12-17 13:56:21 +01:00
pancake
f5959d3534 Fix pie main detection with baddr for non-pie 2014-12-12 23:15:16 +01:00
pancake
49af10d42a Fix #1799 - Detect main symbol in Linux ELF PIE bins 2014-12-12 13:21:53 +01:00
pancake
70658f142d Fix PE parser issue 2014-12-12 02:04:44 +01:00
pancake
262b0cfd55 A fix for a MACH0 crash 2014-12-11 19:57:01 +01:00
pancake
190d8f1aa5 Fixes for the ELF PIE main detect 2014-12-11 03:10:31 +01:00
pancake
a5703d775c Detect 'main' symbol in stripped Linux PIE ELFs 2014-12-11 02:44:55 +01:00
pancake
80ab55d714 Make the PE testsuite pass in green 2014-12-11 02:17:36 +01:00
pancake
d1585fafa1 Fix some PE crashes 2014-12-11 02:08:29 +01:00
inisider
155997598f Add initial support to download PDB files (NodeJS helper) 2014-12-10 17:01:32 +01:00
pancake
274f22001d Add initial support for CRIS cpu as suggested by LolyRoP 2014-12-07 23:18:22 +01:00
Jeffrey Crowell
ed1aae7fd1 fix lots of spelling
fix some errors from the sed script

undo file mode crap
2014-12-07 17:00:59 +01:00
pancake
e2386ba52d Fix crash in COFF parser 2014-12-03 16:35:44 +01:00
pancake
3a31198ffd Fix #1702 - Revert and fix the dwarf/dex crashes related to uleb overflows 2014-12-01 23:44:20 +01:00
pancake
21288ac6ab Cleanup some code from the previous commit 2014-12-01 23:17:28 +01:00
inisider
64a47c6625 RBin.PE: Get debug data and retrieve GUID and debug file name 2014-12-01 23:01:24 +01:00
pancake
1612715a33 Check for uninitialized variables in MACH0 parser (thanks cov) 2014-11-25 12:59:24 +01:00
Riccardo Schirone
aaa822f03b More work on mach0 format parser
* use segment instead of sections

	sections are optional. it should be better to rely on segments

* remove r_bin_mach0 prefix

	make the source code easier to read. considering this is a plugin, it's
	completely separated from other stuff and we can rename things without
	problems.

* remove MACH0_ prefix from static functions
* fix a mistake. we should check segs, not sects
* get right entrypoint also for LC_THREAD
* fix logic to retrieve entry offset/addr

	first it computes the virtual entrypoint address and then it finds the
	offset in the file through addr_to_offset
2014-11-24 11:57:54 +01:00
pancake
a193e9d316 Fix #1665 - PE parser crash 2014-11-24 02:52:03 +01:00
Riccardo Schirone
fb1be4d598 libr/bin/format/mach0: set main_cmd on the first LC_THREAD
If there are only LC_THREAD, we get the entrypoint from the first
load_command found.
2014-11-23 11:06:10 +01:00
Riccardo Schirone
236298aaa0 libr/bin/format/mach0: find directly main when bin uses LC_MAIN 2014-11-23 11:06:10 +01:00
Riccardo Schirone
06ddf558d9 libr/bin/format/mach0: remove unused function 2014-11-23 11:06:10 +01:00
Riccardo Schirone
590a18ea23 libr/bin/format/mach0: check filetype in r_bin_mach0_get_baddr 2014-11-23 11:06:10 +01:00
Riccardo Schirone
fa0c74616d libr/bin/format/mach0: correctly retrieve entrypoint 2014-11-23 11:06:10 +01:00
Riccardo Schirone
ca32f842ad libr/bin/format/mach0: name consistency 2014-11-23 11:06:10 +01:00
Riccardo Schirone
971223390e libr/bin/format/mach0: set entrypoint only on first LC_THREAD 2014-11-23 11:06:09 +01:00
Riccardo Schirone
c1441b6ef2 libr/bin/format/mach0: fix baddr 2014-11-23 11:06:09 +01:00
Riccardo Schirone
762f518f25 libr/bin/format/mach0: fix issue with entry offset calculation
mach-o/loader.h: comment flavor to follow Apple header
2014-11-23 11:06:09 +01:00
Riccardo Schirone
24368ac3de libr/bin/format/mach0: check Mach0 format correctness
if there is LC_MAIN or LC_UNIXTHREAD in the file, you can't have other
threads
2014-11-23 11:06:09 +01:00
pancake
41b6f99ec1 Revert "Fix several crashes in dalvik. Thanks nightmare!"
This reverts commit f6440fc526.

Conflicts:
	libr/bin/dwarf.c
	libr/bin/p/bin_dex.c
2014-11-19 12:14:23 +01:00
pancake
182819dcf2 Fix bug in PE parser 2014-11-19 01:16:31 +01:00
pancake
ff72e9f0b8 Fix an overflow in r_buf_read 2014-11-19 01:08:46 +01:00
pancake
8c55285b5d Fix #1682 - Fix ELF null deref regression with rabin2 -c 2014-11-16 12:05:49 +01:00
pancake
36f66f07d7 Fix another elf crash thanks to melkor 2014-11-10 13:35:40 +01:00
pancake
b298413192 Fix #1640 - Current ELF is passing all those orcs 2014-11-10 05:42:57 +01:00
pancake
9cf541c582 ELF parser is now fuzzer-proof 2014-11-10 05:02:25 +01:00