любой код(программа) может собирать ту или иную информацию независимо от ОС, но я так понимаю вы имеете в виду чувствительно-важную информацию без согласия на то, то есть скрытно. Если рассматривать использования программ с закрытым и открытым исходным кодом, то второе будет иметь явное преимущество в плане доверия и некоторых гарантий безопасности.
С закрытым кодом всё просто - вы либо верите что в черном ящике под названием программа нету закладок либо не верите, некоторой гарантией конечно может выступать известный бренд либо лицо которое эту программу производит, и если у вас закрались подозрения то вам нужно либо смириться либо искать альтернативу, другого варианта нету.
С открытым кодом интереснее - понятное дело что даже если код открыт, то при достаточно большом его объёме трудно найти лазейку, но аудит кода всё же возможен хоть и трудозатратен и не гарантирует 100% чистоты, но ведь постепенно развиваются и автоматизированные средства проверки кода что при первом варианте в принципе невозможно. Далее, сейчас для открытого кода популярно также держать и доступный git репозиторий что позволяет отслеживать историю изменений, то есть при желании можно получить информацию о том кто и когда внёс изменения, что также мотивирует разработчиков не косячить.
В общем, если брать боле менее популярные программные продукты то у закрытого кода есть тока один сдерживающий фактор - репутация, пошатнуть которую к сожалению довольно сложно без прямых доказательств, а для косвенных нужно приложить довольно много времени и сил что по времени порой становится просто неактуально. У открытого кода в противовесе также идёт репутация, но потерять её довольно легко при открытом коде и истории изменений, поэтому отбор добропорядочных здесь идёт намного жестче.