Add unauthorized trustline checks in `accountHolds` and invariants
Summary
There might be unauthorized trustlines with non-zero balance in existence. In rippled's accountHolds function, it should check for authorization of the trustline since it is used in various features.
Also, invariants should be added so that these trustlines are not allowed to modify its balances in any form. This ensures existing and new features don't open loopholes that allow malicious users to bypass authorization.
@shawnxie999 do you have an indication of how many unauthorized trustlines with non-zero balances exist?
@bthomee no, to know this we would need to write a script to do a full ledger scan. But my guess is very few of them exist.