If you run a node, you're also checking that every block follows the rules.
A malicious supermajority cannot break the rules your client enforces, because your client will reject it.
Think of it as everyone running ethereum has a bunch of asserts() each block or communication it receives.