Nie będąc programistą ani ekspertem komputerowym, skąd mogę wiedzieć, czy konkretny program lub ogólnie jakiekolwiek oprogramowanie nie ma ukrytych niepożądanych funkcji zagrażających prywatności i bezpieczeństwu?
Nie będąc programistą ani ekspertem komputerowym, skąd mogę wiedzieć, czy konkretny program lub ogólnie jakiekolwiek oprogramowanie nie ma ukrytych niepożądanych funkcji zagrażających prywatności i bezpieczeństwu?
Możesz wiedzieć, czy niektóre programy robią tylko to, co ogłaszają, w ten sam sposób, w jaki możesz wiedzieć, czy jedzenie podawane w restauracjach jest zatrute, czy nie. Mówiąc prościej, nie możesz, ale społeczeństwo wymyśliło różne sposoby radzenia sobie z problemem:
Wszystko to można bezpośrednio przenieść do świata oprogramowania. Ekstremalne metody określania jakości oprogramowania i przestrzegania jego opublikowanego zachowania obejmują bardzo drogie i nudne rzeczy, takie jak Common Criteria, które sprowadzają się do wiedzy, kto stworzył program i za pomocą jakich narzędzi.
Alternatywna odpowiedź: każde oprogramowanie ma błędy, więc jest 100% gwarancja, że nie robi dokładnie to, co powinno. (Nawiasem mówiąc, to stwierdzenie obejmuje oprogramowanie działające na kilkunastu małych komputerach wbudowanych w Twój samochód).
Nie możesz, przynajmniej nie ze stuprocentową dokładnością. Mówiąc jako programista, bardzo łatwo jest kodować cokolwiek chcę i niekoniecznie jest to tylko to, co jest reklamowane.
Jednak nie każda nieoczekiwana aktywność jest złośliwa. Zakładam, że bardziej martwisz się złośliwą aktywnością. Nawet tego nie da się w 100% wykryć przez cały czas, ale jest nadzieja.
Możesz użyć oprogramowania, które monitoruje takie rzeczy, jak ruch sieciowy, aktywność plików itp., Aby znaleźć wskazówki, że oprogramowanie zachowuje się w nieoczekiwany sposób. Na przykład (i wiem, że jest to tylko podstawowe narzędzie) możesz użyć Fiddlera, aby sprawdzić, czy dana aplikacja łączy się z Internetem przez http (s). (Tak, ale wiem, że istnieją lepsze narzędzia. Fiddler jest pierwszym, który przychodzi na myśl). W systemie Windows możesz użyć Monitora procesów, aby uzyskać jeszcze lepszy wgląd. Podobne narzędzia istnieją na innych platformach.
Dostępnych jest również kilka innych usług, które wykonają analizę za Ciebie.
Szczególnie, gdy oprogramowanie staje się większe i bardziej skomplikowane, nawet eksperci nie mogą * na to odpowiedzieć. W tym zakresie prywatność i bezpieczeństwo aplikacji najlepiej zapewnić przy użyciu metod piaskownicy lub Obowiązkowej kontroli dostępu. Idea kryjąca się za tymi metodami polega na tym, że oprogramowanie jest uruchamiane w systemie, który kontroluje to, co może zrobić, i pozwalasz mu robić tylko to, czego oczekujesz. Wykonane poprawnie, możesz ograniczyć możliwe połączenia i otrzymać powiadomienie, jeśli program kiedykolwiek spróbuje uzyskać dostęp do plików, których się nie spodziewałeś. Można zastosować bardzo zaawansowane metody do monitorowania pamięci lub odszyfrowywania ruchu sieciowego przez usługę proxy.
Krótko mówiąc, jeśli nie możesz zrozumieć wszystkiego, co robi, odpowiedzią jest ograniczenie wszystkiego, co może zrobić z czymś, co może zrobić działa w (systemie operacyjnym).
W swoim szeroko znanym wykładzie ACM Turing Award „Reflections on Trusting Trust” (teraz prawie dokładnie 30 lat temu!) Ken Thompson powiedział: „Nie możesz ufać kodowi, którego sam nie stworzyłeś”. W praktyce oprogramowanie komercyjne nie jest wyjątkiem od innych produktów komercyjnych, ponieważ te pochodzące od producentów cieszących się dobrą marką na rynku mają zwykle większe prawdopodobieństwo, że będą lepsze. Jednak nie ma na to absolutnej gwarancji. Dziesiątki lat temu dostałem dyskietki od znanego producenta, który miał wirusa. W takim przypadku osobiście uważam, że nie było to złośliwe działanie nikogo w firmie, ale niektóre komputery firmy zostały zainfekowane wirusem z zewnątrz. Jednak ewidentnie nie jest możliwe, aby w 100% wykluczyć możliwość wprowadzenia backdoorów do oprogramowania przez osoby z wewnątrz firmy, niezależnie od tego, czy jest to znane jej prezesowi, czy nie. Backdoory mogą być dla IMHO niezwykle krytycznym problemem, teraz, gdy na świecie zbliżają się wojny cybernetyczne. Tajna agencja rządowa mogłaby mianowicie w jakiś sposób zarządzać (za pośrednictwem pieniędzy, przymusu lub nawet złośliwego oprogramowania), aby takie backdoory zostały wszczepione do określonego oprogramowania, które normalnie służy do zapewnienia bezpieczeństwa komunikacji (np. Tych związanych z podpisami cyfrowymi) i które jest sprzedawane do i wykorzystywane przez pewne nieprzyjazne lub potencjalnie nieprzyjazne zagraniczne narody oraz natychmiast lub w odpowiednich późniejszych punktach czasowych („bomby zegarowe” itp.) wykorzystują tylne drzwi, aby osiągnąć swoje cele polegające na zakłóceniu infrastruktury krytycznej krajów docelowych itp. itp. Stuxnet, Flame i Gauss to kilka nazw, które powinny dać pewne wskazówki co do możliwości potencjalnych malfaiteurs.
Niestety nie możesz ...
Ponieważ dobry programista mógłby zostać nazwany przez swoich użytkowników wizardem , dobry trojan całkowicie fałszywe normalne środowisko wyciszające ofiarę.
Niektóre wirusy / trojany oczyszczają system ofiary, aby
Więc nie możesz !! W razie wątpliwości skonsultuj się !!!!
Ostatecznie wszystko sprowadza się do zaufania. Czy ufasz reputacji firmy wydającej oprogramowanie? Jeśli jest to oprogramowanie typu open source, czy jest używane przez wystarczającą liczbę programistów, aby podnosili flagi, gdyby wystąpiły problemy. W liczbach jest pewna siła, ponieważ w przypadku powszechnie używanego produktu istnieje większe prawdopodobieństwo przeprowadzenia szeroko zakrojonych badań, czy jest on godny zaufania. O ile nie jesteś bardzo paranoikiem, najlepszym rozwiązaniem jest przyjrzenie się temu, co społeczność ma do powiedzenia na temat określonego oprogramowania, ale zawsze będą występować błędy i zawsze będą błędy.
Jak podkreślali inni, nie ma gwarantowanego sposobu, aby się dowiedzieć. W większości przypadków trzeba ufać uczciwości i reputacji dostawcy. Przestrzeganie bezpiecznych praktyk, takich jak instalowanie oprogramowania wyłącznie ze źródeł, którym ufasz, może pomóc, ale tak jak w prawdziwym życiu, czasami ufamy niewłaściwym osobom.
W końcu myślę, że powinniśmy przyjąć pewien poziom paranoi. Jeśli zainstalujesz aplikację na telefonie, nie akceptuj ani nie mów tak, gdy system operacyjny telefonu informuje, że telefon chce uzyskać dostęp do Twoich prywatnych informacji, Twojej lokalizacji itp. Zadaj sobie pytanie, dlaczego potrzebuje tego dostępu. Jeśli uważasz, że dostęp, o który prosi aplikacja, jest uzasadniony na podstawie tego, czego od niej oczekujesz, powiedz tak, może OK. Z drugiej strony, jeśli wydaje się, że domaga się dostępu do informacji lub usług, które są daleko poza tym, czego powinien potrzebować lub którymi być zainteresowany, bądź trochę podejrzliwy i uważnie uważaj, zanim powiesz tak.