The only free and comprehensive online etymological dictionary of the Spanish language
carajo m. (Noun) "penis;" "crow's nest"
Unknown origin. A link to other Romance words for penis is plausible but shakey in which case we can posit a Vulgar Latin word *caraculus "little stick," which would have been a borrowing from Greek χάραξ (kháraks) "stick" with a diminutive suffix. χάραξ is of unknown origin. Possibly borrowed from a non-Indo-European language.
Asturian (dialects) carayu, Portuguese caralho, Galician carallo, Catalan carall