нападение = attack
наступление = offensive (war), onset (eg onset/ beginnig of winter)

нападение is more specific to attacking whereas наступление is limited in this respect but more general in...