This is the mail archive of the
mailing list for the binutils project.
[libopcodes] Improper (but unlikely) opcode decoding
- From: Emmanuel Fleury <fleury at labri dot fr>
- To: binutils at sourceware dot org
- Date: Wed, 13 Jun 2012 14:25:53 +0200
- Subject: [libopcodes] Improper (but unlikely) opcode decoding
I just read this paper from people from Munich about decoding opcodes
and especially amd64 decoding. They have tried several disassembler in
linear sweep and have identified an improper behavior of most of them
when running into prefix decoding.
If you want to focus only on this improper decoding of libopcodes in the
paper, I would advise to go directly to sections 3 and 4.2 (with a small
stop at Fig. 4).
Still, the "bug" in libopcodes can be seen as a "feature", as the Intel
manual itself says it should lead to an "unexpected behavior". But, you
have to know that having this kind of prefix will be anyway executed by
the processor (the incorrect prefix will be dropped). So, it might be an
issue here (or not).
Rule 8: Avoid captive user interfaces.
-- Mike Gancarz (The UNIX Philosophy)