Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zabezpieczanie aplikacji przed kradzieżą
scanner
post
Post #1





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




Tak sobie siedzę i myślę i wpadłem na taki temat.

Napisałem aplikację MyApp (nazwa zmyślona) - oczywiście php/SQL. Udostępniam jej demo na sieci i oferuję jej sprzedaż za cenę X zł.

I teraz szukam sposobu, w jaki można by zabezpieczyć MyApp przed rozpowszechnianiem pakietu poza moja kontrolą. Poza stosowaniem np. MMCache lub ZendEncodera (itp) nic innego sensownego nie przychodzi mi do głowy.

Powyższe rozwiażania niestey nie wchodzą w grę - jeśli MyApp sprzedam komuś, kto ją będzie chciał postawic np. na Lycosie, to wszystko zdechnie.

Oczywisćie ufam userom i jełśi za coś zapłacili XX zł, to prawdopodobnie nie będą tym handlować dalej, ale.. temat do przemyśleń jest.

Macie jakieś pomysły?
Go to the top of the page
+Quote Post
6 Stron V   1 2 3 > »   
Start new topic
Odpowiedzi (1 - 99)
fiszol
post
Post #2





Grupa: Zarejestrowani
Postów: 453
Pomógł: 16
Dołączył: 25.05.2004
Skąd: Gorzów Wlkp.

Ostrzeżenie: (0%)
-----


Cytat(scanner @ 2004-09-29 14:03:43)
Oczywisćie ufam userom i jełśi za coś zapłacili XX zł, to prawdopodobnie nie będą tym handlować dalej, ale.. temat do przemyśleń jest.

Nie ufaj, spójrz na torrenty, niemal wszystko jest tam płatne....

A co do zabezpieczeń, może jakiś zdalny ssytem autentyfikacji, np skrypt po uruchomieniu kontaktuję się z serwerem XXX i porównuje kod, jeśli kod jest w bazie danych serwera XXX oskryptowanie pracuje dalej, jeśli nie wykonuje die('bla bla bla'), jednak to ma jedną zasdaniczą i ogormną wadę, mianowicie każdy będzie mógł wywalić cześc kodu odpowiedzialną za to ze źródeł....
Mam nadzieję że chociaż odorbinę to pomogło, nasunęło jakieś rozwiązanie o ktorym ja niemam pojęcia

cheers,
fiszol

Ten post edytował fiszol 29.09.2004, 13:23:22
Go to the top of the page
+Quote Post
scanner
post
Post #3





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




Cytat(fiszol @ 2004-09-29 14:21:24)
jednak to ma jedną zasdaniczą i ogormną wadę, mianowicie każdy będzie mógł wywalić cześc kodu odpowiedzialną za to ze źródeł....

Za długo nad tym myślę, zębym pominął taką oczywistośc. Próba użycia takiego systemu ma dwie wady:
- system kontrolny (mój serwer) moze być offline - autoryzacja zdechnie
- bez kompilacji (ZendEnc, MMCache) stosowanie takiego modelu jest pozbawione logiki, sam powiedziąłeś, ze mozan wyedytować.
Go to the top of the page
+Quote Post
kszychu
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


Moim skromnym zdaniem nie da się tego zabezpieczyć. Złamanie/obejście/wywalenie każdego zabezpieczenia w nieskompilowanym kodzie to tylko kwestia czasu.
Go to the top of the page
+Quote Post
bregovic
post
Post #5





Grupa: Zarejestrowani
Postów: 562
Pomógł: 15
Dołączył: 8.08.2003
Skąd: Denmark/Odense

Ostrzeżenie: (0%)
-----


Jedna z mozliwosci jest sprzedawanie interfejsow do MyApp - ktore bedzie dzialalo na twoim serwerze, i komunikowalo sie z nim np za pomoca xml-rpc" title="Zobacz w manualu PHP" target="_manual lub soap" title="Zobacz w manualu PHP" target="_manual... Oczywiscie wymaga to od ciebie jako producenta MyApp zapewnienia stabilnosci serwera - ale to sa konsekwencje bezpieczenstwa...
Go to the top of the page
+Quote Post
Dynuel
post
Post #6





Grupa: Zarejestrowani
Postów: 113
Pomógł: 0
Dołączył: 27.12.2003

Ostrzeżenie: (0%)
-----


sam o tym też mślałem i potrzebuję jakieś dobrego rozwiązania.

a co powiecie aby źródło umieścisz na własnym sererze a u kolesia jedynie pliki które by pobierały kod, tylko trzeba by to zrobić tak aby on sam nie mógł ich ściągnąć, i nie wiem czy to jest w ogóle możliwe
Go to the top of the page
+Quote Post
mpps
post
Post #7





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 14.03.2003
Skąd: Szczecin

Ostrzeżenie: (0%)
-----


zawrzyj to w umowie kupna-sprzedaży lub licencyjnej.
jeśli nadasz każdemu egzemplarzowi aplikacji ukryty w źródle kod, i jeśli dojdą do Ciebie informacje (lub sam znajdziesz), że ten egzemplarz aplikacji jest dostępny w sieci w wersji pełnej za friko, zawsze będziesz mógł pociągnąć do odpowiedzialności cywilno-prawnej właściciela egzemplarza z tymże ukrytym kodem.
co innego, jeśli jakiś egzemplarz ktoś rozkompiluje, złamie (usunie część z kodem) i po skompilowaniu wrzuci do sieci... - ostatnio to się stało standardem przy łamaniu zabezpieczeń nawet tych najdroższych programów...
acha - oczywiście pozostaje kwestia obowiązkowej rejestracji egzemplarza aplikacji przez klienta...
co do ceny... zależy jaką ta aplikacja ma wartość merytoryczną - to sam musisz wiedzieć, na ile cenisz czas jej poświęcony, i to co dana aplikacja daje (czyt.: jak bardzo ułatwia userowi życie). sęk w tym, że zazwyczaj, jeśli miałbyś wycenić swoją aplikację na tyle, ile ona faktycznie jest warta, to nikt by jej nie kupił (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) więc należy cenę podzielić przez potencjalną ilość klientów...
chyba, że dążyć do czegoś takiego, do czego dąży(ł?) microsoft... sprzedajesz interface z dostępem do serwera, na którym działa aplikacja - wtedy masz pewność, że tylko jeden user używa tylko jednego egzemplarza, bo loguje się na serwerze na swoje konto. a opłaty pobierasz np. rocznie(?) ryczałtem.
Go to the top of the page
+Quote Post
fiszol
post
Post #8





Grupa: Zarejestrowani
Postów: 453
Pomógł: 16
Dołączył: 25.05.2004
Skąd: Gorzów Wlkp.

Ostrzeżenie: (0%)
-----


@mpps; tutaj dochodzi jeszcze coś takiego jak koszta sądowe, czy mianowicie skrypt będzie wart dochodzenia sprawiedliwości ( adkewatnie do ceny skryptu )

Cytat
(lub sam znajdziesz)
To oznacza albo trzepanie googli dzień w dzien 24h/ dobę, albo zostawanie jakiegoś backdoora w oskryptowaniu co jesz\t raczej nie fair wobec klienta

Cytat
co innego, jeśli jakiś egzemplarz ktoś rozkompiluje, złamie (usunie część z kodem) i po skompilowaniu wrzuci do sieci... - ostatnio to się stało standardem przy łamaniu zabezpieczeń nawet tych najdroższych programów...

Torrenty, tam jest wszystko bez ograniczeń, i jeśli oskryptowanie określone tutaj jako "MyApp" spotkało by się z szerokim zainteresowaniem, rónież pojawiło by się jako torrent, a w przypadku serwisów torentowych dochodzenie swoich praw jest w ręcz nierealne.

to tyle,
fiszol

Ten post edytował fiszol 29.09.2004, 13:53:27
Go to the top of the page
+Quote Post
NuLL
post
Post #9





Grupa: Zarejestrowani
Postów: 2 262
Pomógł: 21
Dołączył: 3.05.2004
Skąd: Sopot, Krakow, W-wa

Ostrzeżenie: (0%)
-----


Nie wiem jak Wy sadzice ale wydaje mi sie ze szanse na odnalezienie wlasnej aplikacji w necie jes nierealne - nie oszukujmy sie. Szczerze mowiac - ja bym rpobowal w ajkis pecyficzny spsobtworzyc HTML-a - jakies okreslone nazwy pol czy siakies takie rzeczy? innego pomyslu nie widze. pomysl glupi ale np. przekazywanie danych w adresie czy cos moze wskazywac na ta aplikacje - z tym ze musi ona sluzyc do konkretnych celow

Pozdrawiam
Go to the top of the page
+Quote Post
Dawid Pytel
post
Post #10





Grupa: Zarejestrowani
Postów: 133
Pomógł: 0
Dołączył: 15.09.2003

Ostrzeżenie: (0%)
-----


Cytat
tutaj dochodzi jeszcze coś takiego jak koszta sądowe, czy mianowicie skrypt będzie wart dochodzenia sprawiedliwości ( adkewatnie do ceny skryptu )


Możesz się sądzić nawet o 100 zł. Fakt, zapłacisz za prowadzenei sprawy jednak jeżeli masz pewność, że wygrasz to:
a) dasz nauczkę oszustowi
(IMG:http://forum.php.pl/style_emoticons/default/cool.gif) przegrana strona zwraca koszty procesu osobie, która wygrała
Go to the top of the page
+Quote Post
tiraeth
post
Post #11





Grupa: Przyjaciele php.pl
Postów: 1 789
Pomógł: 41
Dołączył: 30.10.2003
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Mam pomysł.......

jeżeli chodzi o zabezpieczenie przed dalszym rozpowszechnianiem to można, np. tak:

:: Jeżeli potrafisz zarządzać plikami/edytować je w kompresji zip to można zrobić tak, że każdy ściągnięty pakiet MyApp będzie miał w konfiguracji zapisany unikalny id. W momencie ściągnięcia skryptu ten id, ip downloadera, jego host i data ściagnięcia będzie zapisana do bazy.
:: Administrator strony instalując MyApp będzie musiał podać adres email.
:: Potem podczas instalacji MyApp, skrypt będzie pobierał adres strony do jakiejś zmiennej (powiedzmy $adres_strony) i wysyłał Ci email'a z takimi informacjami:

Cytat
Witaj, scanner!

Kolejna strona ściągnęła i zainstalowała MyApp w wersji DEMO!! Poniżej znajdują się dane dot. strony oraz tego pakietu MyApp:

Adres strony: http://adres.strony.pl
Email admina: admin@adres.strony.pl
Data instalacji: środa, 29 września 2004, 13:33:12
Identyfikator pakietu: 82cn3222xcak28cc0213cn4r2rn8573o

Ilość identyfikatorów tego pakietu w bazie danych jest równa 0 a więc jest to świeży pakiecik MyApp.

Możesz skontaktować się z adminem tej strony i podziękować za wybór MyApp >tutaj<


no chyba, że taki id pakietu istnieje już to wtedy skrypt będzie sprawdzać czy w bazie istnieją identyfikatory takie jak podane w mailu, to wtedy będzie to tak:
Cytat
Witaj, scanner!

Kolejna strona ściągnęła i zainstalowała MyApp w wersji DEMO!! Poniżej znajdują się dane dot. strony oraz tego pakietu MyApp:

Adres strony: http://adres.strony.pl
Email admina: admin@adres.strony.pl
Data instalacji: środa, 29 września 2004, 13:33:12
Identyfikator pakietu: 82cn3222xcak28cc0213cn4r2rn8573o

Ilość identyfikatorów tego pakietu w bazie danych jest równa 1(IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif) Chyba ktoś rozpowszechnia MyApp bez Twojej wiedzy.

Możesz skontaktować się z adminem tej strony i porozmawiać na temat rozpowszechnianai MyApp >tutaj<


oczywiście strukturę bd chyba będziesz umiał utworzyć (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

pozdro!
Go to the top of the page
+Quote Post
rogrog
post
Post #12





Grupa: Zarejestrowani
Postów: 602
Pomógł: 1
Dołączył: 3.04.2004
Skąd: Trójmiasto (Gdańsk)

Ostrzeżenie: (0%)
-----


dobry pomysł ale nadal ktoś może usunąć kod odpowiedzialny za maila do autora z kodu
Go to the top of the page
+Quote Post
MoD
post
Post #13





Grupa: Zarejestrowani
Postów: 193
Pomógł: 0
Dołączył: 14.09.2003
Skąd: Brodnica (koło Torunia)

Ostrzeżenie: (0%)
-----


W takim razie można to zapisać w jakimś pliku NIE MODYFIKOWAĆ (np. config.php, żeby osoba nie nabrała podejrzeń). Ale mam jeszcze inny sposób:

1. Napisać własną procedurę szyfrowania
2. Umieścić ją na własnym serverze
3. Zakodować nią plik CONFIG.php zawierający konfigurację oraz kod zrobiony na podstawie pomysłu Tiraetha
4. Podczas kożystania ze sryptu zaincludować nasz plik z procedurą szyfrowania, odkodować CONFIG.php oraz wywołac funckję eval" title="Zobacz w manualu PHP" target="_manual z podanym odkodowanym CONFIG.php

Wszystko można złamać, ale należy jak najbardziej zamotać kod (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
mpps
post
Post #14





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 14.03.2003
Skąd: Szczecin

Ostrzeżenie: (0%)
-----


eekch, a wracając do początku:
@scanner: ta aplikacja, o której mowa, to coś, co działa lokalnie, czy w necie?
bo uważam, że to zasadnicza różnica w kwestii zabezpieczeń...
aplikację net-ową łatwiej sprawdzić czy legalna...(?)
Go to the top of the page
+Quote Post
zalew
post
Post #15





Grupa: Zarejestrowani
Postów: 407
Pomógł: 0
Dołączył: 24.10.2002
Skąd: warszawa

Ostrzeżenie: (0%)
-----


Cytat
Poza stosowaniem np. MMCache lub ZendEncodera (itp) nic innego sensownego nie przychodzi mi do głowy.

Powyższe rozwiażania niestey nie wchodzą w grę - jeśli MyApp sprzedam komuś, kto ją będzie chciał postawic np. na Lycosie, to wszystko zdechnie.


piszesz cos o nazwie 'requirements' i tam mowisz ze na serwerze ma byc zend optimizer i ze jest darmowy.. poza tym okresl sobie userow, chyba ktos kto wydaje pineiadze na oporgramowanie nie trzyma sajtu na darmowym koncie hostingowym.
Go to the top of the page
+Quote Post
__phpion__
post
Post #16





Grupa: Zablokowani
Postów: 50
Pomógł: 0
Dołączył: 8.08.2004

Ostrzeżenie: (10%)
X----


Mozna robic rozne myki. Wlasne taki jaki juz zostal opisany (z identyfikacja skryptu). Na pewno w skrypcie znajduje sie plik, ktory jest sercem skryptu. Moze to byc plik z funkcjami, moze to byc plik typu startowego. Moze po prostu umieszczac go na wlasnym serwerze i stamtad includowac? Wtedy jedyna mozliwosc, ze ktos napisze te pliki jeszcze raz...
Go to the top of the page
+Quote Post
Bakus
post
Post #17


Administrator serwera


Grupa: Przyjaciele php.pl
Postów: 909
Pomógł: 0
Dołączył: 12.08.2003
Skąd: /var/www/wroclaw.php

Ostrzeżenie: (0%)
-----


__phpion__: jeżeli includujesz zdalnie, to żaden problem zobaczyć ten plik w przeglądarce... jeżeli ma być wykonywany na wspomnianym serwerze, to jak napisał scanner: "system kontrolny (mój serwer) moze być offline"
Go to the top of the page
+Quote Post
borec
post
Post #18





Grupa: Zarejestrowani
Postów: 260
Pomógł: 0
Dołączył: 18.07.2003
Skąd: Tarnów

Ostrzeżenie: (0%)
-----


a moze cos takiego:

http://www.phpclasses.org/browse/package/1730.html

Cytat
Solace Script Maze is meant to protect php scripts from being stolen or modified.

It uses only native php functions, so no additional extensions are required to execute protected scripts, thus also support php 5.


Ten post edytował borec 30.09.2004, 08:46:55
Go to the top of the page
+Quote Post
orson
post
Post #19





Grupa: Zarejestrowani
Postów: 548
Pomógł: 2
Dołączył: 19.07.2003

Ostrzeżenie: (0%)
-----


witam ...

a moze tak:
- po zakupie skryptu, na etapie konfiguracji podaje sie wszystkie dane a po kliknieciu next pojawia sie piekny obrazek ... sciagany z twojego serwera (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) w url przesylasz sobie dane typu id, ip serwisu, nazwa, url i inne ... mozna nawet zrobi js do przesylania postem ... mozna zrobic flasha ktory laczy sie z baza i wysyla te wszystkie zeczy ... i teraz jezeli serwer jest offline pojawia sie komunikat ze produkt nie moze zostac zarejstrowany ... try again later (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) [oczywiscie informacja o koniecznosci rejstracji znajduje sie w umowie licencyjnej]
- kodu z modolu rejstrujacego nie trzeba szyfrowac .... mozna go zaciemnic ... jezeli to skrypt ktory ma ze 300 linijek to po zaciemnieniu nie bedzie sie tego dalo przeczytac ... dodasz kilka mylnych funkcji i ktos bedzie musial siedziec 3 tygodnie zeby sie polapac co robi co ...
- przy logowaniu admina moze znowu pobierac maly obrazek gif z transem 1x1 px z id i url i ip ... jezeli twoj serwer jest offline to trudno ... kiedys bedzie online (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
- integralnosc pliku config.php mozna sprawdzic np. przy pomocy crc/md5/sha1 ....
w kodzie pliku dajesz od linii 270:
Kod
/*
jobhaowiubt43ioutbouiaebg4utf3a4uiot <- jakas suma
asdgsdbiugbasdiugbaiubvgiuabgfiuwaebgiu <- jakas suma
alsdjbgkjadsbgjbasdkjgbkjdasbgkjbksdjagbk <- jakas suma
skadhfkhasdbgsabdvkhgbvkhui345rb34uib5ui234 <- jakas suma
bc5iu3bc34uib5ucib34bc534uib5viuc3b5iu3  <- jakas suma
j3b5ui34cb5iuqbc5iu3bc5uib34ic5ub3i4ucb5iu  <- jakas suma
icb5uic2b5iub3c5uib3ciu34cb5iu3cb5iu3cb4ui5c  <- jakas suma
*/

a potem reszte skryptu ... zeby sprawdzic wczytujesz poczatek do linii 270 do stringa potem reszte od 27x do tego samego stringa i robisz crc tego stringa ... i to jest ktoras tych sum ... zaciemniajac kod [zminana nazw zmiennych i funkcji na ich sumy] sprawisz ze bedzie to extremalnie trudne do rozszyfrowania ...

pozdrawiam
Go to the top of the page
+Quote Post
DeyV
post
Post #20





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




Jeśli juz mówimy o zabezpieczaniu - ostatnio zastanawiałem się nad sposobami generowania "kluczy aktywacyjnych".

Problem sprowadza się do tego, jak napisać skrypt generujący jakiś klucz tak, by osoba mająca dostęp do kodu sprawdzającego czy dany klucz jest poprawny (zamka) - nie mogła (przynajmniej w zbyt prosty sposóB) wygenerować kolejnego (innego) klucza, pasującego do danego "zamka".

Nie znalazłem żadnych gotowych bibliotek do takich działań, a wszystkie pomysły jakie przyszły mi do głowy - okazywały się stanowczo zbyt banalne do złamania.

macie jakieś pomysły?
Go to the top of the page
+Quote Post
Sh4dow
post
Post #21





Grupa: Zarejestrowani
Postów: 569
Pomógł: 0
Dołączył: 17.08.2003
Skąd: Dąbrowa Górnicza

Ostrzeżenie: (0%)
-----


kodowany hash plikow, do tego kodowanie samego pliku przez jakis encoder, klucz do rejestracji, to musiala by byc podstawa, a do tego przydal by sie klucz oparty o webservices.
Ale sadze ze przy bardzo popularnej aplikacji to tez byla by kwestia czasu aby pojawily sie juz polamane paczki.
Mozna jedynie utrudnic zabawe "lamaczom"
Go to the top of the page
+Quote Post
Spirit86
post
Post #22





Grupa: Zarejestrowani
Postów: 607
Pomógł: 23
Dołączył: 8.09.2004
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Może by zrobić to za pomocą pliku wykonywalnego i za pomocą funkcji exec? Można by w ten sposób zakodować plik z funckjami / klasami głównymi i aglorytmem rozkodywującym resztę plików. Można też skorzystać z programu do kompilowania plików php. (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
hawk
post
Post #23





Grupa: Zarejestrowani
Postów: 521
Pomógł: 0
Dołączył: 3.11.2003
Skąd: 3city

Ostrzeżenie: (0%)
-----


@DeyV:
Niby sporo się uczyłem o szyfrowaniu, ale... co dokładnie chcesz mieć?

1) Jeden skrypt sprawdzający i generujesz wiele pasujących do niego kluczy (relacja 1-wiele)

2) Dla każdego klucza osobny skrypt sprawdzający (pewnie różnią się parametrem, relacja wiele-wiele)

Może dało by się wykombinować coś z liczbami pierwszymi i arytmetyką modulo X...
Go to the top of the page
+Quote Post
SHiP
post
Post #24





Grupa: Zarejestrowani
Postów: 697
Pomógł: 47
Dołączył: 19.12.2003
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Ja bym to zrobił tak...
Sprzedaje program panu XXX i podaje mu cd-keya np ZBX123456789. Przy okazji zapisuję go do bazy (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) . Teraz gdy pan XXX chce zainstalować program musi wpisać cd keya. Aby skrypt działał musi jednak połączyć sie z serwerem. Spradzany jest cd-key z bazy czy już go ktos używa i jak tak to zonk (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
kszychu
post
Post #25





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


Ja to was nie rozumiem. Podajecie te wszystkie przykłady tak, jakby to było skompilowane. Niestety NIE JEST i wystarczy jeden dzień, aby obejść te wszystkie cd-kije czy inne kodowania. Wystarczy po prostu wyłączyć moduł sprawdzania zabezpieczeń...
Go to the top of the page
+Quote Post
matid
post
Post #26





Grupa: Zarejestrowani
Postów: 362
Pomógł: 0
Dołączył: 18.02.2004
Skąd: Knurów

Ostrzeżenie: (0%)
-----


Niestety, jedynym wyjściem jest użycie jakiegoś zewnętrznego programu, innego rozwiązania nie widzę.

Ten post edytował matid 30.09.2004, 15:23:36
Go to the top of the page
+Quote Post
hawk
post
Post #27





Grupa: Zarejestrowani
Postów: 521
Pomógł: 0
Dołączył: 3.11.2003
Skąd: 3city

Ostrzeżenie: (0%)
-----


@DeyV: ejże, albo jestem głupi albo to jednak nie jest takie skomplikowane. Idea jest prosta: PKI.

Robisz jakiś debilny klucz, kodujesz swoim kluczem prywatnym. Kod sprawdzający ma dostęp do klucza publicznego. I tyle. Każdy może sobie wygenerować inny poprawny klucz, tylko co z tego, skoro nie może go zakodować.

Inna sprawa, jaki jest tego sens, skoro można po prostu wywalić/zmienić kod sprawdzający klucz. Ale sama generacja kluczy jest IMHO prosta i w zasadzie nie do złamania, jeżeli nie będziemy się oszczędzali z długością klucza.

Aż za proste... ale nie widzę problemów...
Go to the top of the page
+Quote Post
borec
post
Post #28





Grupa: Zarejestrowani
Postów: 260
Pomógł: 0
Dołączył: 18.07.2003
Skąd: Tarnów

Ostrzeżenie: (0%)
-----


czy ktos wogole czytam moj poprzedni post w tym topicu?!

Solace - skrypt ktory koduje zrodla php za pomoca jedynie wbudowanych funkcji - nie sa potrzebne zadne zendy itp (chociaz mozna tez encodowac z pomoca turck mmcache - opcja)

skrypt opatrzony jest #1 Innovation Award na PHPClasses.org, to chyba o czyms swiadczy
Go to the top of the page
+Quote Post
Spirit86
post
Post #29





Grupa: Zarejestrowani
Postów: 607
Pomógł: 23
Dołączył: 8.09.2004
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Cytat(Spirit86 @ 2004-09-30 13:45:10)
Może by zrobić to za pomocą pliku wykonywalnego i za pomocą funkcji exec? Można by w ten sposób zakodować plik z funckjami / klasami głównymi i aglorytmem rozkodywującym resztę plików. Można też skorzystać z programu do kompilowania plików php. (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)

Ja napisałem sposób, którego się nie da ominąć :]
Go to the top of the page
+Quote Post
kubatron
post
Post #30





Grupa: Zarejestrowani
Postów: 581
Pomógł: 0
Dołączył: 21.07.2003
Skąd: Jasło

Ostrzeżenie: (0%)
-----


Cytat(Spirit86 @ 2004-09-30 18:33:24)
Cytat(Spirit86 @ 2004-09-30 13:45:10)
Może by zrobić to za pomocą pliku wykonywalnego i za pomocą funkcji exec? Można by w ten sposób zakodować plik z funckjami / klasami głównymi i aglorytmem rozkodywującym resztę plików. Można też skorzystać z programu do kompilowania plików php.  (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)

Ja napisałem sposób, którego się nie da ominąć :]

No to przedstaw go (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
patrycjusz
post
Post #31





Grupa: Zarejestrowani
Postów: 263
Pomógł: 0
Dołączył: 13.07.2003
Skąd: wawa

Ostrzeżenie: (0%)
-----


Witam,
ostatnio sporo sie nad tym tematem zastanawiałem, wypytywałem speców, wyszukiwałem i lipa... kochani każdy sposób zabezpieczenia aplikacji to jedynie kwestia czasu i wiedzy osoby która chce go złamać....
moim zdaniem należy się skupić na odpowiedniej umowie licencyjnej, to podstawa ..
i zawarcie w niej odpowiednich elementów zawsze gwarantuje ze w przypadku jak znajdziecie złodzieja to macie z nim duże szanse wygrać.
I na koniec dodam że nie ma sensu sie az tak nad tym głowić, moim zdaniem należy się skupić na tym aby ludzie chcieli kupować orginalną wersje i kupowali jej sporo, jednocześnie uzależniając się w pewnych elementach od was, tu włożyć wszystkie siły w osiągnięcie zadowalającego wyniku, a nie siedzieć nocami i zastanawiac się nad tym
jak zabezpieczyć aplikacje bo może jakiś jasiu ją zkrakuje i sprzeda innym w 5 egzemplarzach....
no pozatym wszystko zależy co to ma być (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) bo jak OS to trzeba zabezpieczyć (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) a jak skrypt do FAQ to juz lepiej browarka obrócić (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
pozdro 600 :]
Go to the top of the page
+Quote Post
matid
post
Post #32





Grupa: Zarejestrowani
Postów: 362
Pomógł: 0
Dołączył: 18.02.2004
Skąd: Knurów

Ostrzeżenie: (0%)
-----


Cytat(Spirit86 @ 2004-09-30 18:33:24)
Ja napisałem sposób, którego się nie da ominąć :]

Nie ma takiego sposobu. Jak mówią - każde zabezpieczenie można złamać.
Go to the top of the page
+Quote Post
mpps
post
Post #33





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 14.03.2003
Skąd: Szczecin

Ostrzeżenie: (0%)
-----


brawo @ scanner(IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif) !
ten temat, który szanownie rozpocząłeś pretenduje do pierwszego miejsca pod względem ilości odpowiedzi i "nowatorskich(?)" rozwiązań!
jak już coś z tego wszystkiego sklecisz, to sprzedaj to billowi g., żeby przestał szukać... (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
i pamiętaj, że to będzie Twój jedyny klient, więc go skroj ile wlezie!!! a on ma trochę(?) kasy... (IMG:http://forum.php.pl/style_emoticons/default/cool.gif)

zgadzam się z kszychem i się nie zgadzam..., cyt.:
Cytat
Ja to was nie rozumiem. Podajecie te wszystkie przykłady tak, jakby to było skompilowane. Niestety NIE JEST i wystarczy jeden dzień, aby obejść te wszystkie cd-kije czy inne kodowania. Wystarczy po prostu wyłączyć moduł sprawdzania zabezpieczeń...

tu się zgadzam

Cytat
Moim skromnym zdaniem nie da się tego zabezpieczyć. Złamanie/obejście/wywalenie każdego zabezpieczenia w nieskompilowanym kodzie to tylko kwestia czasu.

jasne, że wszystko się da tak czy inaczej złamać! to znaczy co: dajmy sobie spokój? nie ma sensu tworzyć (łamać) zabezpieczeń? zobacz, jakie możliwości otwierasz SOBIE łamiąc sobie łeb i niszcząc klawiaturę nad stworzeniem lub złamaniem zabezpieczeń!!!
bez obrazy, jeśli programiści php mieliby takie podejście, to wersji php 5.0 moglibyśmy się spodziewać może w 2040 a nie w 2004!
uważam, że takie podejście prowadziłoby do degradacji ilości zwojów mózgowych szanownego grona koderów i dekoderów (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
wolę stracić(?) jeden(?) dzień nad stworzeniem (he, he - jeden dzień) lub złamaniem kodu niż nie spróbować swoich skromnych możliwości!!! (może kiedyś będą większe)
a poza tym: wiesz jaka to satysfakcja, jak się dowiesz, że ktoś próbuje lub złamał zabezpieczenie, które stworzyłeś do swojego programu? to znaczy, że jest on poszukiwany (ten program) i używany z chęcią, a nie z musu, bo go szef kupił, bo był tani...
no dobra - już kończę...
Go to the top of the page
+Quote Post
M4chu
post
Post #34





Grupa: Zarejestrowani
Postów: 135
Pomógł: 0
Dołączył: 28.09.2003
Skąd: Rzeszów

Ostrzeżenie: (0%)
-----


Wystarczy znalezc program .php -> .dll (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
borec
post
Post #35





Grupa: Zarejestrowani
Postów: 260
Pomógł: 0
Dołączył: 18.07.2003
Skąd: Tarnów

Ostrzeżenie: (0%)
-----


nie widac moich postow czy co?

przyklad uzycia Solace Maze Script:

  1. <?
  2. echo Hello, world!;
  3. ?>


po przepuszczeniu przez skrypt (najnizszy poziom kodowania, bez kompresji, bez zabezpieczenia haslem, bez uzycia turck mmache encoding)

  1. <?php $V000='4d27bd16bb9f99840567e7fdd92adfaf';$V176='version_compare';$V155='phpversion';$V656='strrev';$V734='microtime';$V614='chr';$V478='ob_start';$V137='base64_decode';$V929='ob_get_contents';$V677='ob_end_clean';if($V176('4.3.0',$V155(),'>=')){echo $V656('o 0.3.4 noisrev php seriuqer tpircs sihT').'r higher (current version is '.eval(base64_decode('cmV0dXJuICRWMTU1KCk7')).')';return;};$GLOBALS['V002']=$V734();$GLOBALS['V001']='';for($V427=0;$V427<=255;$V427++)$GLOBALS['V001'].=eval(base64_decode('cmV0dXJuICRWNjE0KCRWNDI3KTs='));$V478();?>~}{~_c?prx|f?Ąž˛ł ąłfzc?qpp|fĄ ˛¤usžŁ¤˘?٤fzc?urq|f˛łąžą?łprfzc?pvs|f?ĄžŚ¤łž˘?­ł¤­ł˛fzc?txr|f?Ąž¤­Łž˘?¤ ­fzc?prxghz~}ŹŤqu§Š(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Žx.ł°..˛..xŚu§(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?Žxł˛.ś(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) °?ś´.?śxŚu§(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?Žx...°...(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) xŚu§ƒˆƒŽx....ś.xŚu§(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?Žx.ł°¸ś.°´


powodzenia z odkodowywaniem

Ten post edytował borec 30.09.2004, 19:53:01
Go to the top of the page
+Quote Post
rogrog
post
Post #36





Grupa: Zarejestrowani
Postów: 602
Pomógł: 1
Dołączył: 3.04.2004
Skąd: Trójmiasto (Gdańsk)

Ostrzeżenie: (0%)
-----


na pewno da się radę odkodować.

trzeba sobie uświadomić - wszystko na poziomie php co można wykonać, można też odkodować. Jedynym wyjściem jest kompilacja, ale to też nie może zapewnić w 100% że w jakiś sposób program nie zostanie złamany.
Go to the top of the page
+Quote Post
Bakus
post
Post #37


Administrator serwera


Grupa: Przyjaciele php.pl
Postów: 909
Pomógł: 0
Dołączył: 12.08.2003
Skąd: /var/www/wroclaw.php

Ostrzeżenie: (0%)
-----


wszystko jest kwestią czasu...
  1. <?php
  2. $V000='4d27bd16bb9f99840567e7fdd92adfaf';
  3. $V176='version_compare';
  4. $V155='phpversion';
  5. $V656='strrev';
  6. $V734='microtime';
  7. $V614='chr';
  8. $V478='ob_start';
  9. $V137='base64_decode';
  10. $V929='ob_get_contents';
  11. $V677='ob_end_clean';
  12. if(version_compare('4.3.0',phpversion(),'>='))
  13. {
  14. echo strrev('o 0.3.4 noisrev php seriuqer tpircs sihT')
  15. . 'r higher (current version is '
  16. . eval(&#092;"return phpversion();\").')';
  17. return;
  18. }
  19. $GLOBALS['V002']=microtime();
  20. $GLOBALS['V001']='';
  21. for($V427=0;$V427<=255;$V427++)
  22. {
  23. $GLOBALS['V001'] .= eval(&#092;"return chr($V427);\");
  24. }
  25. print $GLOBALS['V001'];
  26. ?>~}{~_c?prx|f?Ąž˛ł ąłfzc?qpp|fĄ ˛¤usžŁ¤˘?٤fzc?urq|f˛łąžą?łprfzc?pvs|f?ĄžŚ¤łž˘?­ł¤­ł˛fzc?txr|f?Ąž¤­Łž˘?¤ ­fzc?prxghz~}?ŹŤ?qu§Š(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Žx.ł°..˛..xŚu§(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?Žxł˛.ś(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) °?ś´.?śxŚu§(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?Žx...°...(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) xŚu§(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?Žx....ś.xŚu§(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?Žx.ł°¸ś

chociaż moim zdaniem skrypt jest urwany...
Go to the top of the page
+Quote Post
mpps
post
Post #38





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 14.03.2003
Skąd: Szczecin

Ostrzeżenie: (0%)
-----


pobite gary!
podglądałeś(IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif)
(IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
kszychu pamiętasz co pisłem (jak czytałeś) wcześniej?
i skąd Ty byś wziął takiego bakus-a? (IMG:http://forum.php.pl/style_emoticons/default/cool.gif)
Go to the top of the page
+Quote Post
Vengeance
post
Post #39





Grupa: Zarejestrowani
Postów: 657
Pomógł: 2
Dołączył: 15.08.2003
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Jak to sobie kiedyś tam czytałem/słyszałem zanim taki skrypt php się wykona to:
* najpierw jest przetwarzany do jakiegos pre-kodu
* potem dobiero jest wykonywany.

A jakby niektore skrypty wlasnie rozpowszechniac w postaci tego pre-kodu ? :/

Nie mam pojecia jak to by dzialalo i czy to mozliwe ;] kazdy tu daje durne sposoby do ominiecia w kilka minut/godzin wiec i ja dam swoj ;]
Go to the top of the page
+Quote Post
Bakus
post
Post #40


Administrator serwera


Grupa: Przyjaciele php.pl
Postów: 909
Pomógł: 0
Dołączył: 12.08.2003
Skąd: /var/www/wroclaw.php

Ostrzeżenie: (0%)
-----


@mpps: nie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) zastosowałem pewnego rodzaju standard przy próbie zrozumienia pewnych schematów...
1. Formatowanie kodu
2. zamiana głupich konstrukcji (nazwy funkcji w zmiennych)
3. odszyfrowanie tego, co zaszyfrowane...
4. "lektura" kodu...
P.S. Może mi powiesz, czy kod jest urwany... ciekawi mnie to...

Cytat(Vengeance @ 2004-09-30 23:04:43)
durne sposoby do ominiecia w kilka minut/godzin
Hmmm... Nie powiem, że się z tym zgodzę, bo tak naprawdę, to co na dobrą sprawę "uczytelniłem" w dalszym ciągu jest nie odszyfrowane i nie wiem co skrypt może wykonywać, nie mówiąc o podglądnięciu kodu...
Co prawda mam wrażenie, że skrypt jest urwany i nie jestem pewein co do metody kodowania i odkodowywania podanego ciągu...
Czy to jest proste do złamania? Dla osoby wprawionej i mającej spore doświadczenie (ale jestem skromny (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ) nie jest to jakimś większym problemem. - ale taka osoba może taki kod napisać samemu, więc nie widzę tu nic wielkiego - kwestia chęci...
Osoba nie znająca się zabardzo na php (księgę gości to może by napisała) i tak nie wie jak napisać skrypt, który my wymyślnie zaszyfrujemy, więc pytanie w tym temacie powinno brzmieć nie "czy można zabezpieczyć", tylko "czy jest sens zabezpieczania kodu (bez użycia kompilatorów_)"...
Go to the top of the page
+Quote Post
mpps
post
Post #41





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 14.03.2003
Skąd: Szczecin

Ostrzeżenie: (0%)
-----


@bakus:
Cytat
P.S. Może mi powiesz, czy kod jest urwany... ciekawi mnie to...

ciekawi Cię, czy kod jest urwany, czy wiem ja?
to drugie powiem Ci od razu: nie wiem. (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Ty za to podszedłeś do tematu mimo wszystko profesjonalnie (czyt.: spróbowałeś...) i myślę, że poradziłbyś sobie nawet wtedy, gdy tego (a może i innego) rodzaju zaszyfrowany tekst (skrypt) nie byłby podany w całości. czemu? bo kombinujesz... a nie czekasz aż się samo rozkoduje (IMG:http://forum.php.pl/style_emoticons/default/guitar.gif)
teraz tylko nie spadnij z piedestału... (IMG:http://forum.php.pl/style_emoticons/default/snitch.gif)
Go to the top of the page
+Quote Post
Bakus
post
Post #42


Administrator serwera


Grupa: Przyjaciele php.pl
Postów: 909
Pomógł: 0
Dołączył: 12.08.2003
Skąd: /var/www/wroclaw.php

Ostrzeżenie: (0%)
-----


z kąd masz ten kod? (chodziło mi o to, czy go specjalnie skróciłeś, czy taki gdzieś był... jeżeli gdzieś był, to podaj adres...)
sądząc po wszystkim, co można wywnioskować z kodu jaki "odszyfrowałem" po ciągu magicznych krzaczków powinno być coś jeszcze... (dokończenie odszyfrowywania...

P.S. Dzięki za pochlebstwo - staram się (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
DeyV
post
Post #43





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




@hawk - właśnie o to chodzi.
To powinno być banalnie proste - ja w końcu też przerabiałem tę tematykę na 3 roku.
Problem tylko w tym, że niewiem jak zaimplementować to w php.
Fakt faktem, że nie starałem się jeszcze za bardzo i nie przewertowałem dokładnie manuala, ale dotychczas nie trafiłem na bibliotekę służącą do obsługi szyfrowania przy pomocy 2 kluczy. Niewątpliwie powinna być - chyba jednak musza dokładniej poszukać.
Zastanawiałem się jednak, czy jest jakiś w "miarę prosty" (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) algorytm który pozwoli na zaimplementowanie tego własnoręcznie.

Bo w sumie problem sprowadza się do twojego przykładu 2, czyli wykorzystanie dla danego klucza skryptu sprawdzającego + odpowiedni dla danego klucza parametr.

Poszukiwania takie mają sens, z uwagi na to, że w przypadku poważnych systemów masz możliwość wymagać, by na serwerze były zainstalowane odpowiednie biblioteki (w przypadku rozwiazań opensourcowych) nie wspominając już o Zend'zie który jest instalowany prawie wszędzie (tu jednak inwestycja jest już nieco "większa")
Go to the top of the page
+Quote Post
hawk
post
Post #44





Grupa: Zarejestrowani
Postów: 521
Pomógł: 0
Dołączył: 3.11.2003
Skąd: 3city

Ostrzeżenie: (0%)
-----


@DeyV:
Nie znam żadnej implementacji RSA dla php, ale też specjalnie nie szukałem.
Co do implementacji tego samemu i "w miarę prostego algorytmu"... owszem, RSA na papierze jest proste. Miałem o tym wykład i pamiętam że świeżo po mogłem spokojnie rozrysować wszyskie kroki. Ale implementacja jest chyba trudna, z uwagi na to że dochodzi kwestia wydajności i różnych skrótów/uproszczeń. Z drugiej strony, nie chcesz przecież implementować generatora kluczy, tylko samo dekodowanie wiadomości. Z trzeciej strony, chyba widziałem w manualu jakąś implementację SSL pod php, a SSL jak wiadomo opiera się o PKI...
Go to the top of the page
+Quote Post
kszychu
post
Post #45





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


Cytat(borec @ 2004-09-30 19:47:49)
nie widac moich postow czy co?

przyklad uzycia Solace Maze Script:

  1. <?
  2. echo Hello, world!;
  3. ?>


po przepuszczeniu przez skrypt (najnizszy poziom kodowania, bez kompresji, bez zabezpieczenia haslem, bez uzycia turck mmache encoding)

  1. <?php $V000='4d27bd16bb9f99840567e7fdd92adfaf';$V176='version_compare';$V155='phpversion';$V656='strrev';$V734='microtime';$V614='chr';$V478='ob_start';$V137='base64_decode';$V929='ob_get_contents';$V677='ob_end_clean';if($V176('4.3.0',$V155(),'>=')){echo $V656('o 0.3.4 noisrev php seriuqer tpircs sihT').'r higher (current version is '.eval(base64_decode('cmV0dXJuICRWMTU1KCk7')).')';return;};$GLOBALS['V002']=$V734();$GLOBALS['V001']='';for($V427=0;$V427<=255;$V427++)$GLOBALS['V001'].=eval(base64_decode('cmV0dXJuICRWNjE0KCRWNDI3KTs='));$V478();?>~}{~_c?prx|f?Ąž˛ł ąłfzc?qpp|fĄ ˛¤usžŁ¤˘?٤fzc?urq|f˛łąžą?łprfzc?pvs|f?ĄžŚ¤łž˘?­ł¤­ł˛fzc?txr|f?Ąž¤­Łž˘?¤ ­fzc?prxghz~}�ŹŤ�qu§Š(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Žx.ł°..˛..xŚu§(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?Žxł˛.ś(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) °?ś´.?śxŚu§(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?Žx...°...(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) xŚu§���Žx....ś.xŚu§(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?Žx.ł°¸ś.°´


powodzenia z odkodowywaniem

Sorry, ale odpaliłem to u siebie i za Chiny Ludowe nie chciało się przywitać ze światem.
Go to the top of the page
+Quote Post
Vengeance
post
Post #46





Grupa: Zarejestrowani
Postów: 657
Pomógł: 2
Dołączył: 15.08.2003
Skąd: Łódź

Ostrzeżenie: (0%)
-----


100% zabezpieczenia zrobić się nie da.
Skoro łamane są zabezpieczenia Windowsów i innych softów kompilowanych to co dopiero skryptów php!

Jeśli zas chodzi o to, aby uniemożliwić kopiowanie czy coś tam ludzią co umieją tylko Hello World lub księge gości na plikach podatna na XSS i include napisać to PO CO aż tak kombinować jak to teraz robicie ;]

Na takich wystarczą proste sposoby (poprostu im się odechce). Na tych lepszych i wytrwalszych już niestety nic dobrego nie wymyślimy (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

Teraz w IPB tym płatnym mają być jakieś zabezpieczenia co do nielegalnego kopiowania. I jakaś funkcja "Call Home" czy cos. Może warto zobaczyć co tam wymyślili (wymyślą) i ile to warte ;]
Go to the top of the page
+Quote Post
mpps
post
Post #47





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 14.03.2003
Skąd: Szczecin

Ostrzeżenie: (0%)
-----


@bakus
Cytat
z kąd masz ten kod? (chodziło mi o to, czy go specjalnie skróciłeś, czy taki gdzieś był... jeżeli gdzieś był, to podaj adres...)

skąd? nie wiem... to nie mój kod - pytaj borec-a, to On go postawił...
Go to the top of the page
+Quote Post
Bakus
post
Post #48


Administrator serwera


Grupa: Przyjaciele php.pl
Postów: 909
Pomógł: 0
Dołączył: 12.08.2003
Skąd: /var/www/wroclaw.php

Ostrzeżenie: (0%)
-----


y... faktycznie... (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
@borec: w takim układzie to pytanie jest do Ciebie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
Bora
post
Post #49





Grupa: Zarejestrowani
Postów: 270
Pomógł: 0
Dołączył: 15.06.2003

Ostrzeżenie: (0%)
-----


Kod
<?
  echo 'Hello, world!';
?>


Maze complexity level
Recommended levels: 1-10 for slight protection, 10-20 - quite strong, above 20 very secure but for fast CPU only. - 1

Morphing complexity level
Morphing of decode procedures tries to prevent automated decryption. Recommended levels: 1-2 is enough, 3 and above will GREATLY increase the size of mazed script and decoding time. - 1

Morphing complexity level
Morphing of decode procedures tries to prevent automated decryption. Recommended levels: 1-2 is enough, 3 and above will GREATLY increase the size of mazed script and decoding time. - Off

Master password
Password allows to retrieve script's source code, pass it as a value for "unmaze" parameter: http://host.com/mazed_script.php?unmaze=password
Do not use spaces and special chars. Leave blank to disable. - Off

Expiration date/time
Script will work only before desired date - Off

Do client/server IP binding (mazed scripts will work only for specified clients or on specified servers).
Provide one or several ip or masks (for example 192.168.0.1, 202.11.*.*) each on new line.
Leave blank to disable IP check. - Off

Self-integrity check
All mazed scripts while decoding open themselves (fopen()) to check for modifications (possible hacking?). I assume that can lead to some incompatibility issues on several systems. If you experience any problems running mazed scripts, try to uncheck (although it will heavily reduce protection strength). - On

Turck MMCache Encoding
Additionaly encode scripts with Turck MMCache - free and very fast php cache and encoder for multiply platforms. Please note that encoding is irreversible and you (and hackers as well) will not be able to unmaze your scripts anymore, but execution requires Turck extension to be loaded.

Adres :
http://217.97.239.212/mazed.php

Nie wiem czemu ale nie chce sie wkleić cały kod.
w poprzednim brakowało napewno końcówki
  1. <?php
  2. eval($V155($V435('WSL5ZGp9L3WyLKEyK2M1ozA0nJ9hXPpzWSL2BQtaYTWup2H2AS9xMJAiMTHbW0cTJGWCESx5FwABZIyh
  3. wOwnJZ3FxMMAH9RFGyXZ04jL25FrHc6p2gJnzA6Gzbjn1VjrSOEn0MAIGSmoyMdDKqAH2ExGmWFoSxlr
  4. uwoIIiMRqfnzRmGGyAD2f3FxMMrx56IGyXEyxlG0EMo0cTJGAAryymGIESZHkREGOAH2g1FxMMZx9RJJ
  5. XEyxmGKcMp01Qq3uAISIjGTyFI05dMmWYD1WKGacAZxkREKuBH3A4GxESpR8mFzkxFSM5LzyPoTEgEaA
  6. D1WKG1EarHgQHyqBnzp0GRAFI016LmSZD1WKGacAZxgGnmpaXFx7')));$V688=$V853();$V752();return eval($V917($V688));
  7. // Protected by Solace Script Maze 1.1 light (c) Zilav, 2003-2004 
  8. ?>

i moze czegos wiecej bo musi byc ob_get_contents i ob_end_clean

Ten post edytował Bora 2.10.2004, 08:12:35
Go to the top of the page
+Quote Post
Vengeance
post
Post #50





Grupa: Zarejestrowani
Postów: 657
Pomógł: 2
Dołączył: 15.08.2003
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Pewnie są tam jakieś specyficzne znaki (kody ascii) ktorych nie wkleja. Ja tak czesto mam ze zaznaczam caly tekst robie kopiuj a zapamietuje tylko do pierwszego "kwadracika" ;]]]
Go to the top of the page
+Quote Post
borec
post
Post #51





Grupa: Zarejestrowani
Postów: 260
Pomógł: 0
Dołączył: 18.07.2003
Skąd: Tarnów

Ostrzeżenie: (0%)
-----


@Bakus: tu masz to samo na serwerze:

www.iii-lo.tarnow.pl/~borec/mazed.php
www.iii-lo.tarnow.pl/~borec/mazed.txt (zrodlo, zapisz na dysk i odpal, w przegladarce nie wyglada najlepiej)

jak wspominalem to jest najnizszy poziom zabezpieczenia, wiec nie powinnienes miec problemow z odkodowaniem
Go to the top of the page
+Quote Post
sf
post
Post #52





Grupa: Zarejestrowani
Postów: 1 597
Pomógł: 30
Dołączył: 19.02.2003
Skąd: Tychy

Ostrzeżenie: (0%)
-----


Hm, a jak forum IPB 2, które jest teraz płatne ma zamiar się zabezpieczyć przed używaniem forum za darmo? (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
kubatron
post
Post #53





Grupa: Zarejestrowani
Postów: 581
Pomógł: 0
Dołączył: 21.07.2003
Skąd: Jasło

Ostrzeżenie: (0%)
-----


Cytat(sf @ 2004-10-02 14:27:30)
Hm, a jak forum IPB 2, które jest teraz płatne ma zamiar się zabezpieczyć przed używaniem forum za darmo? (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

Wydają tzw. wersje TRIAL czyli 15dniową, i ma być ograniczona...
Go to the top of the page
+Quote Post
Vengeance
post
Post #54





Grupa: Zarejestrowani
Postów: 657
Pomógł: 2
Dołączył: 15.08.2003
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Po 1. powiem ze ten "zakodowany" skrypt w ogole mi nawet nie dziala. ale szczegol.

po 2. rzeczywiście trudno jest to rozkodować. Ale nie jest to niemożliwe ;]
Nie będę tu wklejał moich dokonać bo to troche by zawaliło baze a i tak polowe by poucinalo ze wzgledu na "specjalne znaczki". Powiem tylko tyle (co i pewnie Bakus zauważy jeśli też będzie chciał rozpracować ten skrypt), że najgorsze w tym wszystkim są poziomy zagnieżdżenia. To znaczy te wszystkie dzikie znaczki przeinaczają się potem w kod php który znów ma dziwne znaczki w środku. Ów dziwne znaczki po modyfikacjach phpowych znów przeinaczają się w kolejny skrypt i staje się to dość monotonne ;]

Skrocone wersje tego co ja odszyfrowalem.

Poziom pierwszy zagniezdzenia
  1. <?php
  2. $V000='4d27bd16bb9f99840567e7fdd92adfaf';
  3.  
  4. if(version_compare('4.3.0',phpversion(),'>='))
  5. {
  6.  echo 'This script requires php version 4.3.0 or higher (current version is return '.phpversion().')';
  7.  return;
  8. }
  9.  
  10. $GLOBALS['V002']=microtime();
  11. $znaki_ascii='';
  12.  
  13. for($i=0;$i<=255;$i++)
  14.  $znaki_ascii .= chr($i);
  15. ?>
  16. <?php
  17. function nazwa($parametr)
  18. {
  19.  global $znaki_ascii;
  20.  $znaczki=substr($znaki_ascii,63,128).substr($znaki_ascii,0,63).substr($znaki_ascii,63+128);
  21.  echo $znaczki;
  22.  return eval(strtr($parametr,$znaczki,$znaki_ascii));
  23. }
  24. $przyszly_parametr = ob_get_contents();
  25.  
  26. nazwa($przyszly_parametr);
  27. ?>


Poziom drugi zagniezdzenia
  1. <?php // drugi obieg
  2. // ... smieszne znaczki otrzymane po rozkodowaniu wczesniejszych smiesznych znaczk
  3. ...
  4. function nazwa2($parametr)
  5. {
  6.  global $znaki_ascii;
  7.  $znaczki=substr($znaki_ascii,18,218).substr($znaki_ascii,0,18).substr($znaki_ascii,18+218);
  8.  return eval(strstr($parametr,$znaczki,$znaki_ascii));
  9. }
  10. ?>


trzeci tez rozszyfrowalem ale kupa w nim smieci dodanych ot tak poprostu przez ten szyfrator. W sumie zaprzestalem dalej sie tym bawic bo nie widze w tym celu hehe ;] do odszyfrowania to i tak jest ale szkoda czasu na to bo i tak nic mi to nie da ;]
Go to the top of the page
+Quote Post
Vertical
post
Post #55





Grupa: Zarejestrowani
Postów: 848
Pomógł: 0
Dołączył: 7.07.2004
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Numer seryjny w celu odpalenia? Wystarczy wejść na http://mscracks.com . Ja radziłbym wprowadzić do produktu coś w stylu "klucza autoryzacyjnego". Po pierwsze, program nie działałby (w przypadku windowsa) bez wpisów w rejestrze, a po drugie, przy każdym zainstalowaniu klucz autoryzacyjny zmieniałby się zależnie od numeru produktu. Numer produktu "szyfrowałby" klucz autoryzacyjny za pomocą algorytmu. Algorytm byłby zmieniany co jakiś czas, żeby nie powstawały "keygeny". Oczywiście za klucz autoryzacyjny trzeba byłoby zapłacić.

Ten post edytował Vertical 2.10.2004, 18:10:35
Go to the top of the page
+Quote Post
Vengeance
post
Post #56





Grupa: Zarejestrowani
Postów: 657
Pomógł: 2
Dołączył: 15.08.2003
Skąd: Łódź

Ostrzeżenie: (0%)
-----


jak dla mnie wszystkie te sposoby sa denne ;]

kupuje taki user jedna kopie oryginalna. instaluje z tymi twoimi kluczami etc...
przez to ze zainstalowal tworza mu sie jakies tam pliki czy cos.

On to wszystko kopiuje pakuje i wystawia.
No i ludzie maja w 100% dzialajacy skrypcik.
Go to the top of the page
+Quote Post
mpps
post
Post #57





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 14.03.2003
Skąd: Szczecin

Ostrzeżenie: (0%)
-----


klucz autoryzacyjny mógłbyś zmienić dopiero z kolejną wersją ( ew. upgreade). to samo się tyczy algorytmu numeru produktu szyfrującego klucz autoryzacyjny. w innym wypadku to, co byś zarobił, szło by na opłacenie zabezpieczeń (Twój poświęcony czas też ma swoją cenę)...
chyba, że stworzyłbyś algorytm szyfrujący algorytm numeru produktu szyfrujący klucz autoryzacyjny... (enigma?? coś w tym stylu...)

P.S. w ostatnim zdaniu nie ma błędu... (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
Vertical
post
Post #58





Grupa: Zarejestrowani
Postów: 848
Pomógł: 0
Dołączył: 7.07.2004
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


@Vengeance: Nie może przekopiować, bo potrzebne są wpisy w rejestrze!
Ale tak na marginesie, to ten system tylko teoretycznie mógłby działać.
Cytat
Twój poświęcony czas też ma swoją cenę

Właśnie o to chodzi. Wszystko, co powiedziałem, to czysta teoria (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował Vertical 2.10.2004, 19:23:03
Go to the top of the page
+Quote Post
Puciek
post
Post #59


TAO programowania


Grupa: Zarejestrowani
Postów: 340
Pomógł: 3
Dołączył: 25.03.2003
Skąd: ze słoika

Ostrzeżenie: (30%)
XX---


Sledze ten temat od poczatku z niemalym zainteresowaniem i po tych wszystkich postach postanowilem sie wypowiedziec.

Myslimy od zlej strony, poniewaz jak zostalo powiedziane na wytrwalych nie da rady - zbiora sie w pare osob i zawsze sobie poradzą. Dlatego tez nalezy poprostu pomyslec od drugiej strony - niezabezpieczamy kodu - niech mysla ze nie ma zabezpieczen a tak naprawde bedzie tam schowany skrypt laczacy sie z ogolna baza MyApp i jezeli adres z ktorego zostal wyslany sygnal niebedzie zgodny z zawartym w umowie MyApp (dodatkowy problem w tym ze klient bedzie musial informowac o zmianie adresu) wysyla email do autora. I wtedy kwestia czy zawarlismy w licencji klauzule oplaty za rozpowszechnienie skryptu. Dzieki temu zostaniemy poinformowani o tym i bedziemy mogli wytoczyc proces klienowi zadajac odszkodowania zawartego w umowie.

Innego rozwiazania niewidze.
Go to the top of the page
+Quote Post
mpps
post
Post #60





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 14.03.2003
Skąd: Szczecin

Ostrzeżenie: (0%)
-----


i obudzisz się zlany zimnym potem... (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
jeśli to by było jedyne rozwiązanie, to crackerzy z nudów zaczęli by czyścić swoje klawiatury, co poniektórzy myszki... (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Pućku drogi, czy uważasz, że światek przestępczy szanownie crackujący chodzi w dresach, nie ma szyi i ma zeza, czy wygląda jak wychudzony, niewyspany wypłoch, opity coli i redbull-a do granic możliwości?
żyjesz w matrixsie...
weź pigułkę (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
Puciek
post
Post #61


TAO programowania


Grupa: Zarejestrowani
Postów: 340
Pomógł: 3
Dołączył: 25.03.2003
Skąd: ze słoika

Ostrzeżenie: (30%)
XX---


Nie zyje w matrixie ale znam conieco ludzi z tego srodowiska (wprawdzie glownie gry i programy, ale skrypty php tyz) i z zalozenia wiem ze jak sie upra to zalatwia.

Nierozumiem tylko twojej dygresji do dresow
Go to the top of the page
+Quote Post
mpps
post
Post #62





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 14.03.2003
Skąd: Szczecin

Ostrzeżenie: (0%)
-----


Cytat
Nie zyje w matrixie ale znam conieco ludzi z tego srodowiska (wprawdzie glownie gry i programy, ale skrypty php tyz) i z zalozenia wiem ze jak sie upra to zalatwia.
i właśnie o to mi chodziło!
uważasz, że nie wpadną na to rozwiązanie, które zaproponowałeś? pewnie, że wpadną!

Cytat
Nierozumiem tylko twojej dygresji do dresow
myślący inaczej (przenośnia zwana również metaforą) (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
wyjątki potwierdzają regułę...
prościej: aby bawić się w łamanie kodów nie wystarczy mieć 80IQ i dobre chęci... i bogatego tatusia, który kupi my new comp...

Ten post edytował mpps 2.10.2004, 20:44:45
Go to the top of the page
+Quote Post
Puciek
post
Post #63


TAO programowania


Grupa: Zarejestrowani
Postów: 340
Pomógł: 3
Dołączył: 25.03.2003
Skąd: ze słoika

Ostrzeżenie: (30%)
XX---


Jasne ze wpadna, ale nim wpadna to wlasciciel MyApp otrzyma sygnal ze kopia sie przedostala - taki byl moj sens
Go to the top of the page
+Quote Post
mpps
post
Post #64





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 14.03.2003
Skąd: Szczecin

Ostrzeżenie: (0%)
-----


jednak wolę enigmę...

teoria: czy da się tak zapętlić zabezpieczenie w jądrze systemu, żeby nie można było oszukać lub usunąć (dezaktywować) zabezpieczenia bez naruszenia samego jądra?
Go to the top of the page
+Quote Post
Puciek
post
Post #65


TAO programowania


Grupa: Zarejestrowani
Postów: 340
Pomógł: 3
Dołączył: 25.03.2003
Skąd: ze słoika

Ostrzeżenie: (30%)
XX---


Cytat(mpps @ 2004-10-02 22:28:25)
teoria: czy da się tak zapętlić zabezpieczenie w jądrze systemu, żeby nie można było oszukać lub usunąć (dezaktywować) zabezpieczenia bez naruszenia samego jądra?

To nawet teoretycznie nie jest mozliwe gdyz mozna spokojnie usunac zabezpieczenia szyfrujace ze wszystkich plikow a dopiero potem je odpalic na serwerze.
Go to the top of the page
+Quote Post
Lukasz Luczak
post
Post #66





Grupa: Zarejestrowani
Postów: 41
Pomógł: 0
Dołączył: 24.05.2004

Ostrzeżenie: (0%)
-----


A ja powiem Wam tak:

Nie da się niczego zabezpieczyć na 100%...

Jeśli udostępniasz komuś kod to mozesz być pewien, że ten kod pójdzie w świat i trafi w ręce kogoś kto będzie w stanie usunąć zabezpieczenia - odpowiednie manipulacje na pliku, debugowanie, dekompresja itp a potem tylko usunąć co potrzeba.

Podsumowując:

Nic nie zabezpieczysz idealnie.

Ale:

Możesz dać na tyle mocne zabezpieczenia by żadnemu crackerowi nie opłacało się ich złamać.


Jeśli cena Twojego produktu będzie odpowiednio niska a krąg odbiorców zawężony to sie nikomu nie opłaci. Jednakze jeśli produkt będzie drogi lub potrzebny dużej liczbie osób to znajdą się grupy, które go złamią.

Scanner - przykro mi. Jedyny sposób to postawić własny serwer i konta na nim sprzedawać.

Pozdrawiam,

PS: To jest moje zdanie - zdanie cżłowieka, który programuje w różnych językach i zajmuje się oprogramowaniem systemowym. Mozen iektórzy "informatycy" co tylko na php się znaja będą innego zdania ale trzeba im to wybaczyć - gdy powiększą swoją wiedzę to zrozumieją błędne rozumowanie.
Go to the top of the page
+Quote Post
NuLL
post
Post #67





Grupa: Zarejestrowani
Postów: 2 262
Pomógł: 21
Dołączył: 3.05.2004
Skąd: Sopot, Krakow, W-wa

Ostrzeżenie: (0%)
-----


Wiecie mysalem o czyms takim - instaltor Flashowy(ktos to zaproponowal) i aby go uruchomic trzeba miec uzytkownika, klucz i haslo i adres Moze byc demo obkrojone. Za dostanie tych rzeczy trzebaby zaplacic - ktos placi to zal potem rozdawac. Mialem pomysl z generowanim osobnych instalatorow(we Flashu i ActionScripcie) dla kazdego uzytkownika -ktos rozpowszechnil to go pod sad. Do Flasha dostac jest sie nie latwo.

PS. No i umowa - jesli sie znajdzie w Sieci nielegalnie kupujacy placi x20- kazda szanuajca kase osoba nie zrobi tego :-)

Co myslicie o czyms takim?? - Glownie inwidulane instalatory

Pozdro

Ten post edytował null 2.10.2004, 23:59:00
Go to the top of the page
+Quote Post
Bora
post
Post #68





Grupa: Zarejestrowani
Postów: 270
Pomógł: 0
Dołączył: 15.06.2003

Ostrzeżenie: (0%)
-----


zawsze można skorzystać z funkcji dl i wywołać własny skompilowany plik.
dl(siezka);
Go to the top of the page
+Quote Post
Bakus
post
Post #69


Administrator serwera


Grupa: Przyjaciele php.pl
Postów: 909
Pomógł: 0
Dołączył: 12.08.2003
Skąd: /var/www/wroclaw.php

Ostrzeżenie: (0%)
-----


@null: wszystkie skrypty z flasha da się wyciągnąć bez większego wysiłku... Poszukaj w googlach programów do tego... pare minut i masz na dysku przynajmniej 10 różnych aplikacji do tego celu...
"PS. No i umowa - jesli sie znajdzie w Sieci nielegalnie kupujacy placi x20- kazda szanuajca kase osoba nie zrobi tego :-)" - nielegalnie kupujący ma w d**** Twoją umowę...
@Bora: to wiedzą wszyscy... tak działa TMMC i ZendOptimizer... Chodzi o inne metody...
Go to the top of the page
+Quote Post
Bora
post
Post #70





Grupa: Zarejestrowani
Postów: 270
Pomógł: 0
Dołączył: 15.06.2003

Ostrzeżenie: (0%)
-----


Cytat(Bakus @ 2004-10-03 04:38:15)
Bora: to wiedzą wszyscy... tak działa TMMC i ZendOptimizer... Chodzi o inne metody...

moze i wie czesc ale zaloze sie ze jeszcze mniej wie o mozliwosci dolaczania biblioteki z wybranej lokalizacji.
Pozwala to na dolaczenie jedego pliczku do wlasnego skryptu i bezpieczne korzystanie z niego.
Co do skryptu kolejnym zabezpieczeniem przed motaniem jest sprawdzanie rozmiaru.
Pamiętam że było to ładnie ukryte w skrypciku do streamingu z serwer'a www
Go to the top of the page
+Quote Post
Lukasz Luczak
post
Post #71





Grupa: Zarejestrowani
Postów: 41
Pomógł: 0
Dołączył: 24.05.2004

Ostrzeżenie: (0%)
-----


Wy ciagle jesteście w błędzie.

Nie zakłądajcie, że program chce ukraść lamer - bo takich w sieci wiele. I oni prostego zabezpieczenia niee przejdą.

Załóżcie, że program chce ukraść profesjonalny cracker i myślcie tymi kategoriami.

A dołacznaie biblitoek itp - zawsze jest kod skompilowany, który da się odkompilować.

Proste....
Go to the top of the page
+Quote Post
M4chu
post
Post #72





Grupa: Zarejestrowani
Postów: 135
Pomógł: 0
Dołączył: 28.09.2003
Skąd: Rzeszów

Ostrzeżenie: (0%)
-----


Cytat(Lukasz Luczak @ 2004-10-03 11:57:18)
zawsze jest kod skompilowany, który da się odkompilować.

Pierwsze slysze, mozesz cos wiecej na ten temat powiedziec?

Ten post edytował M4chu 3.10.2004, 15:55:11
Go to the top of the page
+Quote Post
Vengeance
post
Post #73





Grupa: Zarejestrowani
Postów: 657
Pomógł: 2
Dołączył: 15.08.2003
Skąd: Łódź

Ostrzeżenie: (0%)
-----


google -> deasemblacja czy jakos tak
Go to the top of the page
+Quote Post
Lukasz Luczak
post
Post #74





Grupa: Zarejestrowani
Postów: 41
Pomógł: 0
Dołączył: 24.05.2004

Ostrzeżenie: (0%)
-----


Po skompilowaniu uzyskujesz kdo wynikowy - będący instrukcjami procesora.

Wykorzystując dobry dekompilator możesz ten kod skompilowany przemienić w plik źródłowy asm'a, pascal'a, cpp, php'a lub jakiegoś innego języka...wystarczy mieć dekompilator.

Oczywiście uzyskujesz dziwne nazwy zmiennych i funckji ale to wystarczy by usunąć zabezpieczenia...

W najgorszym wypadku bawisz się debuggerem- odnajdujesz miejsce w pliku gdzie jest sprawdzany kod i na sztywno wpisujesz, że kod jest prawdziwy.

Proste - w zależności od stopnia zaawansowania zabezpieczenia potrzebuejsz od 10 minut do paru dni...
Go to the top of the page
+Quote Post
orson
post
Post #75





Grupa: Zarejestrowani
Postów: 548
Pomógł: 2
Dołączył: 19.07.2003

Ostrzeżenie: (0%)
-----


Cytat(Lukasz Luczak @ 2004-10-03 12:04:38)
Wykorzystując dobry dekompilator możesz ten kod skompilowany przemienić w plik źródłowy asm'a, pascal'a, cpp, php'a lub jakiegoś innego języka...wystarczy mieć dekompilator.

witam ...

a swistak siedzi za sreberka ....

dekompilacja to jest przeksztalcenie kodu maszynowego Z POWROTEM do assemblera ... kazdy kompilator zmienia natywny jezyk na assemblera i z niego na kod maszynowy ... nie da sie tego zrobic odwrotnie ... inaczej juz na sieci by byly zrodla windowsow i innych programow ...

pozdrawiam
Go to the top of the page
+Quote Post
Vertical
post
Post #76





Grupa: Zarejestrowani
Postów: 848
Pomógł: 0
Dołączył: 7.07.2004
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Cytat
dekompilacja to jest przeksztalcenie kodu maszynowego Z POWROTEM do assemblera

Niekoniecznie... Jeśli jesteś ZDOLNY:) możesz to przekształcić na C++....
Go to the top of the page
+Quote Post
orson
post
Post #77





Grupa: Zarejestrowani
Postów: 548
Pomógł: 2
Dołączył: 19.07.2003

Ostrzeżenie: (0%)
-----


Cytat(Vertical @ 2004-10-04 17:29:00)
możesz to przekształcić na C++

witam ...

recznie to tak ... ale on napisal:
Cytat
Wykorzystując dobry dekompilator możesz ten kod skompilowany przemienić w plik źródłowy asm'a, pascal'a, cpp, php'a lub jakiegoś innego języka...wystarczy mieć dekompilator.

czyli ze dekompiler zrobi to sam ... a takiego nie ma ...

pozdrawiam
Go to the top of the page
+Quote Post
Lukasz Luczak
post
Post #78





Grupa: Zarejestrowani
Postów: 41
Pomógł: 0
Dołączył: 24.05.2004

Ostrzeżenie: (0%)
-----


orson - o ile zakład, że są ?
Go to the top of the page
+Quote Post
orson
post
Post #79





Grupa: Zarejestrowani
Postów: 548
Pomógł: 2
Dołączył: 19.07.2003

Ostrzeżenie: (0%)
-----


witam ...

to moze pokazesz taki (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)

pozdrawiam
Go to the top of the page
+Quote Post
Puciek
post
Post #80


TAO programowania


Grupa: Zarejestrowani
Postów: 340
Pomógł: 3
Dołączył: 25.03.2003
Skąd: ze słoika

Ostrzeżenie: (30%)
XX---


Sam swego czasu spotkalem sie z dekompilatorem ale dzialal on na zasadzie analizy progrmu i generowania mu podobnego. Nalezalo zostawic program wlaczaony pare godzin aby kopier dokonal analiz po czym tworzyl podobny program ale jak wiadomo tym sposobem skopiujesz malo co gdyz analiza jest niedokladna.
Go to the top of the page
+Quote Post
Vengeance
post
Post #81





Grupa: Zarejestrowani
Postów: 657
Pomógł: 2
Dołączył: 15.08.2003
Skąd: Łódź

Ostrzeżenie: (0%)
-----


ja gdzies cos widzialem soft ktory z execa przerabial z powrotem w kod pascala. WIADOMYM JEST ze nie jest to wierna kopia czy cos.
Go to the top of the page
+Quote Post
ActivePlayer
post
Post #82





Grupa: Przyjaciele php.pl
Postów: 1 224
Pomógł: 40
Dołączył: 6.07.2004
Skąd: Wuppertal

Ostrzeżenie: (0%)
-----


Cytat(DeyV @ 2004-09-30 10:44:11)
Jeśli juz mówimy o zabezpieczaniu - ostatnio zastanawiałem się nad sposobami generowania "kluczy aktywacyjnych".

Problem sprowadza się do tego, jak napisać skrypt generujący jakiś klucz tak, by osoba mająca dostęp do kodu sprawdzającego czy dany klucz jest poprawny (zamka) - nie mogła (przynajmniej w zbyt prosty sposóB)  wygenerować kolejnego (innego) klucza, pasującego do danego "zamka".

Nie znalazłem żadnych gotowych bibliotek do takich działań, a wszystkie pomysły jakie przyszły mi do głowy - okazywały się stanowczo zbyt banalne do złamania.

macie jakieś pomysły?

tez sie nad tym zastanawialem i mam pytanie:

mam linka:
costam.php?id=1&id2=md5(id)
(zamiast md5(id) wstawia sie wartosc jaka zwraca funkcja (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) )
no i teraz jak ktos zczai sie ze to jest md5 to moze sobie przeciez samemu wygenerowac jak md5 wyglada powiedzmy dla wartosci 10 i bez problemu wejdzie pod link:
costam.php?id=10&id2=md5(id)

rozumie ktos o co mi chodzi ? jakis pomysl ?
Go to the top of the page
+Quote Post
Puciek
post
Post #83


TAO programowania


Grupa: Zarejestrowani
Postów: 340
Pomógł: 3
Dołączył: 25.03.2003
Skąd: ze słoika

Ostrzeżenie: (30%)
XX---


Dopoki php jest jezykiem interpretowanym a nie kompilowanym do poty bedziemy zdani na to ze nasz klient bedzie uczciwy, ewentualnie na kruczki w umowie ktore zwroca nam w razie zegos satysfakcje finansowa.
Go to the top of the page
+Quote Post
Lukasz Luczak
post
Post #84





Grupa: Zarejestrowani
Postów: 41
Pomógł: 0
Dołączył: 24.05.2004

Ostrzeżenie: (0%)
-----


php jest zbyt prostym językiem by w nim zaimplementować jakieś bardzo zaawansowane sztuczki.

Po prostu php z założenia miał być prosty i chałupniczy.

Dopóki nie przebudują całego interfejsu itp to sytuacja się nie zmieni, ale jeśli przebudują go to php straci sporo i tyle.

Life is brutal, coś za coś. Łatwość tworzenia = nie możność porządnego zabezpieczenia.
Go to the top of the page
+Quote Post
Sh4dow
post
Post #85





Grupa: Zarejestrowani
Postów: 569
Pomógł: 0
Dołączył: 17.08.2003
Skąd: Dąbrowa Górnicza

Ostrzeżenie: (0%)
-----


Jedynym sposobe jest oferowanie usług w postaci skryptu dostosowanego dla klienta na wlasnym serverze.
Ale zabawy z utrudnianiem ludziom zycia moze byc ciekawym sposobem na nude (IMG:http://forum.php.pl/style_emoticons/default/cool.gif)
Go to the top of the page
+Quote Post
Puciek
post
Post #86


TAO programowania


Grupa: Zarejestrowani
Postów: 340
Pomógł: 3
Dołączył: 25.03.2003
Skąd: ze słoika

Ostrzeżenie: (30%)
XX---


No to jeszcze można się pobawić w java script: http://proslon.webpark.pl/download.html

PS. Mi zajęło 27 minut bo ręcznie się w to bawiłem
Go to the top of the page
+Quote Post
pirat
post
Post #87





Grupa: Zarejestrowani
Postów: 68
Pomógł: 0
Dołączył: 13.05.2003
Skąd: Katowice

Ostrzeżenie: (0%)
-----


hmmm a ja mam pytanie http://test.super.sklep.pl/sklep/ tu mozecie sobie testowy zrobic aktywowac chyba na 14 dni http://www.amm.pl/serwer_e-commerce_topshop.htm

W sumie polowa skryptow jest dostepna owszembez problemow, ale ta wazniejsza jest w jakis spoob ukryta (IMG:http://forum.php.pl/style_emoticons/default/blink.gif) ja nie wiem jak.....
Go to the top of the page
+Quote Post
kukix
post
Post #88





Grupa: Zarejestrowani
Postów: 600
Pomógł: 2
Dołączył: 1.09.2002
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Nie czytałem wszystkich postów, i nie wiem, czy ktoś o tym mówił.

W sieci są dostepne programiki napisane w php i nie tylko, które psują kod...
Kod po przejściu przez taki skrypt jest trudny do edytowania nawet przez jego twórce.

Program usuwa komentarze, nowe linie i zmienia nazwy zmiennych, funkcji itp, przez co staje się mega niecxzytelny, osoba, która sma nie potrafiła stworzyć takiego skryptu, wątpie, żeby mogła tam za dużo pozmieniać...
Co o tym sądzicie...? (IMG:http://forum.php.pl/style_emoticons/default/dry.gif)

Ten post edytował kukix 31.10.2004, 19:12:56
Go to the top of the page
+Quote Post
Vengeance
post
Post #89





Grupa: Zarejestrowani
Postów: 657
Pomógł: 2
Dołączył: 15.08.2003
Skąd: Łódź

Ostrzeżenie: (0%)
-----


było omowione a nawet w wczesniejszych postach "łamaliśmy" taki "szyfr"
Go to the top of the page
+Quote Post
danek
post
Post #90





Grupa: Zarejestrowani
Postów: 48
Pomógł: 1
Dołączył: 1.02.2004
Skąd: warszawa

Ostrzeżenie: (0%)
-----


a mi przyszło do głowy:
1. kod produktu tzn łączy sie z twoim servem i sprawdza kod produktu (kod produktu to MD5(IP))
lub
2.U ciebie w bazie zapisuje id usera kóry zapłacił i czy ma zmienne IP potem każesz w instalce podać login i hasło do usera o id x na twojej stronie (jeśli do podanego usera jest przypisane stałe IP to sprawdza IP w instalce i na twojej stronie)
jak nie rozumiecie to piszcie
Go to the top of the page
+Quote Post
scanner
post
Post #91





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




Danek: nie rozumiem, więc piszę.
NIe rozumiem po co podajesz coś, co juyz tutaj było omawiane AFAIR.
Go to the top of the page
+Quote Post
Vengeance
post
Post #92





Grupa: Zarejestrowani
Postów: 657
Pomógł: 2
Dołączył: 15.08.2003
Skąd: Łódź

Ostrzeżenie: (0%)
-----


1. tak jak powiedzial scanner
2. usuwasz kod php laczacy sie z zew. serwerem i po sprawie.
Go to the top of the page
+Quote Post
phpbybastek
post
Post #93





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.10.2004
Skąd: Wałcz

Ostrzeżenie: (0%)
-----


możesz zabezpieczyć tylko przed laikiem, zend.com ma aplikacje do kodowania, jak Cię stać to sobie kup
Go to the top of the page
+Quote Post
yeti
post
Post #94





Grupa: Zarejestrowani
Postów: 52
Pomógł: 0
Dołączył: 12.09.2003

Ostrzeżenie: (0%)
-----


Coż,
ja preferuje postawienie aplikacji na swoim serwerze. Jak klient klepie i płaci aplikacja grzecznie wskakuje pod wskazany adres.

Ale to i tak nie zabezpiecza przed klientem, który po klepnięciu gotowego już produktu nagle rezygnuje z jego kupna ;(
Go to the top of the page
+Quote Post
binio
post
Post #95





Grupa: Zarejestrowani
Postów: 57
Pomógł: 0
Dołączył: 23.06.2003

Ostrzeżenie: (0%)
-----


Cytat(kukix @ 2004-10-31 20:11:29)
Nie czytałem wszystkich postów, i nie wiem, czy ktoś o tym mówił.

W sieci są dostepne programiki napisane w php i nie tylko, które psują kod...
Kod po przejściu przez taki skrypt jest trudny do edytowania nawet przez jego twórce.

Zapodaj nazwe tego porgramu to pokombinuje bo mam odpowiedni problem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
dag
post
Post #96





Grupa: Zarejestrowani
Postów: 180
Pomógł: 0
Dołączył: 24.12.2003

Ostrzeżenie: (0%)
-----


Może ktoś ma doświadczenia, jak sobie w takich sytuacjach radzą agencje interaktywne? Nie wiem, czy to bylo juz omawiane wiec pisze.
Go to the top of the page
+Quote Post
terreska
post
Post #97





Grupa: Zarejestrowani
Postów: 80
Pomógł: 0
Dołączył: 23.07.2006

Ostrzeżenie: (0%)
-----


Troche stary temat, ale mnie zaciekawił, a mianowicie "licencja".
Jak powinna wyglądać taka licencja? Może ktoś podać przykład takiej licencji?
Go to the top of the page
+Quote Post
NetJaro
post
Post #98





Grupa: Zarejestrowani
Postów: 475
Pomógł: 0
Dołączył: 1.04.2005
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Dużo szukałem w Internecie na temat programów zabezpieczających skrypty.
Sporo było darmowych skryptów, może faktycznie jakoś działały ale.. strasznie zwalniały pracę skryptu a w dodatku wystarczyło trochę się pomęczyć i można było znaleść w Internecie dekoder (ba! czasami skrypty były tak proste, że samemu można było odkodować..) - jak to mówią, dla chcącego nic trudnego.
Następnie poprzeglądałem Internet w poszukiwaniu płatnych programów kodujących. Ceny były spore.. 150$ - 600$, więc dla kogoś kto używa tego "na jeden raz" na pewno się nie opłaca (chyba, że ma "biznes plan" i mu się zwróci ;-) ). Jedyne co słusznego zauważyłem to ionCube. Może wymaga funkcji dl() odblokowanej u usługodawcy, ale jestem pewny, ze jeżeli ten usługodawca otrzyma odpowiedni list i dba o swoich klientów udostępni odpowiednie funkcje (nawet dla jednego konta).
Nie sprawdzałem Zend'a - wiem, że było sporo szumu gdy w Internecie zaczęły pojawiać się oferty gdzie odkodowują skrypty.

Moje podsumowanie jest takie: za darmo nic ciekawego nie znajdziesz - a czasami opłaca się wydać "kilka" dolarów (ew. €) by spać spokojnie i.. zaskoczyć czymś klienta (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
Domin
post
Post #99





Grupa: Zarejestrowani
Postów: 136
Pomógł: 0
Dołączył: 17.11.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Myślałem też o stworzeniu bazy danych z unikalnym kodem zapisanym gdzieś w aplikacji któy był by przypisany do jednego klienta któremu się aplikacje sprzedało. Przy instalacji kod był by automatycznie wysyłany z adresem i jakimiś tam informacjami na e-maila czy serwer, a na dodatek przy udostępnianiu np. na torrentach Twojej aplikacji możesz sobie ją pobrać i sprawdzić jaki ma kod a wtedy będziesz wiedział kto udostępnił i mozesz ubiegać się o odszkodowanie.

A co do licencji, to też bym chętnie poczytał przykładowe licencje i jak robią to inni.
Go to the top of the page
+Quote Post
cadavre
post
Post #100





Grupa: Zarejestrowani
Postów: 472
Pomógł: 7
Dołączył: 7.12.2005
Skąd: Gliwice

Ostrzeżenie: (0%)
-----


Jeśli chodzi o php to teoretycznie nie ma możliwości zabezpieczenia kodu. Gdy komuś udostępnisz pliki z aplikacją php to już nie możesz być spokojny o nią. Nawet jeśli wprowadzisz jakieś klucze etc. to zawsze byle programista będzie potrafił je usunąć z otwartego kodu - php nie jest kompilowanym językiem.
Go to the top of the page
+Quote Post

6 Stron V   1 2 3 > » 
Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 27.01.2026 - 21:54