The visitors defended manfully in the first-half before Castro took advantage of Osama Hawsawi’s defensive error to net the only goal of the game in the 54th minute and set up a clash against Seongnam Ilhwa Chunma in Tokyo on November 13 with a 2-0 aggregate victory.
Lee Young-pyo was sent-off for a petulant kick at Mohammad Reza Khalatbari with 20 minutes to go as Al Hilal lost at home for the first time in this season’s AFC Champions League as the team with the competition’s meanest defence managing to blank one of the most prolific attacking sides over two legs.
Al Hilal threatened first but Thiago Neves’ low shot from 25 yards after three minutes was dealt with by keeper Shahab Gordan.
The game settled into a pattern that saw the hosts enjoy the majority of possession but unable to break down a resilient Zob Ahan side.
The Iranians almost grabbed a crucial away goal in the 20th minute when Ghasem Hadadifar’s free-kick snuck through a crowd of players at the near post but keeper Hasan Al Otaibi did well to push the ball away low down to his left.
A swift Zob Ahan counter-attack presented Khalatbari with an opportunity five minutes later but his finish lacked power after the striker had cut into the box from the left.
Ahmed Al Fraidi then wasted Al Hilal’s best chance of the half as Neves drilled a low cross into the box that Zob Ahan only cleared as far as the midfielder but he blasted disappointingly wide from inside the box.
Mohammed Al Shalhoub’s trickery ended with the midfielder flashing a ball across the six-yard box that no-one could get on the end of and Majed Al Marshadi directed a free header at the near post wide from Neves’ corner as Al Hilal were unable to breach an increasingly desperate Zob Ahan defence.
Mirel Radoi’s long-range effort had Gordan worried just after the restart before Lee clipped a cross to the far post but Yasser Al Qahtani could not keep his header down.
Khalatbari stung Al Otaibi’s hands with a fizzing snap-shot from distance before Al Hilal almost reduced the deficit in the 51st minute but Christian Wilhemsson saw his shot following a scramble in the box somehow deflected over the bar.
Three minutes later, Zob Ahan made the crucial breakthrough thanks to poor defending from the hosts.
Khalatbari’s cross posed little danger but Hawsawi’s clearance looped straight up into the air. Castro pounced, bringing the ball down before swivelling and firing low past Al Otaibi to silence the boisterous home crowd.
Al Shalhoub bent a 25-yard free-kick just over the bar and Radoi drew a flying save out of Gordan with another strike from distance before Al Hilal’s task was made even more daunting when Lee was sent-off with 20 minutes to go for kicking Khalatbari, for which the Korean defender can have no complaints.
Substitute Waleed Al Gizani almost made an immediate impact but his diving header from close range was straight at Gordan before his weak flick was easily claimed by the Zob Ahan keeper when the forward had time and space to bring the ball down near the six-yard box.
Gordan held Radoi’s late free-kick as Zob Ahan hung on to claim yet another big scalp.