A crossup is an attack that hits the opponent on the opposite side, forcing the opponent to change the direction they are blocking from left to right (or vice versa).
Most crossups require specific setups to perform, such as jumping over the opponent. It is up to the defender to recognize when the attacker is attempting a crossup and change their block direction accordingly.
Some crossups are more difficult to block because the attacker can do a setup that will lead to either a crossup or a same side attack. These are much more difficult to defend against since even when the opponent recognizes the setup they will still need to guess which direction to block, or rely on very minute timing differences and switch blocking one direction then the other to try and guard switch the two possible attacks.
A crossunder is just like a crossup, except instead of jumping over or going through the opponent, you go under them when they are airborne. Functionally there's not much difference between a crossup and a crossunder, though setups for these two scenarios are obviously different.
Crossup Protection is a system mechanic that allows crossup attacks to be blocked by holding either backward or forwards. Crossup Protection usually lasts for a few frames after players change sides. This serves as a slight built-in defense against ambiguous crossups.
Depending on the game the amount of crossup protection can be short or a lot on a per-move basis. For example in Dragon Ball FighterZ, Assist attacks have lots of crossup protection.