Skip to content

Mass Assignment via Profile / Object Update Endpoint

mass-assignment-update is a high severity check in the web category, written in python. Its source is templates/web/auth-bypass/mass-assignment-update.py in cert-x-gen-templates.

Tests for mass assignment vulnerabilities by injecting privileged fields (role, isAdmin, balance, credits) into PUT/PATCH profile or object update requests. Confirms by re-fetching the object and checking if injected values were persisted.

Field Value
Id mass-assignment-update
Severity high
Language python
Category web
Author BugB Security Team
Template version 1.0.0
Confidence 82
CVSS 8.3
Weakness CWE-915
Tags mass-assignment, broken-access-control, owasp-a06, owasp-a01, privilege-escalation, object-property-injection
Target kind not recorded
Oracle not recorded

The file declares @auto_probe, @batch_group, @context_vars, @hypothesis_tags, @vuln_class as well. Those are not tabled above; read the source for what they carry.

Declared in the header. cxg parses @references and then discards it, and nothing at scan time reads it, so this is the only place the links a template cites are surfaced.

To see what the copy on your machine says about itself, and to confirm it is installed at all:

Terminal window
cxg template info mass-assignment-update

The id it prints is the one to pass anywhere a template is selected. See cxg template for the rest of the subcommand, Scan a target for running a scan, and A match is not a finding for how to read what comes back.