To me this is easily fixable. Given the whole notion that corporations are people. Why not take it to it's logical conclusion and apply the same limits on corporations contributions as is done on personal contributions (And of course any wholy owned subsidiary does not count since otherwise it would just be too easy to circumvent). Currently any person is limited to donate no more than $2500 per candidate in a federal election, you are also allowed to donate no more than $5000 to a Political Action Committee (PAC). I would be totally OK with Haliburton, GM and JP Morgan being able to donate each to a presidential campaign instead of the untold millions I am sure they are all currently sinking into the campaigns.
Finally we just have to stop the Super PACs, not only do these currently have no limits on how much can be donated to them, they also don't have to explain where the money comes from or even how it is being spent. Russia, Iran or China could be funding a Super PAC to help elect the next president of the US and we wouldn't even know it. Am I the only one who gets a little bit queasy about that?
But same as always the people who needs to change this are the people who are benefiting the most from the current system so I am not confident that anything will be done soon about this.