Sachverhalt: A. Die Staatsanwaltschaft Zürich-Limmat führt gegen X._ eine Strafuntersuchung wegen mehrfacher Schändung im Sinn von Art. 191 StGB. Sie verdächtigt ihn, sich in seiner Funktion als als Anästhesiepfleger an verschiedenen Patientinnen sexuell vergangen zu haben, als sie sich nach einer Operation im Aufwachraum befanden und nicht in der Lage waren, sich gegen seine Übergriffe zur Wehr zu setzen. X._ wurde am 14. September 2011 festgenommen und am 16. September 2011 in Untersuchungshaft versetzt. Am 1. November 2012 verlängerte das Zwangsmassnahmengericht die Untersuchungshaft gegen X._ bis zum 31. Januar 2013. Am 3. Dezember 2012 wies das Obergericht des Kantons Zürich die Beschwerde von X._ gegen die Haftverlängerung ab. Es erwog, dieser sei der ihm vorgeworfenen Straftaten dringend verdächtig, und es bestehe Fluchtgefahr. Mildere Ersatzmassnahmen - etwa eine Schriftensperre - könnten die Fluchtgefahr nicht ausreichend bannen, und die Weiterführung der Haft sei verhältnismässig. B. Mit Beschwerde in Strafsachen beantragt X._, diesen Entscheid des Obergerichts aufzuheben und ihn, eventuell unter Anordnung von geeigneten Ersatzmassnahmen, umgehend aus der Haft zu entlassen. Subeventuell sei der Entscheid des Obergerichts aufzuheben und die Sache an die Vorinstanz zurückzuweisen. Ausserdem ersucht er um unentgeltliche Prozessführung und Verbeiständung. C. Das Obergericht und die Staatsanwaltschaft verzichten auf Vernehmlassung. 