Gunmen opened fire on passenger vehicles carrying Shiite Muslim civilians in restive northwest Pakistan on Thursday, killing at least 28 people, including six women, and wounding 30 others in one of the deadliest such attacks in recent years in the region, police said.