The incident occurred on a train in the 1200-block of West Loyola Avenue at about 10:58 p.m.
Police said an unknown suspect approached the victim and attacked him.
The man was injured with cuts to the cheek and nose and was transported to St. Francis Hospital in good condition, police said.
No one is in custody and Area Three detectives are investigating.
INTERACTIVE SAFETY TRACKER Track crime and safety in your neighborhood