Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Zabezpieczenie formularza do pobierania danych
Forum PHP.pl > Forum > Przedszkole
Marek607
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.
abel1
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
Marek607
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
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.