GET /api/techniques/130/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, DELETE, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 130,
    "key": "opaque-predicate",
    "unprotect_id": "U0201,B0032.019",
    "name": "Opaque Predicate",
    "description": "Opaque predicate is a term used in programming to refer to decision making where there is only one possible outcome. This can be achieved through the use of complex or hard-to-understand logic, such as calculating a value that will always return True. \r\n\r\nOpaque predicates are often used as anti-disassembling techniques, as they can make it difficult for an analyst to understand the code and determine its intent. By using opaque predicates, malware authors can make their code more difficult to reverse engineer, which can help to evade detection and analysis.",
    "resources": "https://www.carbonblack.com/2019/02/25/defeating-compiler-level-obfuscations-used-in-apt10-malware/",
    "creation_date": "2019-03-23T18:03:47Z",
    "tags": "Complex logic, Hard-to-understand code, Single-path decision making, Always-true conditions, Anti-disassembling, Reverse engineering evasion, Malware detection evasion",
    "modification_date": "2023-10-04T10:44:19.865000Z",
    "category": [
        5
    ],
    "rules": [],
    "attachments": [],
    "featured_api": [],
    "contributors": []
}