1- Tout d'abord il faut nuancer la « grossièreté » de putain. D'où je viens (je suis méridional) ce n'est pas grossier et d'emploi relativement courant. Par exemple, un enseignant qui entend le mot dans une cour de récréation à Toulouse ou à Marseille n'interviendra pas, je doute qu'il en soit de même à Lille ou à Paris, où le petit écolier se fera réprimander !
Le mot putain vient du latin putidus : « pourri, qui pue, fétide ». Put, pute, au sens propre « puant », a pris dès le 11e siècle le sens figuré de « sale, mauvais, vil, méchant » s'appliquant spécialement à une femme lascive, débauchée.
La langue populaire en a fait une interjection pour marquer l'admiration, l'étonnement (1931). (Dictionnaire Historique de la Langue Française)
2- Purée comme interjection existe indépendamment de putain. Un des sens figuré de purée est pénurie d'argent panade et, par « métonymie, purée s'applique aussi à une personne dans l'embarras et est employé pour qualifier ce qui est signe de gêne ou de misère. Il est employé familièrement en interjection depuis 1895. » (Dictionnaire Historique de la Langue Française)
À noter que le mot purée au sens propre et le mot purin ont une même origine (purer -> purifer). La purée (au sens propre) au départ était ce qui a été criblé, purifié. Le purin est ce qu'il reste de non comestible.
En Français d'Algérie d'Afrique du nord le mot purée (« purée d'ta mère ! » ) a une valeur voisine de putain et son emploi en France avec ce sens s'est répandu dans les années 60 avec le retour des Français d'Algérie en France.
3- L'emploi interjectif de punaise est attesté pour la première fois en 1947 et est d'origine typiquement provençale. Le mot punaise vient d'un mot latin qui veut dire « qui pue » .
En conclusion le fil conducteur de ces trois mots semble être les mauvaises odeurs.
Putain has long lost its strength as a swearword. In the south of France it is widely used and not considered rude. As an example I'd say a teacher hearing the kids say it in the playground in the south of France won't take notice, it might be different in Lille or Paris.
Putain comes from the Latin putidus that means "rotten, stinking". In the 11th century, put, pute, meaning "stinking" in Old French took the meaning of "dirty, vile" and was applied to debauched women. Around the middle of the 20th century the word had evolved to become an interjection depicting wonder or admiration. (source Dictionnaire historique de la langue française)
2- Purée has been used as a interjection since the middle of the 19th century. It is to be noted that it has the same etymology as purin (English "manure"), (from purer→ to purify). In the literal sense the purée is the edible part left after purification and purin the non edible part.
In Algerian French purée (as in purée d'ta mère) is very close to putain, it stated being used in France around the 1960s under the influence of the repatriates from Algeria.
3- Punaise originates in Provence and appeared as an interjection in the middle of the 20th century. It comes from puteo (puer).