Question: have sung or have sang?
Answer: sang / sung. In modern English the normal past tense form of “sing” is “sang.” It's not “she sung the anthem” but “she sang the anthem.” “Sung” is the past participle, used only after a helping verb: “She has sung the anthem.