Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 341 Pomógł: 25 Dołączył: 28.09.2008 Skąd: Lublin Ostrzeżenie: (0%)
|
Witam
jak w temacie sam nie wiem jak do końca to rozwiązać więc czekam na za i przeciw. Pozdrawiam |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 320 Pomógł: 29 Dołączył: 3.04.2010 Ostrzeżenie: (20%)
|
Może generalizuje ,ale: sesja= session hijacking, session fixation, session Poisoning-dużo możliwości manualowania danymi.To samo tyczy się coockies ,a może są jeszcze bardziej niebezpieczne. Załóżmy klient kupuje artykułów na 20tys, głupio by było jakby tobie zamówienie wysłał na 2zł bo dobry hacker z niego i podmienił tobie dane sesji.Nie mówię już o wykradaniu adresów i e-maili.Chyba,że w sesji będziesz przechowywał klucze główne(id) do poszczególnych kolumn i wiązał je z bazą danych, wtedy to będzie w miarę bezpieczne. Może to paranoja, ale dużo się naczytałem, że kluczowych danych w sesji czy cookie nie przechowuje się. Niktosiu, w takim razie w jaki sposób implementujesz autoryzację? Czy wy nie rozumiecie, że sesje mogą być różnie zaimplementowane? Session hijacking - obrona przed CSRF - tokeny oraz ciasteczko z SID httpOnly, w przypadku ataku man-in-the-middle pomoże wam tylko SSL, w innym wypadku ktoś i tak może się podszyć pod daną osobę, nei tylko przez ciastko z SID, ale także podsłuchując dane logowania, adresy etc. Session fixation - wybacz, ale to zagrożenia związanee nie z samymi sesjami, potrzebna jest tu inna luka, przeważnie XSS. Session poisoning - jak kotś ustawia dane sesyjne, na podstawie klucz generowanego przez podaną przez użytkownika daną, to jest głupi i zamiast programowaniem, powinien się zająć czymś innym. Hahaha, w takim razie jak powiążesz kluczowe dane z niezalogowanym użytkownikiem, jak nie losowym kluczem przechowywanym w $_COOKIE? @Niktoś Kto normalny przechowuje np. ceny czy wartość zamówienia w sesji/cookies? True^^. Dane koszyka to raczej dane temporalne-użytkownik może zamówić, ale nie musi zrealizować zamówienia. Dlatego ta część aplikacji może stanowić problem. Używając bazy danych, w pewnym momencie może okazać się ,że jest to niewydajne.Są wszakże tabele temporalne(do czasu trwania sesji lub aplikacji) ,ale to także generuje masę zapytań do bazy danych ,a przy złożeniu zamówienia przez użytkownika trzeba by było zrobić zrzut zamówionych towarów z tabeli temporalnej do tabeli właściwej,aby zachować te dane. Używanie samych sesji czy cookies do tego typu rzeczy do najbezpieczniejszych sposobów nie należy. Ja użyłem nierelacyjną bazę danych -gdzie tak jak w cookies czy w sesji jest expiration time(można ustawić czas życia koszyka, co dla danych tymczasowych jest idealnym rozwiązaniem. Same dane zapisują się w pamięci-więc dostęp do nich jest znacznie szybszy.Cookies i Sesje identyfikują użytkownika po (SID) i po nich następuję pobranie odpowiednich danych z nierelacyjnej bazy danych.W sesji czy cookies nie ma żadnych dodatkowych danych tylko SID.Nawet jak ktoś mi zmanipuluje tymi danymi to co najwyżej dostanie inny koszyk, lecz nie zmanipuluje danymi w nich. Ta twoja nierelacyjna baza danych to właśnie WŁASNA IMPLEMENTACJA SESJI, dlatego twoja implemntacja, tak samo jak podstawowa i wszystkie inne, może być podatna na wyżej wymienione przez ciebie ataki. Mechanizm jest taki sam. Identyfikacja użytkownika po losowym kluczu, tylko zamiast z pliku korzystasz z bazy danych. Twoja nierelacyjna baza danych to SESJA, przed którą tak bardzo przestrzegasz. Nom w darmowym ,czy nawet płatnym hostingu tego nie zrobisz, musiałbyś co najmniej dedyka sobie sprawić. Wystarczy VPS. Śmieszy mnie niektórych niechęć wobec sesji, a zwłaszcza kiedy mówicie, że są złe, a sami używacie ich alternatywnej wersji "bazy danych". Wasz mechanizm różni się tylko tym, że dane są przechowywane w innym miejscu. A jakie tutaj zagrożenia? I do twojej bazy danych, i do tamtego pliku również można się w jakiś sposób dostać, czy bezpieczeństwo jest większe? |
|
|
|
usb2.0 Koszyk w sesji czy w bazie? 5.05.2012, 19:17:43
patrysiek2 Według mnie lepiej w sesji. 5.05.2012, 19:32:44
marcio Cytat(patrysiek2 @ 5.05.2012, 20:32:4... 5.05.2012, 20:01:54
greycoffey To jest dana, które pasuje TYLKO do sesji - a czy ... 5.05.2012, 20:23:28 
r4xz Cytat(greycoffey @ 5.05.2012, 21:23:2... 5.05.2012, 21:17:54
Niktoś Ja zrobiłem koszyk oparty o nierelacyjną bazę dany... 5.05.2012, 21:25:55
Fifi209 Jak najbardziej coś w stylu pomysłu Niktosia. Dlac... 5.05.2012, 22:57:08
usb2.0 nie wiem czy się zbijasz @up czy mówisz poważnie a... 5.05.2012, 23:03:59 
Fifi209 Cytat(usb2.0 @ 6.05.2012, 00:03:59 ) ... 5.05.2012, 23:06:14
bastard13 Zależy, czy po wyłączeniu przeglądarki i uruchomie... 5.05.2012, 23:12:18
usb2.0 no brzmi całkiem sensownie sory ze zwiątpiłem
no p... 5.05.2012, 23:13:05
Niktoś Może generalizuje ,ale:
sesja= session hijacking,... 6.05.2012, 00:06:38
Fifi209 Cytat(usb2.0 @ 6.05.2012, 00:13:05 ) ... 6.05.2012, 04:56:15
spokoloko123 Bardzo wygodnie wszystko jest rozwiązane na helion... 6.05.2012, 05:44:26
Niktoś Dane koszyka to raczej dane temporalne-użytkownik ... 6.05.2012, 09:16:17
usb2.0 skorzystałem z rady @Fifi209 i oparłem to na seria... 6.05.2012, 09:29:10
Niktoś Nom w darmowym ,czy nawet płatnym hostingu tego ni... 6.05.2012, 09:31:44
usb2.0 brzmi sensownie 6.05.2012, 10:05:10
greycoffey Btw. PHP oferuje nawet podstawowe API do tworzenia... 6.05.2012, 10:13:42
Niktoś CytatNiktosiu, w takim razie w jaki sposób impleme... 6.05.2012, 10:19:19 
greycoffey Cytat(Niktoś @ 6.05.2012, 11:19:19 ) ... 6.05.2012, 10:37:13
Niktoś CytatPrawde mówiąc: gówno wiesz na temat tych atak... 6.05.2012, 11:46:49 
greycoffey Cytat(Niktoś @ 6.05.2012, 12:46:49 ) ... 6.05.2012, 12:09:56
tehaha Cytatnierelacyjne bazy danych w cache komputera do... 6.05.2012, 12:17:54
wNogachSpisz Pytanie dobre, ale obawiam się że autor w zależnoś... 6.05.2012, 12:41:01
greycoffey Generalnie najlepiej zaimplementować to w PHP 5.4 ... 6.05.2012, 12:45:03
Niktoś CytatW jakim cache komputera? Mógłbyś to rozwinąć?... 6.05.2012, 15:29:44
tehaha CytatTak,relacyjne(MySql, MSSQL ,inne) jak i nie r... 6.05.2012, 16:47:56
Niktoś CytatNie to nie są sesje, sesja to mechanizm pozwa... 6.05.2012, 17:45:41 
r4xz Cytat(Niktoś @ 6.05.2012, 18:45:41 ) ... 6.05.2012, 18:33:52
tehaha CytatRównie dobrze mógłbym w MSSQL ,czy w MYSQL ut... 6.05.2012, 18:38:07
greycoffey Cytat(r4xz @ 6.05.2012, 19:33:52 ) w ... 6.05.2012, 18:42:50
Niktoś CytatNo właśnie nie mógłbyś byś. Bo jak wtedy zide... 6.05.2012, 20:14:41 
greycoffey Cytat(Niktoś @ 6.05.2012, 21:14:41 ) ... 6.05.2012, 21:12:06
tehaha CytatMógłbym dla każdego użytkownika utworzyć unik... 6.05.2012, 20:44:08
aachi Przepraszam, że się wtrącam w waszą dyskusję, ale ... 6.05.2012, 21:24:41
Niktoś A niech to odpalę troszeczkę kodu ,mam nadzieję ,ż... 6.05.2012, 22:00:34
Fifi209 Niktoś robisz straszny burdel w kodzie. Czemu dane... 6.05.2012, 22:31:19
tehaha To co pokazałeś to jest sesja oparta o bazę.
Cytat... 6.05.2012, 22:33:45
mortus @Niktoś: SQLSpaces nie jest nierelacyjną bazą dany... 6.05.2012, 23:29:20
Niktoś CytatSidejacking is still a problem for many sites... 6.05.2012, 23:46:02 
mortus Cytat(Niktoś @ 7.05.2012, 00:46:02 ) ... 7.05.2012, 08:14:19
tehaha CytatAle żeś mi armatę wystawił, chyba najgorszy a... 7.05.2012, 01:26:17
spokoloko123 Zrobienie tego w sesji jest po prostu głupie. Nikt... 7.05.2012, 06:01:31
m44 spokoloko123 w jaki sposób chcesz to zrobić, jeśli... 7.05.2012, 08:07:18 
spokoloko123 Cytat(m44 @ 7.05.2012, 09:07:18 ) spo... 7.05.2012, 08:21:23 
mortus Cytat(spokoloko123 @ 7.05.2012, 09:21... 7.05.2012, 08:53:19
Niktoś Cytat- zapisanie zawartości koszyka w bazie danych... 7.05.2012, 09:28:52 
mortus Cytat(Niktoś @ 7.05.2012, 10:28:52 ) ... 7.05.2012, 09:36:09
spokoloko123 @mortus
Nie rozumiesz zasad e-commerce. Nie będę t... 7.05.2012, 18:57:43 
mortus Cytat(spokoloko123 @ 7.05.2012, 19:57... 7.05.2012, 19:17:18
tehaha @spokoloko123 pomysł bardzo fajny, ale i tak ten k... 7.05.2012, 19:29:33
Niktoś Taka analiza ma tylko i wyłącznie sens w przypadku... 7.05.2012, 19:34:58 
mortus Cytat(Niktoś @ 7.05.2012, 20:34:58 ) ... 7.05.2012, 19:43:39
Niktoś No ale jeśli użytkownik nie będzie zarejestrowany,... 7.05.2012, 19:57:06 
mortus Cytat(Niktoś @ 7.05.2012, 20:57:06 ) ... 7.05.2012, 20:05:15 
uupah5 Cytat(Niktoś)No ale jeśli użytkownik nie będzie za... 8.05.2012, 07:43:47
tehaha @Niktoś identyfikacji użytkownika pomiędzy żądania... 7.05.2012, 20:07:16
viking Tak czytam i aż mnie dziw bierze jak bardzo ludzie... 8.05.2012, 06:16:33 ![]() ![]() |
|
Aktualny czas: 17.02.2026 - 00:28 |