A palavra sogro deriva «do lat[im] socru-», e é «pai do marido, em relação à esposa» ou «pai da esposa, em relação ao marido».
A palavra nora, como «esposa do filho, relativamente aos pais deste», vem «do lat[im] vulg[ar] nura-, por nuru-»; o termo nora, como «engenho de tirar água», deriva «do ár[abe] anora, por anna'urâ».
O termo genro, que quer dizer «marido em relação aos pais da esposa», deriva «do lat[im] genĕru-, por genĕre-, "genro"».
Quanto a cunhado, vem «do lat[im] cognātu-, "aparentado"», e é «irmão de um dos cônjuges em relação ao outro» ou «marido da irmã de alguém». Além disso, cunhado ainda é, em determinados contextos, o particípio passado do verbo cunhar.
O problema, que o leva a detestar estas palavras, pode ter que ver com um preconceito que atinge muitas pessoas, nem sei se a maioria, em relação aos sogros, noras, etc. Conhecer a origem dos termos não vai resolver a questão.
[Fonte: Dicionário da Língua Portuguesa 2008, da Porto Editora]