Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JQUERY+PHP+przesyłanie tokena]
Sokon
post
Post #1





Grupa: Zarejestrowani
Postów: 31
Pomógł: 1
Dołączył: 29.10.2008

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


Witam,

robię sobie taki maly projekt, w sumie na własny użytek, ale będzie wystawiony w necie i chcę go dobrze zabezpieczyć.
Problem polega na tym, że postanowiłem zaprządz do pracy jQuery w połączeniu z Php.
Mam plik .php ładowany z jQuery za pomocą zdarzenia .load(), plik ten jest ładowany z parametrami $_GET i w zależności od parametrów wykonuje inne rzeczy.
Jak się zastanowiłem to stwierdziłem, że to trochę bez sensu, bo inne bardziej newralgiczne pliki są ładowane tak samo a wystarczy podejrzeć kod JS i widać jak na
widelcu co podstawić żeby uzyskać jakiś efekt.

Znalazłem ten artykuł http://www.kminek.pl/ajax-i-bezpieczenstwo...owych-skryptow/ ale opisane w nim zabezpieczenie też nic nie daje, bo muszę i tak token wysłać za pomocą $_GET a ten $_GET muszę gdzieś zdefiniować i znowu jest otwartym tekstem.

Zrobiłem w FF eksperyment na zabezpieczeniu z artykułu, odpaliłem stronę z projektem utworzył się token który trafił do sesji, potem wyciągnąłem z JS plik .php i parametry jakie przyjmuje, następnie CTRL+T w nowej zakładce podałem ścieżkę do pliku .php z wartością tokena która była zapisana w kodzie strony oraz parametrami, po wciśnięciu ENTER oczom mym :-) ukazał się wynik skryptu Php.
Pytanie, jak zabezpieczyć taki wynalazek aby działał podobnie do joomlowego
  1. <?php
  2. defined( "_DIRECTACCESS" ) or die ('Restricted access!');
  3. ?>

chodzi mi o wycięcie bezpośredniego dostępu do pliku .php ładowanego AJAX'em.

Bo w sumie pomysł z tokenem nie jest głupi, tylko nie bardzo wiem, jak go przekazać nie wpisując go w kod strony?

Ten post edytował Sokon 15.06.2012, 10:03:36
Go to the top of the page
+Quote Post
czachor
post
Post #2





Grupa: Zarejestrowani
Postów: 897
Pomógł: 40
Dołączył: 16.12.2003
Skąd: Warszawa

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


Tzn. chcesz zablokować dostęp do plików php zezwalając na ich wywołanie tylko przez AJAX?


--------------------
how many SEO experts does it take to change a light bulb,lightbulb,light,bulb,lamp,lighting,switch,sex,xxx
5-Reasons-why-you-should-NEVER-fix-a-computer-for-free
Go to the top of the page
+Quote Post
Sokon
post
Post #3





Grupa: Zarejestrowani
Postów: 31
Pomógł: 1
Dołączył: 29.10.2008

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


tak
Go to the top of the page
+Quote Post
czachor
post
Post #4





Grupa: Zarejestrowani
Postów: 897
Pomógł: 40
Dołączył: 16.12.2003
Skąd: Warszawa

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


Możesz użyć .htaccessa:
Kod
#blokada żądań nie ajaxowych - efektem jest 503
SetEnvIfNoCase X-Requested-With XMLHttpRequest ajax
Order Deny,Allow
Deny from all
Allow from env=ajax


PS. Czasem może nie działać ze względu na niewysyłanie nagłówka X-Requested-With w niektórych przypadkach (więcej na google), ale generalnie u mnie się sprawdziło.
PS2. Powyższe wrzucasz do katalogu z plikami, do których dostęp jest tylko via ajax.

Ten post edytował czachor 15.06.2012, 10:53:03


--------------------
how many SEO experts does it take to change a light bulb,lightbulb,light,bulb,lamp,lighting,switch,sex,xxx
5-Reasons-why-you-should-NEVER-fix-a-computer-for-free
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 Aktualny czas: 21.08.2025 - 20:52