Based on their kanjis, they all appear to have the meaning of attack, and I think that is what makes them similar. How does one distinguish their uses? I would also appreciate a (brief) explanation of how the component kanjis of 襲撃 contribute to the meaning of this 熟語.
襲う and 襲撃(する) are a wago-kango pair (wago-and-kango). They are often interchangeable, but 襲撃 sounds more formal, and its usage is limited to violent attacks by brute force. 襲う has a little broader usages, and we can say 彼を不幸が襲う, (サッカー)選手がゴールを襲う and ウイルスが町を襲う, too.
撃つ is just "to shoot someone (with a gun, cannon, etc)" or "to shoot (a gun, etc)". There is also 討つ, which is an uncommon literary word meaning "to hit (and kill, often under the name of justice)".