Allrounder Shakib Al Hassan grabbed 3-17 and produced a 10-ball cameo of 16 as Kolkata Knight Riders scored a five-wicket win over Rajasthan Royals in the Indian Premier League Friday. The Bangladesh left-hander helped restrict the home side to 131-5 and then struck a crucial four and a six as Kolkata scored 137-5 in 19.2 overs. Ryan ten Doeschate smashed a six to finish off a game which went neck and neck for most of the time. Opener Jacques Kallis (31) and No. 3 batsman Manvinder Bisla (29) put the chase on a track aiding slow bowling and India batsman Manoj Tiwary (24) furthered the cause for the Gautam Gambhir-led side. Rajasthan, which had prevailed by 22 runs over Kolkata in its home game earlier in the league, got off to a sound start after electing to bat as captain Rahul Dravid (28) and Ajinkya Rahane (19) added 45 runs for the first wicket. Scores: Rajasthan Royals 131-5 (Owais Shah 31, Rahul Dravid 28; Shakib Al Hasan 3-17). Kolkata Knight Riders 137-5 in 19.2 overs (Jacques Kallis 31, Manvinder Bisla 29).