Krakatau
gef
Krakatau | gef | |
---|---|---|
10 | 15 | |
1,931 | 6,489 | |
- | - | |
2.9 | 8.4 | |
26 days ago | 5 days ago | |
Rust | Python | |
GNU General Public License v3.0 only | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Krakatau
-
How to Create a UTF-16 Surrogate Pair by Hand, with Python
Since Java bytecode uses MUTF-8, which encodes astral characters as surrogate pairs, I've had to implement this conversion in Python multiple times, in Krakatau and Enjarify.
-
How hard is interop with Java?
Not sure how applicable this is for your project since my compiler was written in Python, but I used Krakatau.
- Where do I get started on AoH modding?
-
learn jvm bytecode
Here is one that disassembles the bytecodes and reassembles them https://github.com/Storyyeller/Krakatau .
-
100 Languages Speedrun: Episode 77: JVM Assembly with Jasmin
There's an additional problem that unlike regular assembly or LLVM assembly where there's some fully supported standard format, Jasmin is a third party program and different JVM assemblers and disassemblers disagree on so many things. There are also some newer assemblers and disassemblers like Krakatau you could try instead. Krakatau has different syntax than Jasmin or javap.
- GitHub - Storyyeller/Krakatau: Java decompiler, assembler, and disassembler
-
Awesome CTF : Top Learning Resource Labs
Krakatau - Java decompiler and disassembler.
- Krakatau: An assembler and disassembler for [obfuscated] Java bytecode
-
Chocopy -> JVM Compiler, implemented in Python
The compiler outputs bytecode in a text format, which can be assembled into .class files using the Krakatau assembler. Figuring out how to translate features like nested functions and nonlocals to JVM was pretty interesting, and having access to Java’s standard library made the whole thing much easier than expected.
- Can you tell an assembly language when you see one?
gef
-
Beej's Quick Guide to GDB (2009)
There is also GEF, which is widely used by the reverse engineering and CTF community.
https://github.com/hugsy/gef
-
How do you use gdb without the tui? Are there advantages? Or just describe your GDB workflow.
If you are on Linux, install GEF and be happy.
- TF2 on Linux is running incredibly poorly, reporting 1200%+ CPU usage. Steam also appears to have some sort of memleak and infinite loop/callback going on leading to absurd CPU usage over time.
-
Any good and easy-to-use C debuggers?
If you are in linux, I recomend none of them (haha) because you should get more used to GDB a little bit. You just need to install some good visualizers likes GEF, for example.
- Emulating an emulator inside itself. Meet Blink
-
Are there any cpu emulators that could help me learn i386 assembly?
https://github.com/hugsy/gef, https://hugsy.github.io/gef/, https://hugsy.github.io/gef/commands/context/ ("Values in red indicate that this register has had its value changed since the last time execution stopped.")
- What plugins do you recommend for ExploitDev or RE and why?
- Awesome TUI tools
-
Fully Dockerized Linux kernel debugging environment
The attached debugger is not just raw GDB but is using https://hugsy.github.io/gef/ to make debugging less of a pain. It's still not perfect but helps plenty already.
-
Debugging with GDB
I still struggle with GDB but my excuse is that I seldom use it.
When I was studying reverse engineering though, I came across a really cool kit (which I've yet to find an alternative for lldb, which would be nice given: rust)
I'd recommend checking it out, if for no other reason than it makes a lot of things really obvious (like watching what value lives in which register).
https://github.com/hugsy/gef
LLDB's closest alternative to this is called Venom, but it's not the same at all. https://github.com/ovh/venom
What are some alternatives?
chocopy-python-compiler - Ahead-of-time compiler for Chocopy, a statically typed subset of Python 3, built in Python 3.
pwndbg - Exploit Development and Reverse Engineering with GDB Made Easy
CyberChef - The Cyber Swiss Army Knife - a web app for encryption, encoding, compression and data analysis
peda - PEDA - Python Exploit Development Assistance for GDB
linux - Linux kernel source tree
gdb-dashboard - Modular visual interface for GDB in Python
bettercap - The Swiss Army knife for 802.11, BLE, IPv4 and IPv6 networks reconnaissance and MITM attacks.
lldb-mi - LLDB's machine interface driver
Mak_Writing_Compilers_and_Interpreters - Source for the books from Ronald Mak - Writing Compilers and Interpreters.
radare2 - UNIX-like reverse engineering framework and command-line toolset [Moved to: https://github.com/radareorg/radare2]
edb-debugger - edb is a cross-platform AArch32/x86/x86-64 debugger.
rr - Record and Replay Framework