On an open track (time trialling), Vettel is from the drawer and could certainly compete with Alonso and Hamilton. Add some traffic though and while I can see Hamilton and Alonso move through the field, I can see Vettel getting stuck behind someone slow and not moving forward.
I think Hamilton/Alonso's best chance of a win is to qualify on pole. In other-words, create a setup which is completely biased towards giving them the fastest lap time in qualifying (on fresh/soft tyres). Once in the race, make Vettel work hard for the overtake. They have more of a chance of beating him this way, as opposed to doing what they have done in the last 2 races.
Hamilton and Alonso are allowing Vettel to time trial his way through the race and if they continue to allow this, Vettel (reliability and performance advantage permitting), will probably win every race this season.
Get in front of Vettel and then make him work for the overtake. Change you strategy, rather than sticking to the same (losing) strategy, which Vettel is expecting and prepared for.
What I liked in the last race was the fact that Button was putting Vettel under pressure. He was the only guy who was making an attempt to take the fight to Vettel....and its not often that this happens. I wish he would do this more often, rather than sticking to this normal boring/dull strategy of "I will hold my current position till the end of the race and take no risk to overtake the guy in front".