Patching: Binary Ninja Basics ep.3
HTML-код
- Опубликовано: 29 сен 2024
- One of Binary Ninja's strengths is the many ways you can patch binaries. Even if you're an expert there's probably some ways you might not know about.
Small update: early in the video Jordan mentions copying the physical offset using a snippet, but that's been added to the built-in copy menu in the bottom-right which makes navigating between views even faster and easier!
Timestamps:
01:32 Edit Raw Hex
03:07 Edit Current Line
03:32 Assemble
04:09 Edit Multiple Lines
04:27 Patch Menu
04:49 Convert to NOP
06:28 Invert Branch and Always Branch
06:45 Compile C Source
07:22 Linear View and Hex View parallel editing
08:39 API backing
References:
Blog post: binary.ninja/2...
How to export the patched binary, or show differences I made so far to the input file?
im also interested in this feature. I have to keep patching every time I run the binary inside bin ninja it's annoying, I'd like to patch only ONCE
I may need to wire up Python because I’m not seeing much on patching involving variable reassignment or replacement of one call with another. I’m very spoiled by supra-assembly languages.
My first time trying to use the c-compiler I'm working on a crackme and want to printf debug something.
I copy the pseudo-c and make sure it's valid c. I add a printf before the return and I compile.
What I get is just an error saying: "[Compilation Failed] stdin:1: error: syntax error"
I imagine there are probably some limitations I need to know about that weren't covered here.
Hard to know without more context -- what's the exact snippet of code you're trying to compile? Also, YT comments aren't a great way to get support, I'd recommend joining our public slack (slack.binary.ninja/) or getting in touch with us via twitter or email.