News for hackers. Stuff that matters.
Re:Morpheus: A Vulnerability-Tolerant Secure Architecture [pdf] by hleach on Sunday October 06, 2019 @02:19PM (#21173788)
You are conflating the act of debugging with the operation of a "debugger".

Sure you can start at 0 and step forward one instruction at a time, but how often do you do that without at least looking at the code?

Not being able to look ahead or behind but only within what is actively on the stack is certainly a limiting factor in debugging.

It is of course a problem that has been solved before. Someone would develop an unpacker/decrypter for it at some point and make this trivial, but that would still be an added level of complexity.

Re:Morpheus: A Vulnerability-Tolerant Secure Architecture [pdf] by monocasa on Sunday October 06, 2019 @02:35PM (#21173912)
You have access to the binary itself, you don't need to read it out of the debuggee process.
Re:Morpheus: A Vulnerability-Tolerant Secure Architecture [pdf] by hleach on Sunday October 06, 2019 @02:47PM (#21174043)
I agree. I'm not sure I understand your point though. This isn't contrary to anything I said. I mention unpacking which would be a pre-debugger process.

I believe you are just being pedantic about my use of the word "debugging" to include things like unpacking, static analysis, and a variety of tools and processes used.

Re:Morpheus: A Vulnerability-Tolerant Secure Architecture [pdf] by monocasa on Sunday October 06, 2019 @03:04PM (#21174203)
The binaries aren't preencrypted here, the dynamic nature is the whole point. There's nothing to unpack since you just reference the binary, and no added work for the debugger.

So when you say

> For example it appears to combat ROP they are additionally encrypting the code segment of the program and decrypting on an as needed basis. I am absolutely sure this would make debugging more difficult.

It's just not true.

Re:Morpheus: A Vulnerability-Tolerant Secure Architecture [pdf] by hleach on Sunday October 06, 2019 @03:42PM (#21174534)
So yes, you are correct it's being encrypted dynamically at the hardware level.

You just debug in a system without these protections turned on then.

Re:Morpheus: A Vulnerability-Tolerant Secure Architecture [pdf] by monocasa on Sunday October 06, 2019 @04:02PM (#21174696)
No, I'm saying you don't have to turn off these protections.

Like, can you give an example of a debugging task you have carried out that requires reading the code segment of the running process?

Re:Morpheus: A Vulnerability-Tolerant Secure Architecture [pdf] by hleach on Sunday October 06, 2019 @04:40PM (#21174968)
Required? No, but I didn't say impossible. I said "more difficult".

Made easier by? Most everything ever loaded in a debugger.

Re:Morpheus: A Vulnerability-Tolerant Secure Architecture [pdf] by hleach on Sunday October 06, 2019 @05:44PM (#21175388)
Just for an example. How about debugging a non trivial issue between a program and a dynamically loaded library.

You can't just scan the IAT/PLT. You are going to have to find load points or manually step through, and maybe calculate function offsets in the library. Not impossible at all.

It is however something you could have just quickly glanced at and found otherwise.