php + ajax защита

Статус
В этой теме нельзя размещать новые ответы.

kennedy

Новичок
php + ajax защита

Как защитить php скрипт который вызывается через ajax

пример

$("#div").load("/php.php");

if($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest' && $_SERVER['HTTP_REFERER'] == 'http://site.com') echo test;

есть что то более надежное?
 

kennedy

Новичок
от всех не хороших людей которые воруют контент. php должен возвращать уникальную ссылку на файл. нужно сделать так что бы эту ссылку могли запросить только с моего сайта.
 

Beavis

Banned
kennedy
можно в сессию что-нибудь записывать и проверять
можно в урле что-нибудь уникальное передавать
 

kennedy

Новичок
Откуда это уникальное брать? Генерировать javascript который абсолютно никак не защищен? По поводу сессии ее еще проще подделать чем http заголовок.
 

Фанат

oncle terrible
Команда форума
нужно сделать так что бы эту ссылку могли запросить только с моего сайта.
Это невозможно.
Ни хорошие, ни нехорошие люди ссылок с сайта не запрашивают. Ссылку запрашивают из браузера. Go figure
 

kennedy

Новичок
а если быть точнее то и ссылок никаких не запрашивают. запрашивается двоичная информация компьютером а браузер только для удобства. но к чему такие мелочи? на чистом php это сделать не сложно там можно генерировать уникальный ключ в зависимости от времени с javascript сложнее так как видно весь исходный код. думал может есть какой то способ. а оказывается ajax одна сплошная дыра. ладно. спасибо. сделаю по другом.
 

Фанат

oncle terrible
Команда форума
Аякс НИЧЕМ не отличается от "чистого РНР".
тому, кто это поймет, откроются тайные знания мира.
 

Alexandre

PHPПенсионер
это элементарно делается средствами WEB сервера, который имеет соответствующие модули или средствами php.
 

kennedy

Новичок
Вот я одного не понимаю. Зачем писать что это делается элементарно и при этом не наводить пример.
Средствами веб сервера --> какими?
Средствами php --> какими?

Конкретный вопрос, конкретный ответ.
Два слова что бы понять смысл.
 

Alexandre

PHPПенсионер
Средствами веб сервера --> какими?
для каждого web сервера свой модуль
nginx это ngx_accesskey_module
есть аналоги и для апача и лайти.
Средствами php --> какими?
через куку, в которую пишут хеш соленого урла. часть работы можно выполнить на стороне клиента, например запросить случайный код и замешать его в урл или куку. В любом случае - это усложнит доступ на порядок.
 

kennedy

Новичок
ngx_http_access_module
закрывает доступ по ай-пи. для этого и мод не нужен.
куки можно подделать это с разряда защиты XMLHttpRequest referrer небольшие манипуляции и вуаля...
 

kennedy

Новичок
о вашем модуля я никогда не слышал. гугл яндекс тоже молчит. думал ошиблись.
 

Фанат

oncle terrible
Команда форума
Средствами php --> какими?
один чувак на этом форуме писал
Автор оригинала: kennedy
на чистом php это сделать не сложно
попробуй у него спросить.

а с веб-сервером вы, чуваки, опять загнули. оно же как было дураком, так и останется. новую букву только выучит, чтобы щеки раздувать.

-~{}~ 06.04.10 20:02:

оно же даже не определилось еще само, от кого и какой доступ закрывает. а вы уже задрав штаны с ответами бежите
 

kennedy

Новичок
как вы модуль обозвали так и искал. ничего уникального в модуле нет. получать md5 средствами javascript глупо передать md5 с php в javascript нет возможности я это уже писал.

*****
Насколько я понял самый главный хам на форуме.

-~{}~ 06.04.10 20:09:

ух ты, за звездочками прячешься ;)
 

kennedy

Новичок
я уже давно переписал скрипт уже все работает. а через сессии не устраивает потому что создать сессию получить куки подделать http заголовок все это не сложно. было бы желание.
 

Фанат

oncle terrible
Команда форума
Вообще, я стараюсь сдерживаться. И не называть вещи своими именами. И в этот раз, пожалуй, зря погорячился. Но проблема в том, что я очень не люблю воинствующую некомпетентность. Таких, конечно, надо просто сразу закрывать. И не выспрашивать, как опять эти местные гуры сейчас примутся, "а расскажи, как ты сделал". Ну ясно же, что сделал так же, как и все остальное - через одно место. Пусть верит, что сделал хорошую защиту.
Постараюсь исправиться. Больше никаких плохих слов.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху