Broken object level authorisation. Financial record mutation via a predictable resource identifier.
An account-statement endpoint performed no ownership check on the record being requested. Because record identifiers were sequential, any authenticated user could read and alter the financial records of any other account. Reproducing the issue required nothing more than a logged-in session and a browser developer console.