Sachverhalt: A. A.a X._ (Beschwerdeführerin) wurde am 13. November 2007 wegen "Selbstgefährdung durch Verfolgungswahn" vom Kreisspital S._ im Rahmen einer fürsorgerischen Freiheitsentziehung in die Klinik K._ eingewiesen. Am 28. November 2007 ersuchte sie um Entlassung aus der Anstalt, welchem Begehren die ärztliche Leitung der Klinik mit Schreiben vom 29. November 2007 nicht statt gab. A.b Die Beschwerdeführerin gelangte mit ihrem Gesuch um Entlassung an den Einzelrichter am Bezirksgericht Zürich, welcher sie und den gerichtlichen Gutachter am 4. Dezember 2007 anhörte und mit Urteil vom gleichen Tag das Entlassungsgesuch sowie das Begehren der Beschwerdeführerin um Bestellung eines unentgeltlichen Rechtsbeistandes abwies. B. Mit Beschluss vom 21. Dezember 2007 wies das Obergericht des Kantons Zürich die Berufung gegen das erstinstanzliche Urteil ab, bestätigte dieses Urteil und gab dem Entlassungsgesuch nicht statt. In Abänderung der erstinstanzlichen Verfügung ordnete es der Beschwerdeführerin einen unentgeltlichen Rechtsbeistand für das erstinstanzliche Verfahren bei und bestellte ihr einen unentgeltlichen Rechtsbeistand für das Berufungsverfahren. C. Die Beschwerdeführerin gelangt mit einer als Berufung und Verfassungsbeschwerde bezeichneten Eingabe an das Bundesgericht mit dem Begehren, den Beschluss des Obergerichts aufzuheben und sie aus der Anstalt zu entlassen. Für das bundesgerichtliche Verfahren ersucht sie um unentgeltliche Rechtspflege. Das Obergericht hat auf Vernehmlassung verzichtet. D. Das Gesuch der Beschwerdeführerin um aufschiebende Wirkung ist mit Verfügung vom 27. Dezember 2007 abgewiesen worden. Die Beschwerdeführerin hat sich am 28. Dezember 2007 unaufgefordert zur Abweisung des Gesuchs um aufschiebende Wirkung vernehmen lassen. 