![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 215 Pomógł: 0 Dołączył: 18.01.2003 Ostrzeżenie: (0%) ![]() ![]() |
Widzialem kilka aplikacji e-commerce, ktore bazuja na plikach *.txt i zastanawiam sie nad bezpieczenstwem takich danych.
Co myslicie o tym by tworzac takie aplikacje trzymac dane klienta, produktow, kategorii, zamowien nie w bazie danych tylko w plikach. Jesli uwazacie, ze to mozliwe i akceptowalne to jakie macie propozycje na to by te dane byly przechowywane bezpiecznie? -------------------- Działam w OpenSolution.org, autor Quick.Cms i Quick.Cart już od ponad 10 lat
|
|
|
![]() |
![]()
Post
#2
|
|
![]() Developer Grupa: Moderatorzy Postów: 2 844 Pomógł: 20 Dołączył: 25.11.2003 Skąd: Olkusz ![]() |
Trzymac dane poza "public_html".
Hasla w md5 -> to wiadomo Można tez z kozystac z klas bazy danych na plikach txt i trzymac odpowniedno zabezpieczona baze np przed "public_html" (np utworszys sobie kolo niego katalog baza i tam trzymac dane) albo jakis .htaccess |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 5.05.2004 Skąd: Starachowice Ostrzeżenie: (0%) ![]() ![]() |
Moja rada jest następująca:
O ile to możliwe wszystkie tego typu aplikacje trzymaj w bazie o ile to możliwe i je hashuj tak jak napisał Cytat Hasla w md5 -> to wiadomo
Jeśli już korzystasz z plików txt jako bazy danych to staraj się trzymać tego typu dane poza www (chodzi o to by pliki były dostępne tylko wyłącznie dla serwera) Jeśli chodzi o bezpieczeństwo to według swojego uznania. Ja przyjąłem taką taktykę że porównóję zawsze jakie user wysle do mnie dane typu przeglądarka, co akceptuje przeglądarka i jego ip (to zapobiegnie że jak ktoś dał komuś linka pełnego z id sesji a on będzie zalogowany to nie zobaczy prywatnych informacji, a prawdopodobieństwo że ktoś ma dokładnie takie same dane przeglądarki, co akceptuje jest moim zdaniem malutkie) Jeśli chodzi o logowania to przyjąć taktykę że tylko jedna osoba może być w tym momencie na taki login zalogowana, i jak ktoś będzie próbował szperać to dawać mu ban-a na 1 godzinę. To tyle jeśli chodzi o moje porady. Myślę, że one ci się przydadzą a ja natomiast przyjąłem powyżej wymienioną taktykę co do zabezpieczeń i jak na razie nie zdarzyło mi się aby tego typu prze ze mnie napisane skrypty miały jakie kolwiek problemy. |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 215 Pomógł: 0 Dołączył: 18.01.2003 Ostrzeżenie: (0%) ![]() ![]() |
Wydaje mi sie, ze myslicie, ze zastanawiam sie nad tym by takie cos zrobic ... otoz nie.
Po prostu zastanawiam sie nad ta kwestia ... Hwao napisal: " Trzymac dane poza "public_html". " no tak to dobry pomysl ... tyle, ze do takich plikow i tak latwiej dotrzec niz do bazy danych ... bo wystarczy dopasc login i haslo do ftp. oczywiscie wtedy haslo do bazy danych tez dopadnie ale to juz inna sprawa ... bo nie kazdy koniecznie moze umiec sie z ta baza polaczyc. w sumie to wielkie gdybanie ale jakos nie mam przekonania do tego ... z reguly uwazalem pliki za lepsze do trzymania danych w stylu: artykuly, dlugie newsy itd i tak robie ... ale trzymanie danych kontaktowych klienta, ktore nie powinny byc dostepne ot tak... co na to jakies prawo o ochronie danych osobowych? Gdzies czytalem, ze dane osobowe klientow powinny byc trzymanie zaszyfrowanie lub dostepne za dodatkowym haslem (baza danych?)... ale tego juz za dobrze nie pamietam -------------------- Działam w OpenSolution.org, autor Quick.Cms i Quick.Cart już od ponad 10 lat
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 5.05.2004 Skąd: Starachowice Ostrzeżenie: (0%) ![]() ![]() |
Cytat Cytat Trzymac dane poza "public_html". no tak to dobry pomysl ... tyle, ze do takich plikow i tak latwiej dotrzec niz do bazy danych ... bo wystarczy dopasc login i haslo do ftp. No ja myślę. że tutaj to już kwestja jakie robisz loginy i hasła. Jedno jest pewne, że jak długie unikatowe hasło (kombinacja minimum ok 9 znaków z liczbami) to ciezko jest znależć odpowiednie hasło. Jeśli chodzi o dane klienta to niestety ale zielonego pojęcia nie mam jak na to prawo reaguje i jakie są wymogi. Ja przynajmniej uważam że poza html public jest ciezko wyciągnąć takie dane. |
|
|
![]()
Post
#6
|
|
![]() Developer Grupa: Moderatorzy Postów: 2 844 Pomógł: 20 Dołączył: 25.11.2003 Skąd: Olkusz ![]() |
Może dobrze by było trzymac baze na 2 koncie czyli innym niz strona wtedy znalezienie bezy jest duzo trudniejsze?
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 215 Pomógł: 0 Dołączył: 18.01.2003 Ostrzeżenie: (0%) ![]() ![]() |
a moze wszystko "szyfrowac" np. base_64 (chocby dane klienta i teleadresowe) dla potencjalnego hackera-lammera-amatora to moze byc lekka przeszkoda, ktora moze zniecheci do dalszych dzialan? (a takich wiekszosc lubiacych sie bawic i mieszac z bezpieczenstwem danych/aplikacji)
bo jak trafimy na hackera-pro-advanced to i tak raczej sie przed nim nie obronimy nawet baza ... tyle, ze taki gosc musialby miec jakis konkretny cel ku temu (tak zakladam) -------------------- Działam w OpenSolution.org, autor Quick.Cms i Quick.Cart już od ponad 10 lat
|
|
|
![]()
Post
#8
|
|
![]() Developer Grupa: Moderatorzy Postów: 2 844 Pomógł: 20 Dołączył: 25.11.2003 Skąd: Olkusz ![]() |
Cytat a moze wszystko "szyfrowac" np. base_64 (chocby dane klienta i teleadresowe) dla potencjalnego hackera-lammera-amatora to moze byc lekka przeszkoda
Wg mnie to tylko marmowanie zasobow- za kazdym odwierzeniem odkodowywanie to raczej nie to- a base_64 to raczej nie najlepiej koduje i jak ktos sie juz dobierze Ci do bazy danych to napewno bedziedzial jak jest zakodowana ( chocby po likkach ktorymi wysietlasz). Chyba najlepiej jest trzymac dane na innym koncie w takim razie i tam jakos je jeszcze dodtakowo zabezpieczyc ![]() |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 215 Pomógł: 0 Dołączył: 18.01.2003 Ostrzeżenie: (0%) ![]() ![]() |
No nie przesadzaj ... wyobraz sobie plik users.txt
imie|nazwisko|haslo|email|ulica|kod|miasto| i wszystkie te dane kodujesz w base64 (oprocz hasla, ktore robisz w np. md5). Jak czesto musisz zerkac do tych danych po stronie klienckiej? -> rzadko Jak czesto musisz zerkac do tych danych po stronie admina? -> czesto ... ale znow generujesz mniej ruchu po stronie administracyjnej... -------------------- Działam w OpenSolution.org, autor Quick.Cms i Quick.Cart już od ponad 10 lat
|
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 270 Pomógł: 0 Dołączył: 15.06.2003 Ostrzeżenie: (0%) ![]() ![]() |
a czemu nie trzymać danych w pliku php??
Przykłąd z sbase: [php:1:1888580810] <?php if( strstr( $_SERVER['PHP_SELF'], "users_structure.php" ) ) { exit("Brak dostepu"); } ?> id;int;11;1;; login;varchar;250;0;; password;varchar;32;0;; bazy;varchar;250;0;*; [/php:1:1888580810] |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 131 Pomógł: 0 Dołączył: 19.08.2003 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Może i można, ale moim zdaniem prowadzenie dużego sklepu internetowego na plikach txt jest poranionym pomysłem.
-------------------- |
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 216 Pomógł: 0 Dołączył: 9.08.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
hm, z drugiej strony po co kodowac baze... Ja bym dal mozliwosc wyboru, albo kodowac niektore pola, albo nie...
po co kodowac baze dla np: newsow ? jesli i tak ma byc dostepna dla wszystkich a jesli chodzi o wazne dane, np: konta, to tez niektore pola bym kodowal... jesli na stornie uzytkownik ma dostep do np: imienia i nazwiska innych osob, to tych pol bym nie kodowal, a jesli np: hasla - md5, telefony - kodujemy, adres - kodujemy... podpowieedz do odzyskania hasla - kodujemy... wszystkie wazne dane kodujemy, a reszte olewamy bo i tak ludzie maja dostep do nich. Troche to skomplikuje stworzenie takiej bazy danych, ale cos napewno nam to da - troche szybsze wyciaganie danych. |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 131 Pomógł: 0 Dołączył: 19.08.2003 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Tylko, że jeżeli ty możesz to odkodować to ktoś inny mając te zakodowane dane też może je odkodować
![]() -------------------- |
|
|
![]()
Post
#14
|
|
![]() Grupa: Zarejestrowani Postów: 216 Pomógł: 0 Dołączył: 9.08.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
hm no tak. ale np:
Kod id;int;11;;
login;varchar;20;; haslo;varchar;20;koduj; i plik z baza danych Kod 1;Ace;blablaelbkaeotbi209ut0adj0b9a;
2;Partyzant;aeobneatijbo23i5hj0aeh53h; wiec hasla nie masz ... hm... tzn masz ;] bo swoje ;p Ale jesli wymyslisz swoj algorytm unikalny, to troche zajmie to odkodowanie tych danych... a jesli sie da warunki z php na poczatek pliku takie jak przedstawil Bora, to nie dostaniesz sie do pliku z baza... a jesli mowicie o loginie i hasle do ftpa, to chyba zawsze dobierzesz sie wtedy do danych ? wiec powinnismy sie skupic nad zabezpieczeniem plikow przed dostepem do nich, a nie przed sciagnieciem ich z konta ftp... |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 131 Pomógł: 0 Dołączył: 19.08.2003 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
No tak, tylko trzeba wymyślić swój algorytm... Poza tym myślałem, że mówimy o base_64
![]() -------------------- |
|
|
![]()
Post
#16
|
|
![]() Grupa: Zarejestrowani Postów: 270 Pomógł: 0 Dołączył: 15.06.2003 Ostrzeżenie: (0%) ![]() ![]() |
To nie jest już kodowanie
Kod id;int;11;1;;
login;varchar;250;0;; password;varchar;32;0;; bazy;varchar;250;0;*; To jest plik definiujący pola w bazie. Jeżeli chodzi o rekiordy to są one poprostu zapisywane : Kod 14;Bora;jdfg78dgghi35ihg34;baza_bora;
Niedługo zostanie wypuszczona kolejna wersja. Narazie jest zrobiona obsługa SELECT'a wraz z podstawową składnią mysql (LIMIT, WHERE). [php:1:fc7cfa51c1]<?php include_once('sbase.php'); sbase_connect('localhost', 'Bora', 'pass'); sbase_select_db('baza'); $query = sbase_query("SELECT id FROM small WHERE record = '3cc73' LIMIT 400,2"); while ($result = sbase_fetch_assoc($query)){ var_dump($result); } ?>[/php:1:fc7cfa51c1] Wracając do tematu. Chodziło o to że przechowując dane w plikach php i sprawdzając jak pli został wywołany można go bardzo dobrze zabezpieczyć. |
|
|
![]()
Post
#17
|
|
![]() Grupa: Zarejestrowani Postów: 216 Pomógł: 0 Dołączył: 9.08.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Bora - ja to wiem, tylko ze w jednym polu w moim przykladzie w definicji podalem ;koduj; , a w innych bylo to ;; i akurat to pole w moim przykladzie wygladalo, oznacza to, ze to pole ma byc kodowane.
Kod 1;Ace;blablaelbkaeotbi209ut0adj0b9a;
2;Partyzant;aeobneatijbo23i5hj0aeh53h; |
|
|
![]()
Post
#18
|
|
![]() Grupa: Zarejestrowani Postów: 270 Pomógł: 0 Dołączył: 15.06.2003 Ostrzeżenie: (0%) ![]() ![]() |
Masz racje
Pisząc ten projekt można bez problemu dorzucić kodowanie pól. ps: Jak wam sie podoba pokazany przykład?? ![]() |
|
|
![]()
Post
#19
|
|
![]() Grupa: Zarejestrowani Postów: 215 Pomógł: 0 Dołączył: 18.01.2003 Ostrzeżenie: (0%) ![]() ![]() |
bora juz od dawna zapisuje dane w plikach php ... (te wazne np. loginy i hasla) ... jednak to nie jest rozwiazanie ... ja mowie nie o gosciach, ktorzy wlamuja sie przez www ale przez np ftp a wtedy pliki php odczytasz bez problemu ... jak i caly kod
-------------------- Działam w OpenSolution.org, autor Quick.Cms i Quick.Cart już od ponad 10 lat
|
|
|
![]()
Post
#20
|
|
![]() Grupa: Zarejestrowani Postów: 270 Pomógł: 0 Dołączył: 15.06.2003 Ostrzeżenie: (0%) ![]() ![]() |
To z takimi gośćmi już gorzej.
Jedynie pozostaje kodować dane w plikach własnym algorytmem przy czym algorytm ten trzymać np na innym koncie albo zabezpieczony np przez zend coś tam ![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 01:02 |