Type confusion occurs when an application accesses a resource using a type that is incompatible with its the original type. Such a vulnerability can allow attackers to tamper request parameters and bypass sanitizers used in the application code.