The most consistent term in the historical record appears to be 忍び(shinobi, “sneaking, hiding”), the 連用形(ren'yōkei, “continuative or stem form”) of verb 忍ぶ(shinobu, “to endure, to bear; to hide, to conceal oneself; to sneak into or out of a place”). This in turn was extended into 忍びの者(shinobi no mono, “sneaking person, person of sneaking”).[1][2]

(Can this(+) etymology be sourced?) The term ninja may have arisen as a shift in reading of the kun'yomi phrase 忍びの者(shinobi no mono), omitting the hiragana and applying the on'yomi to the kanji alone to create a kanji-compound term. This ninja reading became more common in Japanese after World War Two due to a number of popular manga series.