Santyago

Рейтинг
30
Регистрация
15.07.2008
Helias:
Если доработанный DLE, Joomla, etc решает поставленные задачи, то какие проблемы?

Проблемы в религиозных различиях :)

А те, у кого с толерантностью всё нормально, берут наиболее подходящий двиг/фрэймвёк под конкретную задачу, затачивают его и зарабатывают вечно зелёных президентов. И в холиварах типа "Джумла - гавно, ДЛЕ - круто" участвуют разве что поржать. :)

Чеширский:
Информация не имеет вообще никакой цены. Тут дело принципа )
Спор это короче))) И для меня мой оппонент = школота) Но я повёлся)

Аааа... Понятно.

Чеширский:
Так... а если я ещё усложню задачу тем, что отправляемый пакет буду шифровать с ключом, который зависит от сессии, и возвращать обратно в зашифрованном виде, а сами функции шифрования раскидаю по разным js, которые запакую и обфусцирую? Это насколько задержит?
Мне надо сделать, чтобы этот сервис школоте было проще написать самим с нуля, чем трахаться над его разбором. Грубо гря, чтобы они оценивали трудозатраты на парсинг и прочее более чем на 100к?)

Можно нескромный вопрос? :)

Что это за бесценная информация такая?

Чеширский:
ок )

Думаю тогда 4 стенки сделать:

а) реферер
б) сессии
в) json с обфускацией
г) проверка на обращение к файлу (например картинка).

Это достаточно усложнит задачу школоте?

Жесть...

На Пентагон работаете? :)

Кстати, по поводу картинки... Это "заапргредженная версия" простой сессии которую я предлагал. И в принципе, если подобрать хороший алгоритм формирования капчи, то поломать её будет довольно трудоёмким делом. Если ещё и "хороший алгоритм" разбавить чем-то своим, чтобы его не смогли поломать готовые капча-парсеры, то вообще замечательно будет.

Santyago добавил 12.02.2010 в 19:01

bearman:
Чеширский, если школота знает что такое снифер, то это не 1 минута, а 2 минуты.

Снифер не поможет, если капчу придётся раскалывать.

Чеширский:
=( угу.
А по другому ведь никак )

И исходя из этой архитектуры максимум что можно сделать - это защиту через сессии.

"Защиту от дурака" реализовать и в большинстве случаев этого будет достаточно.

Потому что 100% защиту ты не сделаешь никогда. Поставив перед собой цель, из твоего сайта всё равно можно будет вытянуть что-угодно через Curl + листинг анонимных проксиков.

Лично я недавеча парсил выдачу одного из сервисов Гугли, который, конечно же, очень неплохо защищён от этого. И ничего... Чихнул пару раз от возмущения и всё отдал. )))

Поэтому всегда должен быть разумный компромисс между затратами на защиту и стоимостью защищаемых данных. Это - главное. 100% защитить можно только выдернув из сервака сетевой кабель.

Чеширский:

Тогда вопрос другой)))
Альтернатив нет?)

Нету. Мы все умрём.

bearman:
вас ничто не спасет, поверьте.

))))))))))) Пять!

Люди, читавшие RFC1945, взломают что-угодно )))))

bearman:
Santyago, я так понял, что 2.php не вызывается браузером напрямую, а через 1.пхп, если неправ, то очевидно что этот метод не сканает :)

Судя по этому

$.ajax({

type: "POST",
url: "2.php"+data,
dataType: "xml",
success: parseXml
});
});

Таки вызывается из браузера и задача как раз в том, чтобы запретить прямые вызовы без захода на страницу сайта. Если не прав - тоже поправьте... :)

bearman:
bearman добавил 12.02.2010 в 18:26минута от силы.

Гм... А кофе заварить?.. :D

Чеширский:
Рефер подделывается, запрос (пост или гет) можно тоже выбирать. Не канает.

Именно так. Рекомендация нулёвая.

Самый простой метод: сделать через сессии. При обращении к 1.php создаётся сессия, кук с её идентификатором попадает в браузер, где выполняется ajax-запрос. Вместе с этим запросом в 2.php уходит кук с айди открытой сессии. В 2.php необходимо сделать проверку на существование сессионного кука, на существование этой сессии и только тогда отдавать XML. Т.о. мы получаем _обязательную_ необходимость посещения 1.php перед тем как получить данные из 2.php.

Скажу честно, такую защиту я поломаю с помощью Curl примерно минут за 10. Но не зная методики защиты, для большинства это будет проблемой. Так что, лучше так, чем вообще никак. :)

Дальше уже можно навернуть ещё что-то сверху этого метода. Для начала, думаю, и этого хватит.

Santyago добавил 12.02.2010 в 18:24

bearman:
"ключик" добавьте

2.php?mysecretkey=yahahahah_you_are_fucking_hacker_lamer

ну и 2.php
<?
if($_GET['mysecretkey'] != "yahahahah_you_are_fucking_hacker_lamer")
{
die(strtoupper(str_replace("_"," ","yahahahah_you_are_fucking_hacker_lamer")));
}

Т.е. один ключик для всех? Смотришь исходник в браузере, копируешь ключик и используешь сколько влезет?

T.R.O.N:
да вы что? откуда инфа?
ВЫ путаете с CGI::Session... это у него создается механизм файловый/мускульный/иной

ППЦ... Ну точно тролль...

Apache::Session - A persistence framework for session data

Apache::Session is a persistence framework which is particularly useful for tracking session data between httpd requests. Apache::Session is designed to work with Apache and mod_perl, but it should work under CGI and other web servers, and it also works outside of a web server altogether.

_it also works outside of a web server altogether_

Перевести?

CGI::Session - persistent session data in CGI applications

CGI-Session is a Perl5 library that provides an easy, reliable and modular session management system across HTTP requests. Persistency is a key feature for such applications as shopping carts, login/authentication routines, and application that need to carry data accross HTTP requests. CGI::Session does that and many more

Всё. Это мой последний пост в данном топике в виду полной неадекватности главного оппонента.

Best regards!

Всего: 302