molesta
30.05.2008, 14:40:22
Witam
Mam pytanie
Czy możliwe jest pobieranie ze zdalnego serwera pliku connect.php (zawierajacego adres hosta, login, hasło do bazy)?
A jeśli tak to powinno wyglądac...nigdzie niestety nie znalazłem informacji na ten temat
Bardzo prosze o jakieś wskazówki jesli to możliwe
pyro
30.05.2008, 14:42:17
można np. za pomocą FTP
sniezny_wilk
30.05.2008, 14:42:46
Rozumiem, że chciałbyś jakoś z innego pobrać dane do połączenia z bazą danych i włamać się do bazy

? Nie ma tak łatwo, nie możesz pobrać źródła plików .php, bo są wykonywane po stronie serwera.
molesta
30.05.2008, 14:45:29
a wy tam zaraz wlamanie......poprostu chodzi mi o to abyplik connect.php znajdował sie na zdalnym serwerze aby nie było możliwości podgladu loginu i hasła do bazy danych w źródle
pyro
30.05.2008, 14:46:11
jak już powiedziałem, można za pomocą ftp...
sniezny_wilk
30.05.2008, 14:47:20
Cytat(molesta @ 30.05.2008, 13:45:29 )

a wy tam zaraz wlamanie......poprostu chodzi mi o to abyplik connect.php znajdował sie na zdalnym serwerze aby nie było możliwości podgladu loginu i hasła do bazy danych w źródle
jeśli plik będzie zapisany jako php i dane będą w zmiennych to nawet jak plik będzie u Ciebie na serwerze to nie będzie możliwości podglądu
molesta
30.05.2008, 14:52:11
No dobra to oże innaczej
Mam kod connect.php
<?php
function connection() {
$mysql_server = \"localhost\";
$mysql_admin = \"uzytkownik\";
$mysql_pass = \"haslo\";
$mysql_db = \"baza_danych\";
or
die('Brak połączenia z serwerem MySQL.');
or
die('Błąd wyboru bazy danych.'); }
?>
i plik w którym chciałbym go wywołać
<?php
require \"connect.php\";
connection();
?>
Nie za bardzo wiem jak powinienem wywołać ten plik connect.php ze zdalnego serwera
webdice
30.05.2008, 14:54:07
Nie da się tak. Daj sobie z tym spokój. Czemu nie możesz mieć pliku connection.php u siebie na serwerze?
pyro
30.05.2008, 14:54:49
molesta, masz jakieś cholerne klapki na oczach? Zrób to za pomocą ftp, a jak chcesz sie dowiedziec jak to zrobic to gotowe masz w komentarzach na php.net
// W tym momencie przesadziłeś, piszesz trzeciego posta o tym samym.
// Jakby autor chciał to by z tego skorzystał. Dostajesz ostrzeżenie.
// ~webdicepl
<jupi> warn
molesta
30.05.2008, 15:02:51
Cytat(webdicepl @ 30.05.2008, 15:54:07 )

Nie da się tak. Daj sobie z tym spokój. Czemu nie możesz mieć pliku connection.php u siebie na serwerze?
Nie moge ponieważ jest to element zabezpieczenia skryptu
Raczej nie wskazane aby w źródle był podgląd do połączenia z bazą w której zawarte sa licencje użytkowników
webdice
30.05.2008, 15:05:16
W jakim źródle? Nie można sobie tak po prostu podglądnąć źródła pliku PHP.
Shili
30.05.2008, 15:05:25
W żadnym źródle nic nie ma. PHP jest wykonywany po stronie serwera, więc to co się za jego pomocą wygeneruje nie będzie zawierało w sobie żadnych danych do połączenia z bazą!
Sprawdź sobie sam ;]
molesta
30.05.2008, 15:08:59
Nie rozumiecie mnie...skrypt jest sprzedawany wiec osoba zakupujaca ma wgląd w źródła .Jeśli w źródłach które dostaje klient bedą dane do bazy w której znajdują się dane innych klientów i ich kody licencyjne to sami pomyślcie,.,
A czy dobrym rozwiazaniem będzie include zdalnego pliku connect.php ?
Shili
30.05.2008, 15:10:02
To sprzedawaj z przykładowymi danymi, niech sobie sami bazę tworzą a nie korzystają z Twojej?
molesta
30.05.2008, 15:13:15
Cytat(Shili @ 30.05.2008, 16:10:02 )

To sprzedawaj z przykładowymi danymi, niech sobie sami bazę tworzą a nie korzystają z Twojej?
Nadal nie rozumiesz:D baza ma służyć do autoryzacji i potwierdzenia aktywacji licencji użytkowników
pyro
30.05.2008, 15:14:19
no to musiałbyś includować pliki tekstowe, które se normalnie można zobaczeć... plików php byś nie mógł includować, bo są wykonywane po stronie serwera, mógłbyś zrobić jakiś algorytm szyfrujący,ale jak ktoś by miał dużo ( w zależności od mocy szyfrowania) wolnego czasu i chęci to i tak mógłby to rozszyfrować
molesta
30.05.2008, 15:20:01
Cytat(pyro @ 30.05.2008, 16:14:19 )

no to musiałbyś includować pliki tekstowe, które se normalnie można zobaczeć... plików php byś nie mógł includować, bo są wykonywane po stronie serwera, mógłbyś zrobić jakiś algorytm szyfrujący,ale jak ktoś by miał dużo ( w zależności od mocy szyfrowania) wolnego czasu i chęci to i tak mógłby to rozszyfrować
To może jeszcze inne pytanie...czy jest jakiś sposób na zabezpieczeniem skryptu przez nie autoryzowanym rozpowszechnianiem?
100 % niezawodnego napewno niema ale może jest jakiś sposób w miare sensowny
pyro
30.05.2008, 15:35:49
może funkcje sprawdzające posiadanie licencji + sourceguardian?
webdice
30.05.2008, 15:36:17
Sprawa wygląda tak: jeśli skrypt ma dostęp do jakiegoś pliku, to użytkownik może sobie z tym zrobić co chce. Koniec kropka.
molesta
30.05.2008, 15:42:46
No wiec własnie nie
Sprawe rozwiazałem .....kupiłem wlaśnie ionCube Pro 760 zł to nie wielkie pieniadze w porównaniu ze stratami jakie poniose z powodu trafienia aplikacji na warez
Niestety w polsce świadomość własności intelektualnej nie istnieje
Shili
30.05.2008, 15:45:08
Zakupiony kod zawsze w ostateczności można tak przerobić, żeby działał bez żadnych zabezpieczeń. Jednym z sensownych (pod względem bezpieczeństwa oczywiście) rozwiązań jest udostępnianie klientom Twoich skryptów razem z kontami na swoim hostingu, w ten sposób, że nie mają dostępu do kodu źródłowego. Innym ukrywanie kodu (PHP Encoder na przykład). Możesz wysyłać do siebie po takim kodowaniu mało kto natrafi (emaila z danymi gdzie skrypt jest instalowany). Względnie faktycznie napisać własne szyfrowanie. W sieci jest też
Solace script maze. I co ważne - odpowiednia licencja, chociaż nie zabezpiecza tak naprawdę w żadnym stopniu, ale daje możliwość dochodzenia swoich własności.
Tudzież zrób to na osobnej bazie, z jedną tabelą (klucz, identyfikator, cośjeszcze) - tabelę na przykład raz dziennie zaimportujesz na inny serwer i na tym innym serwerze będziesz sprawdzał integralność itd. A użytkownikom odbierz prawa do wykonania jakichkolwiek działań prócz selectów na niej, minus jest taki, że z uprzywilejowanego konta będziesz musiał dodawać wszystko ręcznie ^^
molesta
30.05.2008, 15:49:17
poprostu zaszyfruje ioncubem pliki dotyczace połączenia z baza i innych aby nikt nie grzebał a zostawie tylko te w których zezwalam na customizacje i tyle
sniezny_wilk
30.05.2008, 18:38:10
Ja tylko nie rozumiem dlaczego kupujący nie będzie mógł skorzystać z własnej bazy, tylko akurat w Twojej będzie musiał składować dane.
l0ud
30.05.2008, 18:49:15
Kod
poprostu zaszyfruje ioncubem pliki dotyczace połączenia z baza i innych aby nikt nie grzebał a zostawie tylko te w których zezwalam na customizacje i tyle
Co nie zmienia faktu, że dalej nie zabepieczy Cię to NIC przed ew. włamaniem do bazy i ściągnięciem dowolnych informacji. Kwestia wydobycia danych do bazy z obojętnie czy zaszyfrowanego skryptu php - czy nie, to kwestia kilku minut.
Napisz dokładniej na czym ma polegać to zabezpieczenie, to na pewno wymyśli się coś lepszego
molesta
30.05.2008, 19:54:04
klinent instalujac skrypt musi posiadać własną baze ....chodzi mi tylko o to aby zrobic system autoryzacji/sprawdzania licencji w mojej bazie danych tak aby skrypt był mozliwy do uruchomienia tylko w jednej kopii. Nie chce doprowadzić do tego że skrypt szybko się rozejdzie na warezie powodując tym samym straty finansowe mojej firmy
l0ud
31.05.2008, 14:29:41
Do każdego egzemplarza skryptu wypisujesz jego kod identyfikacyjny - najlepiej dość długi. Później, przy instalacji (pierwszym uruchomieniu) program łączy się z odpowiednim skryptem na Twoim serwerze (metodę łączenia pozostawiam Tobie - chociażby zwykłe file_get_contents()) podając mu swój identyfikator. Skrypt na Twoim serwerze sprawdza, czy dany identyfikator istnieje w bazie danych i czy jest aktywowany - jeżeli tak, zwraca pozytywny wynik co pozwala zainstalować się temu po stronie użytkownika. Po poprawnej instalacji skrypt usera jeszcze raz łączy się z Twoim, aby oznaczyć jego kod identyfikacyjny jako 'zainstalowany, nieaktywny'.
Tak najprościej można to zrobić, choć niestety scrackować to łatwo.
rzymek01
31.05.2008, 20:49:39
taka autoryzacja nic nie da,
wystarczy przejrzeć kod instalacyjny lub poświęcić trochę czasu na zrobienie struktury bazy danych na podstawie zapytań, do których źródeł klient ma dostęp i na tej podstaiwe stworzyć swoją
i warez się rozchodzi :-)
edit: nie ma idealnego zabezpieczenia, szczególnie jeśli chodzi PHP
dobrym przykładem są gry, które są plikami binarnymi, a i tak ktoś zdebuguje, przemieni kilka linijek kodu i gra działa
pyro
31.05.2008, 21:15:20
Cytat(l0ud @ 30.05.2008, 19:49:15 )

Kod
poprostu zaszyfruje ioncubem pliki dotyczace połączenia z baza i innych aby nikt nie grzebał a zostawie tylko te w których zezwalam na customizacje i tyle
Co nie zmienia faktu, że dalej nie zabepieczy Cię to NIC przed ew. włamaniem do bazy i ściągnięciem dowolnych informacji. Kwestia wydobycia danych do bazy z obojętnie czy zaszyfrowanego skryptu php - czy nie, to kwestia kilku minut.
Napisz dokładniej na czym ma polegać to zabezpieczenie, to na pewno wymyśli się coś lepszego

Nie przesadzaj
l0ud, rozszyfrowanie tego co robią płatne cryptery skryptów (nie wiem jak jest z ionCube) to nie kwestia kilku minut tylko jak ktoś jest ekspertem w dziedzinie szyfrowania to by musiał spędzić nad tym ładnych pare dni, jest to swego typu zabezpieczenie, bo np. mi osobiście by się poprostu nie chciało za to brać

, jednak czy skrypt jest wtedy bezpieczny? - NIE
pyro, niekoniecznie trzeba nawet rozszyfrowywać ten skrypt. Można przecież nawet nałożyć 'nakładkę' na PHP, która będzie wykrywała z jakimi parametrami jakie funkcje zostają wywołane. Albo sniffować ale nie jestem pewien, bo połączenia z bazą są raczej szyfrowane...
Tak czy siak dla chcącego nic trudnego, i to bez wglądu na kod
Cytat(l0ud @ 1.06.2008, 10:20:37 )

pyro, niekoniecznie trzeba nawet rozszyfrowywać ten skrypt. Można przecież nawet nałożyć 'nakładkę' na PHP, która będzie wykrywała z jakimi parametrami jakie funkcje zostają wywołane. Albo sniffować ale nie jestem pewien, bo połączenia z bazą są raczej szyfrowane...
Tak czy siak dla chcącego nic trudnego, i to bez wglądu na kod

taaa...? a znasz taką nakładkę?
Tak. Xdebug z xdebug.collect_params ustawionym na co najmniej 3. W wygenerowanym logu widać wszystkie funkcje, a więc też mysql_connect z wszystkimi danymi.
http://xdebug.org/docs/execution_trace
fajny ale loguje tylko użycia funkcji ;/
Cytat
fajny ale loguje tylko użycia funkcji ;/
Loguje wszystko co jest potrzebne do uzyskania takiego hasła...
Cytat(l0ud @ 1.06.2008, 23:01:28 )

Loguje wszystko co jest potrzebne do uzyskania takiego hasła...
juz nie chodzilo mi o samo zdobycie hasla tylko ile on moze rozszyfrowac
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.