With the last-four tie deadlocked at 0-0 until the last seconds of injury time, Egypt skipper Amr Al-Sulaya headed a Naim Sliti free-kick into his own net to decide a tight affair.
Hannibal was withdrawn with nine minutes of normal time left but won the official Man-of-the-Match award for an impressive display in midfield.
Playing in such a setting will provide more valuable experience for the 18-year-old, who is likely to start in the final at the weekend.
"Crazy," he told Al Kass Sports Channel after the game. "I would like to thank the fans as the atmosphere was crazy.