GET /api/techniques/83/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, DELETE, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept
{
"id": 83,
"key": "impossible-disassembly",
"unprotect_id": "U0211",
"name": "Impossible Disassembly",
"description": "Impossible disassembly is an anti-disassembling technique that involves inserting data bytes after a conditional jump instruction in order to prevent the real instruction that follows from being disassembled. This technique takes advantage of a basic assumption in disassembly, which states that one byte is only interpreted in the context of one instruction. By inserting a byte that is the opcode for a multibyte instruction, the disassembler will be unable to correctly interpret the next instruction, and will therefore generate incorrect disassembly output.",
"windows": "",
"linux": "",
"macos": "",
"resources": "https://www.slideshare.net/SamBowne/practical-malware-analysis-ch-15-antidisassembly\r\nhttps://medium.com/swlh/assembly-wrapping-a-new-technique-for-anti-disassembly-c144eb90e036\r\nhttps://gelven4sec.github.io/posts/rogue_byte/",
"creation_date": "2019-03-18T13:54:40Z",
"tags": "Impossible disassembly,\r\nAnti-disassembling,\r\nDisassembler,\r\nConditional jump,\r\nData byte,\r\nDisassembly output,\r\nDisassembly accuracy,",
"modification_date": "2024-11-21T13:22:00.769914Z",
"category": [
5
],
"rules": [
163
],
"attachments": [],
"featured_api": [],
"contributors": []
}