The 30-year-old Shakhtar Donetsk stalwart curled in a 41st minute shot to follow an earlier header by Mario Mandzukic. Nikica Jelavic then came off the bench to add a third goal before Mladen Petric completed the scoring on his club's home ground.
Ivica Olic missed the chance to give Croatia an early lead when he headed wide from Niko Kranjcar's cross. But in an open match it was South Korea who then had an opportunity to go 1-0 up, only for Vedran Corlua to clear Ki Sung-Yeung's goalbound header off the line following a cross by Lee Chung-Yong.
Olic had another chance when Shin Hyung-Min gave the ball away inside the South Korean box to Mandzukic, who duly laid it off into the path of Olic only for his shot to be deflected wide. Instead it was Mandzukic himself who broke the deadlock when he headed in Ivan Rakitic's free-kick in the 34th minute.
Goalkeeper Stipe Pletikosa, also winning his 100th cap for Croatia, then tipped Ji Dong-Won's shot over the crossbar before Srna doubled his side's lead shortly before half-time with a fine solo goal from the edge of the area.
Croatia put the result beyond doubt in the 57th minute when substitute Jelavic made no mistake with his first chance of the match following a through ball from Luka Modric. Lee Dong-Gook came close to grabbing a goal for South Korea but struck a shot just wide of Pletikosa's left post.
Petric completed the goal-scoring in stylish fashion with five minutes left when he chipped South Korea goalkeeper Jung Sung-Ryong.