Live data from Hacker News

Panopticon: A libre, cross platform disassembler for reverse engineering

panopticon.re

21–30 of 90 posts

Re: Panopticon: A libre, cross platform disassembler for reverse engineering

#22
post #12

Earlier quoted context omitted.

You insert the equivalent of "mov eax, 0x1; ret" (or 0x0) in x86 for whatever architecture you're using as the first instructions of the function.

I mean even more high level than this. If I open a binary, can I just write the new machine code to it directly and not be concerned with recompiling?

Usually. Just make sure the new machine code is the same size as the old.

That said, if the code is signed and there's a signature check - the check will fail if you modify the code.

If the signature is a simple crc/checksum, you could also update the checksum. If it's a cryptographic signature, it might be a lot more difficult.

Re: Panopticon: A libre, cross platform disassembler for reverse engineering

#23
post #8

Earlier quoted context omitted.

The author posted on /r/rust with some details: https://www.reddit.com/r/rust/comments/4ihtfa/panopticon_a_l... A particularly interesting comment: > Also I found iterator invalidation bugs simply by translating > C++ to Rust, thanks Borrow Checker!

Yeah, it's really interesting how many iterator invalidation bugs you find in real C++ codebases. It's so easy to think that they don't exist until you have a tool (or a human) actively searching for them…

Isnt this whole category of bugs easily avoided by using

1. _SECURE_SCL on windows

2. _GLIBCXX_DEBUG on glibc based toolchains

Re: Panopticon: A libre, cross platform disassembler for reverse engineering

#24
post #9

Does somebody know how it compares to radare2?

From their GitHub repository[1]:

"Panopticon is under heavy development and its feature set still very basic. It's not yet able replace programs like radare2 and IDA Pro. We are working on it, check back regularly!"

[1] https://github.com/das-labor/panopticon/blob/master/doc/feat...

Re: Panopticon: A libre, cross platform disassembler for reverse engineering

#26

Earlier quoted context omitted.

If you can afford an IDA Pro license and cost of plugins, does it matter?

Yeah, it matters. If this is better, I'll use this; if IDA is better, I'll use IDA. I'm not 100% sure I understand your comment. Btw, most companies can afford an IDA license. It's pretty cheap compared to the salary of a developer, at least in the coastal US.

If your job can justify it, great, but mine can't. I want it for personal use and I can't justify it.

Re: Panopticon: A libre, cross platform disassembler for reverse engineering

#27
post #23
post #8

Earlier quoted context omitted.

Yeah, it's really interesting how many iterator invalidation bugs you find in real C++ codebases. It's so easy to think that they don't exist until you have a tool (or a human) actively searching for them…

Isnt this whole category of bugs easily avoided by using 1. _SECURE_SCL on windows 2. _GLIBCXX_DEBUG on glibc based toolchains

Those do not remove any bugs; it just changes how they are handled (ignore and hope for the best vs print diagnostic and terminate program, and the latter not in all cases)

Re: Panopticon: A libre, cross platform disassembler for reverse engineering

#28
post #6
post #4

On a side note; the visual callgraph is interesting.. It'd be interesting for other IDEs to implement something similar with a historical listing of input/output values for the corresponding displayed methods.

What's the visual callgraph? Is it something different than the CFG graph in the screenshot? I feel like most disassemblers do that.

Never worked with a disassembler. Didn't realize that this is commonplace. Could be beneficial for other languages as well..

Re: Panopticon: A libre, cross platform disassembler for reverse engineering

#29

Earlier quoted context omitted.

Yeah, it matters. If this is better, I'll use this; if IDA is better, I'll use IDA. I'm not 100% sure I understand your comment. Btw, most companies can afford an IDA license. It's pretty cheap compared to the salary of a developer, at least in the coastal US.

If your job can justify it, great, but mine can't. I want it for personal use and I can't justify it.

There's an evaluation version of IDA that's an older version and doesn't include 64-bit disassembly (just x86 and ARM IIRC), but it's free.

Re: Panopticon: A libre, cross platform disassembler for reverse engineering

#30

Earlier quoted context omitted.

Yeah, it matters. If this is better, I'll use this; if IDA is better, I'll use IDA. I'm not 100% sure I understand your comment. Btw, most companies can afford an IDA license. It's pretty cheap compared to the salary of a developer, at least in the coastal US.

If your job can justify it, great, but mine can't. I want it for personal use and I can't justify it.

OK, sure, but I still don't see how this is relevant to whether IDA is better than Panopticon.
Post reply on HN