Это исконно русское выражение, второй компонент которого — заимствование из старославянского языка, где глагол «зазрети» означал «осуждать» и «укорять» (а глагол «зазорный» означал «позорный» или «осуждаемый»).

В целом оборот — это производное от устаревшего выражения «совесть зазрит» или «совесть зазрила». Другие производные — «совесть заговорила» или «совесть замучила» (загрызла). То есть выражение «угрызения совести» происходит отсюда же.