Malik launched Ravindra Jadeja back over his head for six to seal the win in Bangalore with two balls to spare.
The veteran finished on 57 from 50 balls after a 106-run stand with skipper Mohammad Hafeez (61) proved decisive in pursuit of India's 133 for nine.
India debutant Bhuvnshwar Kumar (three for nine) initially crashed through the tourists' top order to leave them three for 12.
But from there Hafeez and Malik took charge - albeit with both surviving chances - to make India pay after they had earlier lost nine for 47 to lose their way with the bat.
Gautam Gambhir top-scored for the hosts with 43 at the top of the order.
Pakistan were playing their first game in a bi-lateral tour of India for five years, with three one-day internationals set to follow Friday's second and final Twenty20 in Ahmedabad.