Celtic made it into the last 16 of the Champions League, despite losing out to Filippo Inzaghi's record-breaking goal.
Inzaghi was on target with a milestone goal in his career
The AC Milan man fired in a close-range shot on 70 minutes to become the leading scorer in Uefa competitions.
However, Benfica's victory at Shakhtar Donetsk ensured Gordon Strachan's side progress to the knockout phase for the second year running.
Inzaghi had earlier missed a glaring chance, while Kaka was denied a late goal by a great Evander Sno block.
With the reigning European champions already guaranteed qualification and Celtic needing a point or Shakhtar to slip up, the game was very subdued for the first hour.
Playing in a half-full San Siro, the home side did not look particularly interested in breaking sweat, while Celtic also adopted a meek approach, not wanting to risk stinging their opponents into life.
However, the pocket of travelling supporters were soon celebrating when news of Benfica's two early goals reached the stadium.
The first shot on target at the San Siro, meanwhile, came after 38 minutes but goalkeeper Zeljiko Kalac had no trouble gathering Jiri Jarosik's long-range effort.
Milan threatened to break the deadlock shortly before half-time with Giuseppe Favalli's penetrating pass serving Clarence Seedorf inside the penalty area, only for the Dutch midfielder to blaze his angled shot high over the crossbar.
There was a sour note for Celtic when Scott Brown's booking for a needless niggle at Seedorf earned the midfielder a ban for the next match in the tournament.
Brown's evening got worse when he found himself in space behind the dozing home defence and slashed his shot horribly wide of the target.
On the hour, there was a sudden increase in pace and Gary Caldwell did well to block a Seedorf drive before Inzaghi's incredible miss.
Favalli dinked a cross right on to the head of his team-mate inside the six-yard box but the veteran striker skewed his header straight into the arms of a surprised Artur Boruc, who was stranded by his near post.
It was a miss that would have embarrassed any Sunday pub league player.
But a few minutes later, the international star was celebrating surpassing Gerd Muller as the top scorer in Uefa competitions, taking his tally to 63.
Cafu raced into the penalty box and cut the ball back for Inzaghi to slip a low shot home from five yards.
Boruc then had to get down smartly to keep out a rasping shot from substitute Cristian Brocchi, while Kalac had his palms warmed by Brown's powerful strike.
Kaka broke clear in the final minute and rounded Boruc but Sno got back to make a great saving tackle.
AC Milan: Kalac, Cafu, Bonera, Simic (Kaladze 29), Favalli, Gattuso, Pirlo (Brocchi 74), Ambrosini, Kaka, Seedorf (Gourcuff 69), Inzaghi.
Subs Not Used: Fiori, Gilardino, Oddo, Aubameyang.
Goals: Inzaghi 70.
Celtic: Boruc, Caldwell, Pressley, McManus, O'Dea, Jarosik (Zurawski 78), Donati (Sno 71), Scott Brown, Hartley, McGeady, McDonald (Vennegoor of Hesselink 65).
Subs Not Used: Mark Brown, Balde, Killen, Caddis.
Booked: Scott Brown.
Ref: Thomas Henning (Norway).