Dlaczego piractwo wydaje się takie łatwe?
Wydaje się trochę trudno uwierzyć, że przy wszystkich naszych postępach technologicznych i miliardach dolarów wydanych na opracowanie najbardziej niewiarygodnego i oszałamiającego oprogramowania, nadal nie mamy innych sposobów ochrony przed piractwem niż „numer seryjny / klucz aktywacyjny” „. Jestem pewien, że mnóstwo pieniędzy, może nawet miliardów, zostało przeznaczonych na stworzenie systemu Windows 7 lub pakietu Office, a nawet Snow Leopard, ale mogę je uzyskać za darmo w mniej niż 20 minut. To samo dotyczy wszystkich produktów Adobe, które są prawdopodobnie najłatwiejsze.
Czy może istnieć niezawodna i odporna na hakowanie metoda ochrony oprogramowania przed piractwem? Jeśli nie realistycznie, to teoretycznie możliwe? Czy bez względu na to, jakie mechanizmy stosują te firmy, czy hakerzy zawsze potrafią to obejść?
Odpowiedzi:
Kod to dane. Gdy kod można uruchomić, kopia tych danych jest kodem niechronionym. Niechroniony kod można skopiować.
Zaostrzenie kodu za pomocą kontroli antypirackich czyni go nieco trudniejszym, ale hakerzy po prostu użyją debugera i go usuną. Wstawianie no-ops zamiast wywoływania „check_license” jest dość łatwe.
Programy, które sprzedaję u mojego obecnego pracodawcy (narzędzia lotnicze) nigdy nie dzwonią do domu . Klienci nie tolerowaliby dzwonienia do domu w celu „aktywacji” przy każdym uruchomieniu programu.
W najgorszym przypadku program działa na maszynie wirtualnej bez sieci, gdzie zawsze jest to stała data.
Być może raz został legalnie zainstalowany, ale żaden wysiłek deweloperów nie może sprawić, że dowie się, że tak nie było.
Sprzętowe kontrole DRM będą miały fałszywe alarmy dotyczące niektórych rodzajów treści.
Najprostszy przypadek: rozdzielczość. Nagrywam wideo Quad HD z mojego zestawu kamer (siedzącego teraz na biurku). Windows DRM dostaje się między mną a danymi, ponieważ jest to QuadHD.
Analiza sygnatur: sprzętowy DRM jest niewielki i ma względnie stały zestaw danych. Musi także korzystać z tej samej magistrali danych co procesor, więc spowalnia to sporadycznie. To niszczy wszystko w czasie rzeczywistym.
Zatem, aby sprzętowy DRM był mądrzejszy podczas fałszywie dodatniego, komputer w końcu zostanie przerwany, aby przejść i sprawdzić za pomocą usługi internetowej. Teraz mój procesor danych naukowych albo nie działa, ponieważ nie jest podłączony do sieci, albo przestaje przesyłać strumieniowo dane.
źródło
Ostatecznie dużym problemem jest to, że większość oprogramowania wymaga przekazania zamka i klucza potencjalnemu napastnikowi i ma nadzieję, że nie wymyślą, jak je złożyć.
Tylko bezpieczna metoda zabezpieczania oprogramowania jest nie dając go do użytkownika (np SaaS). Na przykład zauważysz, że nie możesz „pirować” Dokumentów Google. Ostatecznie, jeśli próbujesz coś zabezpieczyć, musisz założyć, że mają pełną wiedzę na temat wszystkiego, co im dajesz. Nie możesz ufać klientowi. Dotyczy to zarówno zapobiegania piractwu, jak i ochrony systemu przed zagrożeniem.
Ponieważ istniejące modele dystrybucji oprogramowania opierają się na dostarczeniu klientowi całego pakietu, a następnie próbie zabezpieczenia go sprzętem potencjalnej kontroli atakującego , model dystrybucji jest niezgodny z jakąkolwiek koncepcją oprogramowania „niepiracyjnego”.
źródło
Podstawowym problemem IMHO jest to, że większość lub wszystkie „niezawodne i hack proof” metody * ochrony oprogramowania przed piractwem denerwują, a nawet wypędzają niewinnych i legalnych użytkowników.
Na przykład sprawdzenie, czy aplikacja jest zainstalowana tylko na jednym komputerze, może utrudnić użytkownikowi zmianę sprzętu na swoim komputerze. Klucze sprzętowe mogą oznaczać, że nie możesz korzystać z tej samej aplikacji na komputerze w pracy i w domu. Nie wspominając już o numerach kierunkowych DVD, CSS, Sony rootkit i in., Które nie są ściśle związane z ochroną oprogramowania, ale ściśle ze sobą powiązane.
* które, jak zauważył @FrustratedWithFormsDesigner, nigdy nie są idealne w praktyce; nie ma 100% bezpieczeństwa, możesz tylko spróbować uczynić go wystarczająco kosztownym, aby intruz przełamał obronę, aby nie było ich „zbyt wielu”. I wierzę, że jest to spowodowane fundamentalną naturą oprogramowania i informacji cyfrowych, że gdy komuś uda się przełamać konkretną obronę, przerwa może prawie zawsze zostać trywialnie odtworzona przez miliony.
źródło
Bardziej opłaca się sprzedawać oprogramowanie łatwe do piractwa.
Podejmując decyzję o środkach antypirackich, firmy przeprowadzają analizę kosztów i korzyści. W przypadku dowolnego zestawu środków, jeśli korzyści nie przewyższają kosztów, firma tego nie robi.
Koszty obejmują czas i wysiłek na wdrożenie, udokumentowanie, wsparcie i utrzymanie środków, a być może straty sprzedaży, jeśli są naprawdę denerwujące. Ogólnie rzecz biorąc, istnieją dwa rodzaje korzyści:
Oto prosty przykład: Microsoft Office.
Teraz stwardnienie rozsiane polega na pieniądzach, a nie na tym, by uszczęśliwić egzekucję piractwem. Od pewnego czasu MS sprzedaje wersję Office dla domu i studenta za znacznie tańszą niż normalną wersję dla biznesu. Kupiłem to kilka lat temu i w ogóle nie było ochrony przed kopiowaniem! Technologia „antypiracka” polegała na wprowadzeniu klucza produktu, który był następnie przechowywany w folderze aplikacji. Ale możesz uruchomić go na dowolnej liczbie komputerów, na ile chcesz, i wszystkie działałyby dobrze! W rzeczywistości na komputerze Mac można przeciągnąć folder aplikacji przez sieć na inny komputer, na którym nigdy nie przeprowadzono instalacji, a ponieważ klucz produktu był przechowywany w aplikacji, działał świetnie.
Dlaczego taka żałosna technologia antypiracka? Dwa powody.
Po pierwsze, dodatkowy koszt wsparcia technicznego dla użytkowników domowych psujących swoje instalacje po prostu nie był tego wart.
Drugi to nietechniczne środki antypirackie . MS ma program informacyjny, w którym jeśli wiesz, że firma piruje oprogramowanie MS - na przykład instalując 200 kopii tego samego „Domu i studenta” - możesz do nich zadzwonić. Następnie MS przychodzi i kontroluje firmę, a jeżeli stwierdzi pirackiego oprogramowania, pozywa bzdura z nich - i ty dostać duże cięcie wygranych.
Zatem stwardnienie rozsiane nie musi używać technologii, aby zapobiec piractwu. Uważają, że bardziej opłacalne jest używanie zimnej, twardej gotówki.
źródło
Jak powiedział Bruce Schneier , próba uniemożliwienia skopiowania plików cyfrowych jest jak próba zmoczenia wody. Mówi przede wszystkim o „DRM”, który stosuje się bardziej do treści (np. Filmów) niż do kodu, ale z punktu widzenia zapobiegania kopiowaniu zawartości pliku nie ma większego znaczenia - kopiowanie pliku kopiowanie pliku jest kopiowaniem pliku .
źródło
Istnieje tylko jedna „głupia i hackoodporna metoda ochrony oprogramowania przed piractwem” :
Wolne oprogramowanie (ponieważ możesz z nim robić, co chcesz, a nawet sprzedawać).
Nie możesz ukraść tego, co zostało ci dane za darmo. To prawda, że zepsuje to niektóre modele oprogramowania firm dinozaurów, ale piractwo nigdzie się nie zmierza. Sprzedawaj coś, czego nie możesz skopiować, najlepiej coś, co towarzyszy temu, co rozdałeś za darmo; twoja pomoc na przykład.
źródło
Jest to spowodowane połączeniem czterech głównych czynników:
Na poziomie podstawowym wiele czynności wykonywanych przez komputer polega na kopiowaniu danych. Na przykład, aby uruchomić program, komputer musi skopiować go z dysku twardego do pamięci. Ale gdy coś zostanie skopiowane do pamięci, można je zapisać z pamięci w innym miejscu. Biorąc pod uwagę, że podstawową zasadą „ochrony przed piractwem” jest tworzenie oprogramowania, którego nie można pomyślnie skopiować, można zacząć dostrzegać skalę problemu.
Po drugie, rozwiązanie tego trudnego problemu działa bezpośrednio przeciwko interesom zarówno legalnych użytkowników, jak i tych, którzy chcą korzystać z oprogramowania bez legalnego nabywania go. Niektórzy z tych użytkowników będą posiadać wiedzę techniczną potrzebną do analizy skompilowanego kodu. Teraz masz kompetentnego przeciwnika aktywnie działającego przeciwko tobie.
Ponieważ jest to trudny problem, a ponieważ wytwarzanie prawidłowego oprogramowania jest z natury trudne, bardzo prawdopodobne jest, że Twoje rozwiązanie zawiera przynajmniej jeden błąd, który można wykorzystać. W przypadku większości programów nie ma to znaczenia, ale większość programów nie jest aktywnie atakowana przez zdeterminowanego przeciwnika. Ponieważ oprogramowanie jest tym, czym jest, po znalezieniu jednego nadającego się do wykorzystania błędu można go wykorzystać do przejęcia kontroli nad całym systemem i wyłączenia go. Aby zapewnić niezawodną ochronę, rozwiązanie bardzo trudnego problemu musi być idealne, w przeciwnym razie zostanie złamane.
Czwarty czynnik to światowy Internet. Sprawia, że problem przekazywania informacji wszystkim zainteresowanym jest trywialny. Oznacza to, że gdy raz twój niedoskonały system zostanie złamany, zostanie on wszędzie złamany.
Połączenie tych czterech czynników oznacza, że żaden niedoskonały system ochrony przed kopiowaniem nie może być bezpieczny. (A kiedy ostatni raz widziałeś idealne oprogramowanie?) W świetle tego pytanie nie powinno brzmieć: „dlaczego oprogramowanie jest nadal łatwe do piractwa?”, Ale „dlaczego ludzie wciąż próbują temu zapobiec?”
źródło
Często pomijaną, główną motywacją stojącą za rozwiązaniami SaaS opartymi na chmurze jest zabezpieczenie strumieni przychodów.
Myślę, że właśnie tam jest przyszłość monetyzacji i ochrony własności intelektualnej.
Dzięki odejściu od sprzedawania lokalnych rozwiązań, które mają być uruchamiane w środowisku niezależnym od dostawców, ostatecznie każda strategia przeciwko piractwu oprogramowania jest skazana na niepowodzenie. Po prostu nie ma sposobu, aby chronić swoje aktywa, gdy przekazujesz je komuś innemu, ponieważ ochrona musi być egzekwowana na jego komputerze.
Udostępniając swoje oprogramowanie w chmurze i udostępniając go jako usługę, skutecznie podnosisz poziom piractwa do poziomu, na którym ma małe firmy.
źródło
Myślę, że odpowiedź, której szukasz, jest taka, że wiele firm tak naprawdę nie interesuje się piractwem w ten sposób. Nikt nie chce, aby ich rzeczy wychodziły za darmo, ale kiedy spojrzysz na kompromis między irytującym a koniecznością wspierania wszystkich ludzi, w których zaawansowana ochrona przed kopiowaniem zepsuła się lub zepsuła ich komputery. Kilka firm zrobiło wszystko, co w ich mocy, aby się tym przejmować, ale pod koniec dnia rzeczy wciąż są spękane, a ich użytkownicy często wychodzą ze złym posmakiem w ustach.
Nie warto boleć (ani potencjalnej utraty klientów) próbować wdrożyć go dla kilku osób, którym i tak nie można się włamać.
Niektóre firmy postrzegają nawet pirackich użytkowników jako zasób. Valve zachwiało się w wiadomościach z takim komentarzem jakiś czas temu i nie możesz mi powiedzieć, że Microsoft nie wyszedł po zwycięskiej stronie wszystkich pirackich instalacji Windows w Azji przez lata.
W przypadku mikroprocesorów chcą sprzedawać duże bloki licencji dla małych chłopców, których potrzebują na każdą sprzedaż, ale nie mogą sobie pozwolić na utratę klientów, a w niektórych przypadkach nawet na rootkity i inne ohydne bzdury, których ludzie używają do zbudowania tego rodzaju blokady -w.
Nie można stworzyć idealnej walki z piractwem, ale nie ma wielu ludzi, którzy są bardzo zmotywowani, aby spróbować.
źródło
Cokolwiek wbudujesz w swoje oprogramowanie, musi być zrozumiałe dla maszyny, która je uruchomi. Ponieważ oprogramowanie stało się bardziej wyrafinowane, oprogramowanie do zrozumienia innego oprogramowania również stało się bardziej wyrafinowane. Więc jeśli to oprogramowanie jest zrozumiałe dla maszyny, jest zrozumiałe (i modyfikowalne) przez pirata.
Na przykład w zasadzie można wbudować silne szyfrowanie w pliku wykonywalnym, aby większość oprogramowania była nieczytelna. Problem polega na tym, że maszyny użytkowników końcowych nie mogą odczytać tego kodu bardziej niż piraci. Aby rozwiązać ten problem, oprogramowanie musi zawierać zarówno algorytm deszyfrujący, jak i klucz - zarówno w trybie jawnym, jak i przynajmniej ukrywającym się za słabszym szyfrowaniem (przy czym deszyfrowanie jest jasne).
IIRC, najlepsze deasemblery mogą ostrzec Cię o zaszyfrowanym kodzie i pomóc uchwycić i przeanalizować, co kryje się za szyfrowaniem. Jeśli wydaje się, że autorzy deasemblera są źli, należy wziąć pod uwagę, że twórcy zabezpieczeń potrzebują tego każdego dnia, aby badać wirusy i inne złośliwe oprogramowanie, które również ukrywa się w zaszyfrowanym kodzie.
Prawdopodobnie są tylko dwa rozwiązania tego problemu. Jednym z nich jest zamknięta platforma, która blokuje własnych użytkowników. Jak pokazuje Playstation 3, niekoniecznie jest to gwarancja. W każdym razie istnieje duża klasa nie-złych użytkowników, którzy jej nie polubią.
Drugim jest, aby twoje oprogramowanie działało na serwerach, które są pod twoją kontrolą.
źródło
Zautomatyzowane zwalczanie piractwa jest logiczną sprzecznością.
Dostawcy mają zaufanie do uzasadnionych użytkowników.
Każde „zautomatyzowane” zwalczanie piractwa ma na celu zautomatyzowanie relacji zaufania.
Jak to może działać? Jak można wszelkie środki techniczne kiedykolwiek przyjść do „Trust” osoby?
Zaufanie jest związkiem z natury ludzkim. Każdy mechanizm techniczny może zawsze zostać obalony przez osoby, które wydają się godne zaufania, ale nie są.
Co do tego, ludzie cały czas gubią zaufanie.
źródło
Chyba jednym z powodów jest to, że ci sami ludzie, którzy wiedzą, jak pisać przyzwoite zabezpieczenia, prawdopodobnie sami są hakerami.
Również próba ochrony przed piractwem jest naprawdę bardzo trudna. Ponieważ komputer musi sam wykonać tę ochronę, można ją przechwycić w dowolnym momencie (pamięć / wykonanie / ruch sieciowy ...). Tam właśnie pojawia się zaciemnianie, próbujące uniemożliwić zrozumienie, co się dzieje.
Wierzę, że siła numerów seryjnych i kluczy aktywacyjnych polega na tym, że możesz przynajmniej zobaczyć, kto jest piratem, i spróbować go wyśledzić / zablokować w ten sposób. Uważam, że jest to jeden z powodów, dla których tak wiele usług jest obecnie usługami online. (Steam, aktualizacja systemu Windows itp.) Nagle staje się o wiele trudniejszy do złamania, ... ale znowu jest to możliwe.
Tam, gdzie masz udany produkt, masz więcej ludzi próbujących go złamać, więc szanse na piractwo są większe.
źródło
Technicznie rzecz biorąc, oprogramowanie nadal może być pirackie, ponieważ większość IT nadal działa w środowiskach programowych i sprzętowych zaprojektowanych tysiące lat temu, kiedy nawet pojęcie piractwa komputerowego nie istniało.
Te fundamenty należy zachować dla kompatybilności wstecznej, jeszcze bardziej zwiększając naszą zależność od nich.
Gdybyśmy od nowa przeprojektowali środowiska sprzętowe / programowe z myślą o zwalczaniu piractwa, moglibyśmy wprowadzić znaczne ulepszenia.
Sam zobacz:
Ten sam otwarty system operacyjny z wszystkimi jego elementami całkowicie odsłoniętymi i dosłownie oferujący się do manipulacji
Ta sama otwarta architektura komputerowa, która zajmie każde oprogramowanie, które rzucisz na nią
Model dystrybucji oprogramowania nadal opiera się na niezaszyfrowanych plikach przekazywanych użytkownikowi
Dokładnie taki sam problem istnieje z Internetem i jego niskim poziomem bezpieczeństwa, wieloma podatnościami, otwartością na manipulacje, spamem i rozproszonymi atakami. Za drugim razem zrobilibyśmy to znacznie lepiej, gdybyśmy mogli przerobić Internet. Niestety musimy trzymać się tego, co musimy zachować kompatybilność z masą istniejących aplikacji i usług.
Na razie wydaje się, że najlepszym sposobem ochrony oprogramowania przed piractwem jest wprowadzenie zmian na poziomie sprzętowym:
Zamknij sprzęt i zmień go w czarną skrzynkę. Uniemożliwić użytkownikowi bałagan ze sprzętem i jego oprogramowaniem. Podejście to polega na prawdopodobnie zaszyfrowaniu wszystkiego na poziomie układu, aby ich zewnętrzne interfejsy były w pełni szyfrowane. Dobrym przykładem tego jest szyfrowanie HDCP dla interfejsu multimedialnego HDMI - strumień multimediów jest szyfrowany, zanim opuści odtwarzacz i jest odszyfrowywany wewnątrz jednostki wyświetlającej, aby nie było żadnego otwartego strumienia danych do przechwycenia.
Zamknij kanały dystrybucji. Wszystkie zewnętrzne media i kanały online powinny być w pełni zaszyfrowane, aby tylko certyfikowany sprzęt był w stanie odszyfrować strumień danych.
Można je wyciągnąć, ale cały ekosystem zamieni się w więzienie. Najprawdopodobniej powstanie równoległy / podziemny ruch wolnego sprzętu / oprogramowania, tworząc równoległy ekosystem.
źródło
Biorąc pod uwagę ten wysiłek, zapewniono by niemal idealną ochronę przed kopiowaniem… ale nie byłoby to warte kosztów . Kilka znaczących blogów doskonale o tym rozmawiało : w szczególności koncepcja optymalnego poziomu piractwa .
Środki przeciwdziałające piractwu wiążą się z kilkoma kosztami: bezpośrednim kosztem ich wdrożenia, ale także kosztami pośrednimi: np. Środki często powodują niedogodności, zniechęcając użytkowników.
Piractwo ma koszty, ale często nie są strasznie wysokie. Może mieć także pewne zalety, np. W poszerzeniu bazy użytkowników. Jak napisał jeden z komentatorów w poście Coding Horror: „Teraz, gdy jestem programistą i mam pieniądze na oprogramowanie, mam tendencję do kupowania programów, które pirowałem w czasach studenckich, ponieważ już je znam. ”
Dlatego pewna ochrona przed piractwem jest ważna, aby upewnić się, że legalna sprzedaż nie zostanie zbyt mocno podcięta; ale poza pewnym punktem nie ma ekonomicznej zachęty, by ulepszyć środki antypirackie.
źródło
Wszystkie odpowiedzi wydają się techniczne, ale nie jest to problem techniczny, lecz społeczny.
Oprogramowanie jest łatwe do skopiowania i trudne do napisania. Jeśli kopiowanie nie byłoby łatwe, nie zawracalibyśmy sobie głowy. Większość programów jest po prostu drogie, aby pisać jednorazowo, a te mniejsze wymagają większych programów do uruchomienia. Jeśli również utrudniamy kopiowanie programów, stawiamy siebie w niekorzystnej sytuacji konkurencyjnej. Tak, możesz zmaksymalizować zysk krótkoterminowy, odrzucając kopiowanie. Ale w końcu stracisz udział w rynku, kto kiedykolwiek może zminimalizować koszty kopiowania, pisania i pisania.
Wolne oprogramowanie minimalizuje 1 z tych kosztów związanych z kopiowaniem i znacznie obniża pozostałe 2 koszty pisania i użytkowania.
koszt kopiowania
Mogę zainstalować Linuksa Ubuntu w tym samym czasie i wysiłku, co Windows 7 [Windows 7 potrzebuje mnie, abym dodatkowo dodał klucz licencyjny, co nieco utrudnia].
Windows 7 będzie kosztował 100 funtów, ale dla Ubuntu mogę go pobrać, kupić za 6 funtów w sklepie z czasopismami (z bezpłatnym magazynem wrzuconym do magazynu), wysyłkę pocztową za 2 funty lub pożyczyć płytę CD od znajomego.
koszt pisania
Wolne oprogramowanie można modyfikować, co zmniejsza koszty. Nie muszę zaczynać od początku.
koszt użytkowania
W systemie Windows 7 nie otrzymuję żadnych aplikacji oprócz przeglądarki internetowej, w Ubuntu dostaję każdą aplikację, którą mogę sobie wyobrazić, wiele instalacji z systemem operacyjnym.
Nie potrzebuję skanera antywirusowego w systemie Linux.
Mogę uruchomić Linuksa na starszym sprzęcie.
Dzięki Wolnemu Oprogramowaniu nikt nie zmusza do aktualizacji, tworząc niekompatybilne wersje tam narzędzi biurowych.
źródło
W świecie, w którym komputery są wystarczająco podobne, aby móc pobierać oprogramowanie z sieci i natychmiast je uruchamiać, bardzo trudno jest zidentyfikować coś , co pozwala ustalić, czy ten komputer działa poprawnie, ale ten komputer nie jest.
W końcu sprowadza się to do posiadania czegoś, czego nikt inny nie ma. Może to być numer seryjny, za który zapłaciłeś, klucz sprzętowy lub dysk DVD z fizycznymi błędami w określonej lokalizacji. Oprogramowanie następnie szuka tej konkretnej rzeczy i odmawia uruchomienia, jeśli jej nie ma. W przypadku numerów seryjnych musisz także mieć lokalizację w Internecie, w której oprogramowanie może potwierdzić, że numer seryjny jest akceptowalny dla statku macierzystego.
Niestety hakerzy są bardzo dobrzy w chirurgicznym usuwaniu takich kontroli, więc kod musi być bardzo skomplikowany i trudny do modyfikacji, aby utrudnić, ale przy wystarczającym poświęceniu człowiek nadal może to zrobić.
W związku z tym większość niedrogich produktów programowych wybiera numer seryjny ze statkiem-matką w Internecie, który go zatwierdza, a także z polityką licencyjną, do której zobowiązane są korporacyjne kasy pieniężne. Drogie produkty zwykle wykorzystują ochronę klucza sprzętowego.
źródło
Istnieją różne rodzaje oprogramowania, które mają zabezpieczenia.
Gdy weźmiesz przykład systemu Windows 7, oczywiste jest, że odpowiedź brzmi „nie”, po prostu dlatego, że architektura komputera i programowanie komputera są bardzo dobrze znane.
Ale jeśli weźmiesz pod uwagę inne oprogramowanie, takie jak PS3, PSP i iPhone, to jest zupełnie inna, głównie dlatego, że producent ma kontrolę nad wszystkim, nie tylko oprogramowaniem: mogą sprawić, że sprzęt będzie działał tylko oryginalne oprogramowanie, a to wymaga dobre umiejętności hakowania, aby je złamać.
Powinieneś rzucić okiem na projekt Microsoft Longhorn w tamtych czasach: w czasie, gdy chcieli wdrożyć układy scalone, aby sprawdzić, czy twoje oprogramowanie jest oryginalne, czy nie. Teoretycznie włamanie byłoby bardzo trudne, ale nie zrobili tego, ponieważ byłoby to bardzo nachalne.
źródło