Faits:
A. A._ a été arrêté le 15 octobre 2011 dans le cadre d'une instruction pénale conduite par le Ministère public de l'arrondissement de Lausanne (ci-après: le Ministère public) et portant sur un trafic de stupéfiants. Il lui est en substance reproché d'avoir participé à un trafic international d'héroïne portant sur plusieurs kilos. Relaxé le 16 octobre 2011, A._ a été appréhendé une seconde fois le lendemain matin suite à de nouveaux développements de l'enquête. Par ordonnance du 19 octobre 2011, le Tribunal des mesures de contrainte du canton du Vaud (ci-après: le Tmc) a ordonné la détention provisoire du prénommé, en raison de risques de fuite et de collusion.
Par ordonnance du 13 janvier 2012, le Tmc a prolongé la détention provisoire de A._ jusqu'au 17 avril 2012. L'intéressé a recouru contre cette décision auprès de la Chambre des recours pénale du Tribunal cantonal du canton du Vaud (ci-après: le Tribunal cantonal), qui a rejeté ce recours par arrêt du 31 janvier 2012. Constatant qu'il existait des charges suffisantes à l'encontre de A._, cette autorité a considéré que le maintien en détention provisoire était justifié par les risques de fuite et de collusion.
B. A._ recourt contre cette ordonnance auprès du Tribunal fédéral, en concluant à ce que la décision attaquée soit réformée dans le sens d'une mise en liberté immédiate. Il se plaint d'une appréciation arbitraire des faits et invoque implicitement la violation des dispositions du code de procédure pénale suisse (CPP; RS 312.0) relatives à la détention avant jugement. Il requiert en outre l'octroi de l'assistance judiciaire. Le Ministère public conclut au rejet du recours en se référant aux considérants de la décision attaquée. Le Tribunal cantonal a renoncé à se déterminer. Le recourant a présenté des observations complémentaires.

Considérant en droit:
1. Selon l'art. 78 LTF, le recours en matière pénale est ouvert contre les décisions rendues en matière pénale, dont font partie les décisions en matière de détention provisoire ou pour des motifs de sûreté au sens des art. 212 ss CPP (<ref-ruling> consid. 1 p. 23). L'accusé a qualité pour agir en vertu de l'art. 81 al. 1 let. a et let. b ch. 1 LTF. Pour le surplus, le recours est formé en temps utile (art. 100 al. 1 LTF) contre une décision rendue en dernière instance cantonale (art. 80 LTF) et les conclusions présentées sont recevables au regard de l'art. 107 al. 2 LTF.
2. Une mesure de détention préventive n'est compatible avec la liberté personnelle (art. 10 al. 2 Cst. et 5 CEDH) que si elle repose sur une base légale (art. 31 al. 1 et art. 36 al. 1 Cst.), soit en l'espèce l'art. 221 CPP. Elle doit en outre correspondre à un intérêt public et respecter le principe de la proportionnalité (art. 36 al. 2 et 3 Cst.; <ref-ruling> consid. 2c p. 270). Pour que tel soit le cas, la privation de liberté doit être justifiée par les besoins de l'instruction, un risque de fuite ou un danger de collusion ou de réitération (cf. art. 221 al. 1 let. a, b et c CPP). Préalablement à ces conditions, il doit exister à l'égard de l'intéressé des charges suffisantes, soit de sérieux soupçons de culpabilité (art. 221 al. 1 CPP; art. 5 par. 1 let. c CEDH; arrêt 1B_63/2007 du 11 mai 2007 consid. 3 non publié in <ref-ruling>). Le Tribunal fédéral examine librement ces questions, sous réserve toutefois de l'appréciation des faits, revue sous l'angle restreint des art. 97 al. 1 et 105 al. 2 LTF (<ref-ruling> consid. 2.5 p. 73 s. et les références).
3. Le recourant ne s'en prend pas aux risques de fuite et de collusion, qui apparaissent au demeurant établis. Il conteste uniquement le caractère suffisant des charges pesant sur lui, en se plaignant à cet égard d'une appréciation arbitraire des faits.
3.1 Pour qu'une personne soit placée en détention préventive, il doit exister à son égard des charges suffisantes ou des indices sérieux de culpabilité, c'est-à-dire des raisons plausibles de la soupçonner d'avoir commis une infraction. Il n'appartient cependant pas au juge de la détention de procéder à une pesée complète des éléments à charge et à décharge et d'apprécier la crédibilité des personnes qui mettent en cause le prévenu. Il doit uniquement examiner s'il existe des indices sérieux de culpabilité justifiant une telle mesure. L'intensité des charges propres à motiver un maintien en détention préventive n'est pas la même aux divers stades de l'instruction pénale; si des soupçons, même encore peu précis, peuvent être suffisants dans les premiers temps de l'enquête, la perspective d'une condamnation doit apparaître vraisemblable après l'accomplissement des actes d'instruction envisageables (<ref-ruling> consid. 3.2 p. 126 s.; <ref-ruling> consid. 3c p. 146; GÉRARD PIQUEREZ, Traité de procédure pénale suisse, 2e éd., 2006, p. 540 et les références).
Conformément à l'art. 105 al. 1 LTF, le Tribunal fédéral statue en principe sur la base des faits établis par l'autorité précédente. L'art. 105 al. 2 LTF ne permet de s'en écarter que si les faits ont été établis de façon manifestement inexacte - notion qui correspond à celle d'arbitraire au sens de l'art. 9 Cst. (<ref-ruling> consid. 4.1.2 p. 62; <ref-ruling> consid. 2.4 p. 314; <ref-ruling> consid. 4.3 p. 62) - ou en violation du droit au sens de l'art. 95 LTF. Le recourant peut critiquer les constatations de fait aux mêmes conditions, si la correction du vice soulevé est susceptible d'influer sur le sort de la cause (art. 97 al. 1 LTF). En matière d'appréciation des preuves et d'établissement des faits, il y a arbitraire lorsque l'autorité n'a manifestement pas compris le sens et la portée d'un moyen de preuve, si elle ne prend pas en compte, sans raison sérieuse, un élément de preuve propre à modifier la décision ou lorsqu'elle tire des constatations insoutenables des éléments recueillis (<ref-ruling> consid. 4.2 p. 560; <ref-ruling> consid. 4.3 p. 62; <ref-ruling> consid. 2.1 p. 9). Il appartient au recourant de démontrer de manière précise que ces conditions sont réalisées, par une argumentation répondant aux exigences de motivation de l'art. 42 al. 2 LTF (cf. <ref-ruling> consid. 5.1 p. 356; <ref-ruling> consid. 1.4.3 p. 254 s.).
3.2 Le Tribunal cantonal a constaté l'existence de sérieux soupçons de culpabilité à l'égard du recourant. Il a notamment retenu que celui-ci était en contact avec B._, qui était en train d'organiser une livraison d'héroïne en Suisse en octobre 2011. A ce moment, le recourant avait rejoint le prénommé en Suisse depuis l'Albanie. D'autres protagonistes devaient les retrouver depuis Milan avec une ou plusieurs voitures "chargées". Lorsque ces derniers ont été interpellés, la police n'a pas découvert de drogue mais uniquement des fioles et une pipe à embouts, de sorte que les prévenus ont été relaxés. Un interlocuteur se trouvant en Albanie avait alors enjoint le recourant de quitter immédiatement la Suisse et de n'appeler personne. Par ailleurs, la police avait intercepté dans le canton de Glaris une voiture portant des plaques grecques et contenant 5 kg d'héroïne. Or, les personnes se trouvant dans ce véhicule y étaient montées dix minutes après la relaxation du recourant et de ses comparses et elles étaient en relation avec eux. Le téléphone portable du recourant contenait en outre un message concernant une voiture volée en Grèce et il avait reçu un sms lui indiquant précisément le lieu où se trouvait le véhicule contenant les 5 kg d'héroïne.
3.3 Contestant tout d'abord l'établissement des faits, le recourant reproche au Tribunal cantonal d'avoir retenu les éléments précités de manière très imprécise et par conséquent arbitraire. Il relève en substance que ses liens avec B._ n'ont rien de répréhensible, qu'il ne connaissait qu'une des personnes se trouvant dans la voiture "chargée" en provenance de Milan, que le terme "chargée" est au demeurant équivoque puisqu'aucune drogue n'a été découverte dans ce véhicule, que seules une fiole et une pipe à embouts y ont été trouvées et que leur "rôle" n'a pas été établi, qu'il n'a pas été davantage démontré que la voiture volée en Grèce dont il possédait le numéro de châssis était bien la voiture contenant les 5 kg d'héroïne, et enfin, que le sms retrouvé dans son téléphone portable ne contenait pas "l'adresse précise" du lieu où se trouvait la voiture contenant cette drogue.
Il n'est pas nécessaire d'examiner chacune des critiques exposées ci-dessus, car le recourant ne peut se plaindre d'une constatation arbitraire des faits que si la correction du vice soulevé est susceptible d'influer sur le sort de la cause (art. 97 al. 1 LTF). Une telle influence n'est pas donnée pour les faits précités pris isolément si d'autres faits apparaissent suffisants pour fonder l'existence de sérieux soupçons de culpabilité. Or, les liens du recourant avec B._, les contacts qu'ils ont eu au moment de la livraison de drogue et le sms indiquant l'emplacement du véhicule contenant 5 kg d'héroïne sont à eux seuls suffisants pour éveiller de tels soupçons à l'endroit du recourant.
Il n'est pas contesté que B._ était occupé à organiser une livraison d'héroïne en octobre 2011, que le recourant était en contact régulier avec celui-ci et qu'il l'a rejoint en Suisse au moment où cette livraison devait avoir lieu. Contrairement à ce que soutient le recourant, la nature exacte de leur relation n'est pas pertinente et il n'appartient pas au juge de la détention d'établir son rôle ou sa fonction dans le trafic de stupéfiants faisant l'objet de l'instruction. Quant au sms retrouvé dans le téléphone portable du recourant, il a été reçu le 13 octobre 2011 et il a la teneur suivante: "Ziegelbrücke, 766503116". Dès lors que les occupants de la voiture contenant les 5 kg d'héroïne ont été arrêtés le 16 octobre 2011, au moment où ils regagnaient ce véhicule à Ziegelbrücke, dans le canton de Glaris, le message précité est suffisamment clair pour éveiller de sérieux soupçons quant à l'implication du recourant. Un rapport de police mentionne certes que le véhicule était garé à "8867 Niederurnen/GL, Ziegelbrückstr.", mais on comprend qu'il vise bien la localité de Ziegelbrücke, sur le territoire de l'ancienne commune de Niederurnen. Le rapport de la police glaronaise mentionne d'ailleurs sans équivoque que les occupants du véhicule ont été interpellés à "Ziegelbrücke/GL", sur le parking situé devant le restaurant "Ziegelbrücke". Dans ces conditions, les considérations du recourant sur d'autres localités comportant des rues appelées Ziegelbrückstrasse sont dénuées de pertinence; elles relèveraient tout au plus d'une invraisemblable coïncidence mais elles ne démontrent pas un quelconque arbitraire dans l'établissement des faits. Il est au demeurant évident que le message en cause fonde de sérieux soupçons à l'égard du recourant et que cet élément, associé notamment aux liens de l'intéressé avec B._ et à sa présence en Suisse au moment de la transaction litigieuse, permet de retenir que les charges sont suffisantes.
4. Il s'ensuit que le recours doit être rejeté. Dès lors que le recourant est dans le besoin et que l'on peut admettre que ses conclusions n'étaient pas d'emblée vouées à l'échec, l'assistance judiciaire doit lui être accordée (art. 64 al. 1 LTF). Il y a lieu de désigner Me Ludovic Tirelli en qualité d'avocat d'office et de fixer d'office ses honoraires, qui seront supportés par la caisse du Tribunal fédéral (art. 64 al. 2 LTF). Le recourant est en outre dispensé des frais judiciaires (art. 64 al. 1 LTF).

Par ces motifs, le Tribunal fédéral prononce:
1. Le recours est rejeté.
2. La demande d'assistance judiciaire est admise. Me Ludovic Tirelli est désigné comme défenseur d'office du recourant et ses honoraires, supportés par la caisse du Tribunal fédéral, sont fixés à 1'500 francs.
3. Il n'est pas perçu de frais judiciaires.
4. Le présent arrêt est communiqué au mandataire du recourant, au Ministère public de l'arrondissement de Lausanne, par le Ministère public central du canton de Vaud, et au Tribunal cantonal du canton de Vaud, Chambre des recours pénale.
Lausanne, le 23 mars 2012
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président: Fonjallaz
Le Greffier: Rittener