"New ISA Prefix Fusion"

By: Anon3 (anon3.delete@this.anon3.invalid), August 17, 2020 5:34 pm
Room: Moderated Discussions
Maynard Handley (name99.delete@this.name99.org) on August 17, 2020 4:34 pm wrote:
> You are suggesting that jumping into the middle of a paid may be a security hole.

I know it's a security hole. Both of the CFI mechanisms I mentioned bear more than a passing resemblance to a 2015 NSA paper called 'Hardware Control Flow Integrity (CFI) for an IT Ecosystem' I can't find the text online currently but I remember that it claimed a 70% reduction in gadgets in GLIBC by application of their proposal. I would not be at all surprised if the NSA strongly suggested to various companies that they should adopt something similar in to their ISAs.

Obviously ARMv8 is fixed width so you don't have the jumping in to instructions issue but gadgets based on jumping to points which were not branch targets in the compiler intended control flow still exist, there are just fewer of them.

> on the details of exactly how these pair instructions are implemented.

It does not matter what the internal implementation is. It's a prefix opcode felling you to to decode the next opcode differently. Therefore there are now two different interpretations to the same opcode. This increases the gadget space.

> x86 has this as a security problem because they promise that jumping into such an instruction stream
> will work.

The processor cannot know where the instruction boundaries are without decoding from the target of a branch and some x86 instructions are one byte thus it's a fundamental property of the ISA (without CFI) that you must be able to jump to any address.

> IBM has less of a problem if they don't make that promise.

Without CFI the processor has no clue what the intended control flow is. It simply can't know that it is jumping to an address containing an opcode which is meant (by the programmer/compiler) to be subject to a prefix. As the entire point of the prefix system is to reuse opcode space it's highly likely the that such an opcode will be valid and execute.

< Previous Post in ThreadNext Post in Thread >
TopicPosted ByDate
IBM introduces POWER10Crystal S. Diamond2020/08/16 10:20 PM
  "New ISA Prefix Fusion"QAnon2020/08/16 11:21 PM
    "New ISA Prefix Fusion"Anon32020/08/17 06:59 AM
      "New ISA Prefix Fusion"Kevin G2020/08/17 10:51 AM
        "New ISA Prefix Fusion"Maynard Handley2020/08/17 11:51 AM
          "New ISA Prefix Fusion"Anon32020/08/17 04:10 PM
            "New ISA Prefix Fusion"Maynard Handley2020/08/17 04:34 PM
              "New ISA Prefix Fusion"Anon32020/08/17 05:34 PM
                "New ISA Prefix Fusion"Adrian2020/08/17 06:39 PM
                "New ISA Prefix Fusion"anon22020/08/17 09:24 PM
                  "New ISA Prefix Fusion"Doug S2020/08/17 09:58 PM
                    "New ISA Prefix Fusion"hobold2020/08/18 01:47 AM
                    "New ISA Prefix Fusion"Michael S2020/08/18 04:48 AM
                      "New ISA Prefix Fusion"hobold2020/08/18 11:58 AM
                        "New ISA Prefix Fusion"dmcq2020/08/18 01:00 PM
                          "New ISA Prefix Fusion"Michael S2020/08/18 01:48 PM
                            "New ISA Prefix Fusion"hobold2020/08/18 02:29 PM
                            "New ISA Prefix Fusion"Maynard Handley2020/08/18 03:46 PM
                          "New ISA Prefix Fusion"Maynard Handley2020/08/18 03:42 PM
                            "New ISA Prefix Fusion"anon22020/08/18 07:04 PM
                              "New ISA Prefix Fusion"Maynard Handley2020/08/18 09:17 PM
                                "New ISA Prefix Fusion"dmcq2020/08/19 04:08 AM
                                  "New ISA Prefix Fusion"Maynard Handley2020/08/19 10:02 AM
                                    "New ISA Prefix Fusion"dmcq2020/08/19 11:08 AM
                                      "New ISA Prefix Fusion"Maynard Handley2020/08/19 12:05 PM
                                        "New ISA Prefix Fusion"dmcq2020/08/19 02:14 PM
                                          "New ISA Prefix Fusion"Maynard Handley2020/08/19 02:44 PM
  IBM introduces POWER10Thu2020/08/16 11:56 PM
    IBM introduces POWER10Michael S2020/08/17 02:12 AM
      IBM introduces POWER10Thu2020/08/17 03:27 AM
        IBM introduces POWER10TransientStudent2020/08/17 04:23 AM
          IBM introduces POWER10Rayla2020/08/17 04:29 AM
          IBM introduces POWER10Maynard Handley2020/08/17 10:44 AM
            IBM introduces POWER10Kevin G2020/08/17 10:57 AM
        IBM introduces POWER10Rayla2020/08/17 04:26 AM
          IBM introduces POWER10Thu2020/08/17 05:00 PM
  Matrix Math AcceleratorAdrian2020/08/17 01:01 AM
    Matrix Math AcceleratorMichael S2020/08/17 02:32 AM
      Matrix Math AcceleratorAdrian2020/08/17 02:46 AM
      Matrix Math Acceleratorj2020/08/18 02:32 AM
Reply to this Topic
Body: No Text
How do you spell tangerine? 🍊