Сложно будет объяснить, но я попытаюсь.
Потому что металлы взаимодействуют с данными веществами. Это взаимодействие и называют коррозией.
H2S и HCl - это кислоты. При взаимодействии металла (расположенного левее водорода в таблице/ряду активностей метеллов) с ними, происходит выделение водорода.
Вот, к примеру, кислотная коррозия: Mg+2HCl → MgCl2+H2.
SO2, NO, NO2 - это оксиды. При взаимодействии любого вещества с ними, происходит окисление.
Вот, к примеру, кислородная коррозия: 2Fe+3SO2 → FeSO3+FeS2O3
И да, при взаимодействии кислот и оксидов, выделяется вода. А как мы все с детства знаем, железо+вода = железо с ржавчиной. Ржавление = коррозия.
Надеюсь, мне удалось объяснить. И надеюсь, что всё правильно.