Most moves in this game are punishable on shield, which means that if it hits your shield, there's enough lag for you to punish it.
Pay attention to when your opponent attacks as opposed to grabbing (or, I guess, not attacking) and shield only when you expect them to attack. Then punish accordingly. Do this for a bit and you'll learn what you can punish out of shield (most things) and what you can't (some things)
Some of Ness' quicker options OoS (Out of Shield) are his shieldgrab, and jumping and immediately doing a neutral air.
Here's an example of some things that might seem like really safe attacks but are actually punishable out of shield
- MK dsmash (first hit). I can't remember whether this is -18 or -25 (frame disadvantage) on shield, but in either case you have enough time to drop your shield (7 frames) and do a running grab (8 frames) for a 15 frame total, meaning you have at least a 3 frame leniency window. If you're close enough you can also just do something like nair OoS (this should be 8 frames I think), fair OoS, ftilt OoS, etc.
- Marth fsmash. Dunno the frame disadvantage on this one but I'm pretty sure it's much less safe than MK's dsmash.
- MK dash attack. This I'm pretty sure is also less safe than MK dsmash, but the tricky thing about punishing it is that it (usually, depends on how the MK spaces it) puts MK behind you, so a shieldgrab won't work. You might want to drop shield, turn around and dash attack/dash grab.
- Snake utilt, all of Falco's smashes, Olimar's usmash, ICs smashes, Marth's smashes and tilts, MK's ftilt3, Pikachu's smashes, and tons of other moves that might seem safe on shield aren't actually safe. Can't really go through them all.
Here's a few examples of moves that are ACTUALLY safe on shield
- MK's fsmash
- ZSS' dsmash and sideB
- Ness, Marth & MK's fairs on shield, if spaced and timed properly
- Marth's nair on shield
- Falco's landing lasers, if timed properly
- Every zair if spaced properly
- Fox's landing bair