Zabezpieczenie programu przez pendrive

0

Cześć

Temat zabezpieczeń nie raz i nie dwa przewijał się przez forum, ale może zniesiecie jeszcze jeden. Sporo rozglądałem się za możliwościami, i ostatecznie chciałbym poczynić rozwiązanie oparte o pen'a. W aplikacji zaszyta (oczywiście nie jawnym tekstem) baza kodów pen'ów które będę wydawał klientom. Pomijając możliwość zmiany binarki aplikacji (JE -> JNE) chciałem zapytać jakie takie rozwiązanie ma słabe strony ?

Czy takiego pena można prosto emulować ? Wkładamy oryginał, "zczytujemy" do jakiegoś bin'a, odpalamy jakiś program i już (program w deseń DeamonTool'a tylko dla usb) ? (na taką emulację nie wymyśliłem sposobu)

Czy pobieranie parametrów pen'a przez WMI (Win32_DiskDrive.PNPDeviceID) niesie jakieś zagrożenia. (program nie będzie działał raczej na systemach poniżej XP, nie wiem jak to się sprawdzi na x64bit)

Czy ktoś coś takiego wprowadził w życie ?

Czy przed serwerem USB (http://usb-server.com/) wystarczająco się zabezpieczę jeśli moja aplikacja będzie tworzyła na czas działania plik na całym penie, z dostępem na wyłączność ?

P.S. wybrałem pen'a ze względów budżetowych. W cenie kilkadziesiąc zł/szt można mieć klucze sprzętowe, ale bez specjalnej wiedzy można je obejść, np przez podmianę dll'ki. Wartość aplikacji ~1k/lic.

Z góry dziękuję za konstruktywne rady
b

0
b0bik napisał(a)

W cenie kilkadziesiąc zł/szt można mieć klucze sprzętowe, ale bez specjalnej wiedzy można je obejść, np przez podmianę dll'ki.

Za moich czasów to razem z lepszym kluczem sprzętowym był protector, pozwalał nawet przeszyfrować kod czy pliki danych z użyciem klucza sprzętowego, sama zabawka była czymś więcej niż kawałek elektroniki udostępniający jeden string. Byle podmiana pliku wiele nie dawała, co najwyżej poza permanentnym, z punktu widzenia usera, zablokowaniem aplikacji dla danego komputera. Wypadłem z obiegu totalnie, ale widziałem ostatnio VMProtecta współpracującego z kluczami SenseLock, konkretów nie znam, w każdym razie wymaga 'trochę' więcej zachodu niż bezmyślne kopiowanie dllek. Skoro jeden zestaw istnieje to istnieją też inne.

0
Świętowit napisał(a)
b0bik napisał(a)

W cenie kilkadziesiąc zł/szt można mieć klucze sprzętowe, ale bez specjalnej wiedzy można je obejść, np przez podmianę dll'ki.

Za moich czasów to razem z lepszym kluczem sprzętowym był protector, pozwalał nawet przeszyfrować kod czy pliki danych z użyciem klucza sprzętowego, sama zabawka była czymś więcej niż kawałek elektroniki udostępniający jeden string. Byle podmiana pliku wiele nie dawała, co najwyżej poza permanentnym, z punktu widzenia usera, zablokowaniem aplikacji dla danego komputera. Wypadłem z obiegu totalnie, ale widziałem ostatnio VMProtecta współpracującego z kluczami SenseLock, konkretów nie znam, w każdym razie wymaga 'trochę' więcej zachodu niż bezmyślne kopiowanie dllek. Skoro jeden zestaw istnieje to istnieją też inne.

Low-budget to to nie jest : ) ale podejście ciekawe, może z takim patentem jest też dostępne coś innego - poszukam. Chociaż obiecałem klientowi coś przygotować na 30.06 : /

W tych tanich rozwiązaniach dostępnych teraz też są opcje type "envelope", czyli bez zmiany kodu aplikacji można ją "zabezpieczyć".

b

0

Kiedys sie zastanawialem nad rozwiazaniami profesjonalnymi w postaci penow zaszywajacych haslo w sobie albo tez czesc aplikacji juz gotowych. Pomysl wtedy padl ze wzgledu na budzet powyzej 100zl za sztuke. Minusem tez byly gotowe pakiety dla tych najbardziej popularnych firm do lamania ich zabezpieczen. Jednak jesli mialbym naprawde zabezpieczac aplikacjie to kierowal bym sie w ta strone. Produkty te maja tez ta zalete, ze zwalniaja z myslenia (+/- ale czasami nie ma czasu) i daja pelne SDK.

Zaszyta lista urzadzen jest niemal tozsama z jakimis prostymi metodami software dla tzw. Kowalskiego, niewarta inwestycji.

0

Mam taki pomysł: urządzenie w kształcie pena instaluje się w systemie jako coś znanego (np. port COM).
Część kodu aplikacji jest zaszyfrowana. Nie wiadomo jakim algorytmem ani jakim kluczem. Wysyłamy zaszyfrowany program do urządzenia, które odsyła odszyfrowany. Nigdy tego odszyfrowanego nie zapisujemy na dysk.

Takie coś na pewno jest już zaimplementowane. Czy to da się złamać? Oczywiście, jak wszystko...

0

Tak, już jest zaimplementowane. Co do łamalności to problem jest taki, że protector potrafi przy generowaniu wyciąć/zaszyfrować setki albo i tysiące fragmentów kodu. Do tego klucze mają odpowiedni protokół logowania, ograniczenia na typie dostępu, generator może robić założenia, że dane bloki się odszyfrują w danej kolejności i używać więcej niż jednego klucza. Generalnie to stare jak świat, takie rzeczy stosowało się już w ubiegłym stuleciu...

0
b0bik napisał(a)

Czy ktoś coś takiego wprowadził w życie ?

Program InTounch Wonderware jest tak licencjonowany

0

Oprogramowanie do developerki firmy ESRI również jest licencjonowane przez klucz usb.

0

Tak jak patrzę, to nie za łatwo dla przeciętnego użytkownika wgrać cracka do tego cuda...

na pewnym forum gdzie jest crack jakiś user napisał(a)

Dorzucam instrukcję instalacji po polsku:

Jeżeli ArcGIS nie chodzi to proponuję odinstalować wszystko związane z ArcGISem, nastepnie usunąć ręcznie foldery z program files związane z ESRI, uruchomić ponownie komputer i przystapić do instalacji, według tej kolejności:

  1. Z folderu \crack\license_server_setup instalujemy LMSetup.exe
    Instalator zapyta o licencję, dlatego kopiujemy plik 37102011.efl9 w bezpieczne miejsce na dysk twardy.
    Następnie wskazujemy miejsce na HDD.
    Po udanej instalacji instalator zapyta czy uruchomić komputer ponownie - NIC NIE ROBIMY!!

  2. Wchodzimy do folderu \crack\license_server_crack i tam kopiujemy wszystkie pliki do \Program Files\ESRI\License\arcgis9x i zamieniamy je.

  3. Uruchamiamy ponownie komputer.

  4. Instalujemy ArcGIS 9.

  5. Kopiujemy z \crack\data_interop\ plik fme_license.dat do \Program Files\ArcGIS\Data Interoperability Extension

  6. Z Menu Start\Programy\ArcGIS uruchamiamy Desktop Administrator, tam w:

  • Software Product wybieramy "ArcInfo (Floating)",
  • License Manager wpisujemy "localhost" bez "",
  • Availability wybieramy ArcInfo Desktop (Floating) i powinniśmy widzieć multum licencji
    Klikamy Apply i OK.
  1. Odpalamy ArcMap, z menu Tools wybieramy Extensions i zaznaczamy według potrzeb, najlepiej wszystko.

  2. Cieszymy się aplikacją.

I to jest coś, jeśli targetem jest Pani Basia z sekretariatu.

0

I to jest coś, jeśli targetem jest Pani Basia z sekretariatu.
I to jest nic, jeśli nad p. Basią stoi informatyk. Zresztą część tych operacji można zautomatyzować w nowszej wersji kraka ;-)

0

Ktoś jeszcze musi tego cracka napisać...

0
Demonical Monk napisał(a)

Ktoś jeszcze musi tego cracka napisać...

I tutaj wydaje mi się jest przewaga własnych rozwiązań nad gotowymi rozwiązaniami.

b

0
b0bik napisał(a)

I tutaj wydaje mi się jest przewaga własnych rozwiązań nad gotowymi rozwiązaniami.

Tak, amatorskie rozwiązania łamie się znacznie łatwiej niż profesjonalne. Zupełnie jak z kryptologią, trzeba mieć naprawdę solidne podstawy teoretyczne żeby stworzyć coś wartościowego, dobre protectory bronią się mimo znajomości ich mechaniki.

0
deus napisał(a)
b0bik napisał(a)

I tutaj wydaje mi się jest przewaga własnych rozwiązań nad gotowymi rozwiązaniami.

Tak, amatorskie rozwiązania łamie się znacznie łatwiej niż profesjonalne.

Chodziło mi o aspekt taki że do większości rynkowych rozwiązań wystarczy wpisać w google NAZWA_PATENTU + CRACK / EMULATOR i już.

Oczywiście zgadzam się z Tobą że większość rozwiązań własnych nie posiada promila tego co oferują produkty komercyjne, i bardzo prosto je obejść, ale sam fakt dostępności "objeść" wydaje mi się jest znaczący, bo eliminuje pewną grupę tzw. haxiorów.

b

1 użytkowników online, w tym zalogowanych: 0, gości: 1