Первый Блин . com

July 20, 2009

Новый (?) подход к секюрити вебсайта

Задумал сделать некий сервис, где особенное внимание надо уделить проблемам безопасности.
Т.е. исходная задача такова: есть некий общеизвестный сервис (с нами никак не связанный кроме того, что каждый может там иметь аккаунт), мы хотим приделать к этому сервису некую дополнительную функциональность (неважно какую), и вот возникает проблема, как хранить логины-пароли от этого сервиса, если мы их не можем держать в хэше (как, скажем, пароль от нашей системы) оттого. что пароль от внешнего сервиса нам надо будет использовать в открытом виде.

Ну как пример нашей системы можно рассматривать сервис BestPersons.ru.
Они предоставляют единый интерфейс к нескольким веб2.0 сервисам и блогам - и, соответственно, должны хранить у себя ваши пароли от всех сервисов.
Их как-то взламывали уже, поэтому проблема безопасности - это номер один.

Так вот, я решение придумал,
но если оно является общеизвестным, я не виноват, я честно не знал :)

Идея в том, чтоб иметь 2 сервера (frontend и backend).

Один сервер (frontend) принимает всю информацию от юзеров (зарегистрироваться, внести в систему какой-то блог, отправить постинг и тд) и складывает запросы в специальное место (message queue какой-нибудь). А второй сервер (backend), не имеющий интерфейса вообще (это важно), заглядывает в эту кучу периодически и проверяет - не появились ли новые запросы? Если появились - обрабатывает и удаляет из кучи.

Таким образом все запросы, все логины и все пароли хранятся на втором (backend) сервере, к ним доступа у злоумышленников нет в принципе даже при взломе первого сервера. А взломать backend сервер сложновато, т.к. у него нет интерфейса вообще (да и сам сервер может быть просто засекречен), от него исходят запросы, а к нему запросы все просто отфутболиваются автоматически на уровне сервера.

Можно для пущей важности еще по крону установить проверку целостности скриптов и БД на первом сервере (проверка производится тем же backend сервером) - тогда любой взлом первого сервера фиксируется вторым сервером в течение 10 минут (ну или на сколько вы там крон установите).

Дарю эту идею сервису best persons.

Кстати, у них же написано в рекламе "ваши логины-пароли зашифрованы какой-то хренью, что информация недоступна даже администрации сервиса".
Заявляю без сомнений: полная ахинея для домохозяек.
Если этот сервис делает автоматические запросы к блогам или социалкам, передавая туда ваши логин-пароль в открытом виде, то как это может быть недоступно администрации best persons?
Если есть шифрование, то есть и дешифрование.
Т.е. либо врут, либо сами не понимают.
Сами не понимают - это вряд ли, кстати :)

0 Comments:

Post a Comment

Links to this post:

Create a Link

<< Home