Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature parity with GEF #30

Open
32 of 40 tasks
zachriggle opened this issue May 12, 2016 · 6 comments
Open
32 of 40 tasks

Feature parity with GEF #30

zachriggle opened this issue May 12, 2016 · 6 comments
Labels
enhancement For enhancements to existing features help wanted
Milestone

Comments

@zachriggle
Copy link
Contributor

zachriggle commented May 12, 2016

These can be enumerated easily via: gdb --nx --nh --command gef/gef.py --ex 'gef'

  • aslr -- View/modify GDB ASLR behavior.
  • capstone-disassemble -- Use capstone disassembly framework to disassemble code. (alias: cs-dis)
    • We always use Capstone
  • canary -- Shows the canary value of the current process. Apply the techique
  • capstone-disassemble -- Use capstone disassembly framework to disassemble code. (alias: cs-dis)
    • We always use capstone
  • checksec -- Checksec.sh (http://www.trapkit.de/tools/checksec.html) port.
  • context -- Display execution context. (alias: ctx)
  • ctf-exploit-templater -- Generates a ready-to-use exploit template for CTF.
    • Won't implement, use pwntools's pwn template.
  • dereference -- Dereference recursively an address and display information
  • dump-memory -- Dump chunks of memory into raw file on the filesystem. Dump file name template can be defined in GEF runtime config
    Won't implement, use the built-in dump command.
  • edit-flags -- Edit flags in a human friendly wait (alias: flags)
  • elf-info -- Display ELF header informations.
  • entry-break -- Tries to find best entry point and sets a temporary breakpoint on it.
    • Use entry
  • fd -- Enumerate file descriptors opened by process.
    • Use procinfo
  • format-string-helper -- Exploitable format-string helper: this command will set up specific breakpoints at well-known dangerous functions (printf, snprintf, etc.), and check if the - pointer [ ] holding the format string is writable, and therefore susceptible to format string attacks if an attacker can control its content. (alias: fmtstr-helper)
  • gef-alias -- GEF defined aliases
    • Not relevant.
  • gef-remote -- gef wrapper for the target remote command. This command will automatically download the target binary in the local temporary directory (defaut /tmp) and then source it. Additionally, it will fetch all the /proc/PID/maps and loads all its information.
    • Unnecessary for pwndbg, we do it better, and transparently.
  • heap -- Base command to get information about the Glibc heap structure.
  • hexdump -- Display arranged hexdump (according to architecture endianness) of memory range. (alias: xd)
  • hijack-fd -- ChangeFdCommand: redirect file descriptor during runtime.
    • Shouldn't be necessary, use pwntools to launch
  • ida-interact -- IDA Interact: set of commands to interact with IDA.
    This is provided by the $ida magic function, and the IDA module.
  • inspect-stack -- Exploiter-friendly top-down stack inspection command (peda-like)
    • Implemented with the telescope command, like PEDA.
  • ksymaddr -- Solve kernel symbols from kallsyms table.
  • nop -- Patch the instruction(s) pointed by parameters with NOP.
  • patch -- Patch the instruction pointed by parameters with NOP. If the return option is specified, it will set the return register to the specific value.
  • pattern -- Metasploit-like pattern generation/search
    • Won't implement, use pwndbg and the search functionality.
  • pid -- ProcessIdCommand: print the process id of the process being debugged.
  • process-search -- List and filter process. (alias: ps)
  • process-status -- Extends the info given by GDB info proc, by giving an exhaustive description of the
    • Implemented with procinfo
  • registers -- Display full details on one, many or all registers value from current architecture.
  • reset-cache -- Reset cache of all stored data.
    • Unnecessary, pwndbg's cache management is automagic.
  • search-pattern -- SearchPatternCommand: search a pattern in memory. (alias: grep)
    • Implemented as search.
  • shellcode -- ShellcodeCommand uses @JonathanSalwan simple-yet-awesome shellcode API to download shellcodes
    Won't implement, use binjitsu.
  • stub -- Stub out the specified function.
  • theme -- Customize GEF appearance.
  • system -- Invoke an external command and display result.
    • Won't implement, use GDB builtin shell.
  • trace-run -- Create a runtime trace of all instructions executed from $pc to LOCATION specified.
  • unicorn-emulate -- Unicorn emulate: Use Unicorn-Engine to emulate the behavior of the binary, without affecting the GDB runtime. By default the command will emulate only the next [ - ] instruction, but location and number of instruction can be changed via arguments to the command line. By default, it will emulate the next instruction from current PC. (alias: emulate)
    • Won't implement, we automatically instructions in a transparent manner when using nearpc.
  • vmmap -- Display virtual memory mapping
  • xfiles -- Shows all libraries (and sections) loaded by binary (Truth is out there).
    • Won't implement, use builtin info files or info sharedlibrary or vmmap.
  • xinfo -- Get virtual section information for specific address
    I- mplemented as vmmap.
@zachriggle zachriggle added enhancement For enhancements to existing features and removed enhancement For enhancements to existing features labels Jun 10, 2016
@zachriggle zachriggle self-assigned this Jun 10, 2016
@zachriggle
Copy link
Contributor Author

I need to re-evaluate GEF since it has some new stuff since I did this last year.

@vn-ki
Copy link

vn-ki commented Jan 13, 2020

@bet4it
Copy link
Contributor

bet4it commented Mar 2, 2020

@vn-ki as for tmux-setup, you can try hyperpwn

@suletm
Copy link

suletm commented Jun 23, 2022

scan, memory-watch and tmux-setup looks like killer features from gef.

https://gef.readthedocs.io/en/master/commands/scan/

p2p added in this pull request is similar to "scan": #880

@gsingh93
Copy link
Member

gsingh93 commented Dec 9, 2022

@nobodyisnobody let me know here if there's particular features you're interested in.

@nobodyisnobody
Copy link

nobodyisnobody commented Dec 12, 2022 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement For enhancements to existing features help wanted
Development

No branches or pull requests

6 participants