2022.06 - Upset Constant #853
hugsy
announced in
GEF Releases
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Changelog: 2022.06 - Upset Constant
Highlights of
Upset Constant
The unit testing structure has been re-designed to be more modular and flexible
The documentation has been globally updated, moved from ReadTheDocs to GithubPages, and redesigned from
mkdocs
tomkdocs-material
Countless (potential) errors were fixed thanks to more integration of type hinting
Debugged file formats (such as ELF) now rely on a abstraction layer. This means GEF can transparently support more file formats including PE or MachO (see
gef-extras/os
)Remote support has been entirely rewritten and is now fully exposed via the
gef.remote
namespace. This includes the Qemu (user and system) support.Many commands, relying on external dependencies (such as
cs-dis
,asm
oremulate
) were transfered to GEF-Extras. Therefore, GEF now has absolutely no dependency whatsoever, not even optional ones. Refer to the deprecation page of the documentation for a complete overview of the changes.ida-interact
has been totally removed and is now entirely of GEF-Extras only. It has also been rewritten to drop Python XMLRPC and relies on the much more advancedrpyc
Python library.A new subcommand appeared,
gef install
which allows to install commands fromgef-extras
on the fly, if you cannot clone the repository or just need a one-time command.pcustom
supports class factory allowing the structure(s) defined to collect information from the runtimeSome improvements were added to the stack canary detection
On a more personal note, this release marks the 10 years anniversary 🎂 since the first lines of GEF were written!! Thanks for using and contributing to GEF !
Contributors
Closed Issues
Closed Pull Requests
Commit details
148 commits since 2021.10
Commit log
new-release.py
in thegit
shell commanddocs/api.md
(Fix typo #747)assert
onget_register
(Remove theassert
onget_register
#754)assert
onget_register
#754nb_argument
when printing guessed arguments (fix Error incontext
command:max() arg is an empty sequence
#753) (Simplify hownb_argument
is calculated inprint_guessed_arguments
#755)assert
(Remove finalassert
#756)gef.py
for M68K support (ingef-extras
) (Adds constants togef.py
for M68K support (ingef-extras
) #757)Gef
and instancegef
that will be used to make the API simpler and more Pythonic. Also adds memory access (viagef.memory
) and settings (viagef.config
)GefHeapManager
class - deprecates many functions to an equivalent more readable - madeGlibcArena
andGlibcChunk
classes iterablegef.session
which includes many runtime info (.pagesize
,.canary
,.constants
, etc.) - Add more docstrings - The GDB command objects are now in the namespacegef.gdb
- Adjust some gef functions to check result - Makeendian_str
,gef_pagesize
,gef_read_canary
,set_gef_setting
andget_gef_setting
deprecated APIsget_memory_alignment()
->gef.arch.ptrsize
heap.base_address
get_pid()
->gef.session.pid
canary
commandelf-info
patch qword
GlibcArena.__eq__
get_register
->gef.arch.register()
- new context manager for output redirection:RedirectOutputContext
__str__
toSection
gef.memory.maps
gef.session.qemu_mode
andgef.session.remote
reset()
that allows to entirely reset the gef session usingpi reset()
__gef_redirect_output_fd__
->gef.ui.redirect_fd
__gef_int_stream_buffer__
->gef.ui.stream_buffer
__infos_files__
, was obsolete since we started usinglru_cache
__commands__
-->gef.session.commands
highlight_table
-->gef.ui.highlight_table
libc_args_definitions
-->gef.session.libc_args_definitions
new_objfile_handle
doesn't need to re-init the managers since we already reset its cache__watches__
->gef.ui.watches
__context_messages__
->gef.ui.context_messages
__gef_convenience_vars_index
->gef.session.convenience_vars_index
gef.session
ptrsize
static for x86 and x64ptrsize
static for arm, arm64 and mipspathlib.Path
(replace all pathes withpathlib.Path
#775) added test fordownload_file
ptrsize
cachingGEF_RC
to aPath
object (replace all pathes withpathlib.Path
#775)api/gef.md
@deprecated
adds a note in the api docheap set-arena
api.md
SHT_NUM
valueFormatStringSearchCommand
heap
CI failures (defered to Multiple issues inheap bins XX
commands #785) - minor type adjustmentsGefSetting
that prevented saved values to be loaded (Fixed bugs inGefSetting
that prevented saved values to be loaded #792)@deprecated
warning display can be toggled off (@deprecated
warning display can be toggled off #795)pcustom
command (Complete rewrite ofpcustom
command #794)theme
: use the gef settings managertry
/except
forgef restore
to indicate which setting name is missingArchitecture
gef.ui.libc_args_table
(Convertlibc_args_definitions
togef.ui.libc_args_table
#821)libc_args_definitions
togef.ui.libc_args_table
#821ida-interact
(Removeida-interact
#817)pcustom
(Add class factory support forpcustom
#819)gef install
(New subcommandgef install
#825)get_arch
will be deprecated after Type Hinting Fixes - Part 1 #827)gef-extras.sh
installation scriptida-interact
(Removeida-interact
#842) from GEF, entirely moved to GEF-Extrasmaster
->main
(master
->main
#845)print-format
andpatch byte
commands can work together (new feature: print-format and patch byte commands can work together #843)__str__
forFileFormat
-FileFormat
also requires a section membergef-remote
: rewrite and addremote
full support (Bettergef-remote
: rewrite and addremote
full support #830)gef-remote
- part 2: Remote Qemu (Bettergef-remote
- part 2: Remote Qemu #846)print-format
after new feature: print-format and patch byte commands can work together #843 (Minor update to unittest ofprint-format
after #843 #852)File diff
This discussion was created from the release 2022.06 - Upset Constant.
Beta Was this translation helpful? Give feedback.
All reactions