{"version":"2.1.222","anchor":"tool-input-string-extraction-hardened-against-hostile-object","canonical_anchor":"tool-input-string-extraction-hardened-against-hostile-object","heading":"Tool-input string extraction hardened against hostile objects","tier":"internal","area":"Permissions","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.222\/e\/tool-input-string-extraction-hardened-against-hostile-object","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.222","markdown":"### Tool-input string extraction hardened against hostile objects\n\nReading tool inputs is now hardened so a crafted object cannot run code during extraction.\n\n**What**\n\nThe helper that pulls values like command, file_path, prompt and args out of tool input no longer trusts the shape of the object it is given.\n\n**Details**\n\n- Rejects Proxy objects outright.\n- Reads own property descriptors rather than invoking getters, so extraction cannot run attacker code.\n- Bails on array-like values whose length is not a safe integer or exceeds the cap.\n\n**Evidence**\n\n`OYa.types.isProxy(e)`\n\n- Area: Permissions\n- Tier: Under the hood\n- Useful: 2\/5\n- Signal: 0\/5"}