I mention (very briefly) during my HiveFest presentation, that we need to amend the witness voting protocol.
Rather than having each token able to cast 30 witness votes, it should be closer to 5 (or 1/4 the number of consensus witnesses, in case that number needs to change).
That simple change makes a 51% attack impossible. A hostile stacker would need to control 77% of the total stake to successfully put 17 rogue witnesses in the top 20.