Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Zabezpieczenie formularza do pobierania danych
Marek607
post 12.09.2016, 09:29:30
Post #1





Grupa: Zarejestrowani
Postów: 42
Pomógł: 3
Dołączył: 4.03.2010

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


Witam,

Jakiś czas temu napisałem skrypt zbierający dane i zapisujący je do bazy.

W skrócie - na xx serwerów działa skrypt który co minute pobiera dane i za pomocą curl --data wysyła je pod wskazany url.
Pod wskazanym url jest już skrypt w php który dane pobiera i zapisuje do bazy.
Obecnie przy pobieraniu danych są sprawdzane 2 rzeczy:
1) remote_addr
2) unikalny klucz, czyli ciąg znaków inny dla kazdego z serwerów.

Jeśli te 2 rzeczy się zgadzają dane sa aktualizowane, jeśli nie - dostaje powiadomienie.
Od strony serwera ten skrypt jest zakodowany, jednak nie problem podejrzeć co robi i gdzie wysyła te dane - dla chcącego nic trudnego.

Chcialbym się Was poradzić jak mogę dodatkowo zabezpieczyć taki formularz - główne obawy tyczą tego że po walidacji poprawności formatu danych mam zapytanie " update ........ where ip=adres.ip and klucz=klucz"
Czyli niezależnie czy ip i klucz jest poprawny i tak jest wykonywane zapytanie do bazy, więc ktoś może "sztucznie" obciążać serwer bazodanowy.
Myślałem by najpierw sprawdzać poprawnośc pary klucz i ip, i dopiero później aktualizować dane dla danej pary, ale czy to w jakiś sposób zwiększy bezpieczeństwo?
Mam wtedy każdorazowo po wysłaniu danych 2 zapytania zamiast jednego.

1)W jaki sposób mogę dodatkowo zabezpieczyć formularz bez zaprzęgania bazy - może dodać wymyślonego user-agenta?

2) Szyfrowanie wysyłanych danych - w jaki sposób je zrealizować, czy można jakoś zabezpieczyć wysyłane dane - np zakodować ( poza samym https)?

3) Bede też wdzięczny do jakiś źródeł/case study/przykładów czy best practice w tym zakresie.

Ten post edytował Marek607 12.09.2016, 09:30:31
Go to the top of the page
+Quote Post
abel1
post 12.09.2016, 11:06:11
Post #2





Grupa: Zarejestrowani
Postów: 71
Pomógł: 2
Dołączył: 17.03.2014

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


Sprawdzanie IP oraz klucza nie musi wcale wykonywać się poprzez zapytanie do bazy , możesz to zrobić w samym PHP
Szyfrowanie hmm , są serwisy oferujące szyfrowanie kodu PHP musiał byś się skontaktować czy mogą zaoferować jakieś szyfrowanie w locie
Jeden z takich serwisów to ZendGuard
Go to the top of the page
+Quote Post
Marek607
post 12.09.2016, 11:40:01
Post #3





Grupa: Zarejestrowani
Postów: 42
Pomógł: 3
Dołączył: 4.03.2010

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


Cytat(abel1 @ 12.09.2016, 12:06:11 ) *
Sprawdzanie IP oraz klucza nie musi wcale wykonywać się poprzez zapytanie do bazy , możesz to zrobić w samym PHP
Szyfrowanie hmm , są serwisy oferujące szyfrowanie kodu PHP musiał byś się skontaktować czy mogą zaoferować jakieś szyfrowanie w locie
Jeden z takich serwisów to ZendGuard


W jaki sposób to zrobić, skoro każdy ip ma swój własny klucz?
Dodawanie tego ręcznie do kodu w postaci tablicy odpada , bo przy xxx serwerach miałbym niezłą sieczkę, poza tym musiałbym to zrobić w kilku plikacha zależy mi bardziej na automatyzacji
Go to the top of the page
+Quote Post
Pyton_000
post 12.09.2016, 11:56:55
Post #4





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


http://php.net/manual/en/function.openssl-encrypt.php
http://php.net/manual/en/function.openssl-decrypt.php
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.06.2025 - 18:02