miniBB ® 

miniBB

®
Support Forums
  
 | Start | Register | Search | Statistics | File Bank | Manual |
The Other miniBB Support Forums / The Other /  
 

vulnerability if useSessions=TRUE [Russian]

 
Author Iliya
Guest
#1 | Posted: 11 Mar 2005 15:32 
At a configuration using useSession=TRUE in URL be added parameter PHPSESSID = which not difficultly intercept, for example having inserted in the message a picture from the a personal web server and looking its logs where PHPSESSID = will be among http-referer.

We open a forum using received PHPSESSID = and it is received from a server cookie with password hash. Further always it is possible to use this cookie for not authorized access

Sorry, my English is absolutely bad =(

Russian translate:
при конфигурации использующей useSession=TRUE в URL добавляется параметр PHPSESSID= который не сложно перехватить, например вставив в сообщение картинку со своего веб сервера и просматривая его логи, где PHPSESSID= будет среди http-referer.

Открываем форум используя полученный PHPSESSID= и получаем от сервера cookie с криптованным паролем. Дальше всегда можно использовать эту cookie для несанкционированного доступа

Iliya

Author Team
8-)
#2 | Posted: 11 Mar 2005 15:56 
Никто с этим и не спорит (а как же другие сайты, использующие сессии в URL? на них то же самое). useSession=TRUE сделан, в основном, для ущербных пользователей интранета, у которых по какой-то причине не работают куки, в версии по умолчанию это отключено и мы рекомендуем . Если вы видите другой способ передачи ID сессии - мы с удовольствием к нему прислушаемся.

Author Iliya
Guest
#3 | Posted: 11 Mar 2005 16:17 
Проблема не в том, что можно перехватить сессию, а в том, что перехватив сессию, можно получить куку с хешем пароля. А этого вполне хватит для дальнейшего доступа, даже подбирать пароль под хеш не потребуется.

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

Author Team
8-)
#4 | Posted: 11 Mar 2005 16:33 
Да, понятно, о чем речь... в принципе, ошибка наша в том, что мы ставим одинаковое значение как для cookie, так и для сессии, причем ставим cookie даже в том случае, если включены сессии. Наверное, этого делать не стоит :) Спасибо за обнаружение! Исправим.

Author Iliya
Guest
#5 | Posted: 11 Mar 2005 16:48 
Да всегда пожалста... =)
Я хотел перековырять авторизацию в miniBB, который буду ставить у себя, возможно имело бы смысл сделать что-то совместно.
мой email: admin_at_rustest.ru

Author cakeman
Partaker
#6 | Posted: 11 Mar 2005 16:59 
Yeah that is right, it is quite clear ;)

Author Team
8-)
#7 | Posted: 11 Mar 2005 17:03 
Iliya
Авторизацию какого плана? Совместить с готовой уже возможно.

Author Iliya
Guest
#8 | Posted: 11 Mar 2005 17:13 
Team
Можно несколько вопросов?
php-сессии умеют работать как с реврайтингом url, так и с передачей id-сессии через куки. Вы используете первый вариант при useSession=TRUE, а вместо второго используете хранение информации о пользователе в куках. Можно узнать причину из-за которой вы решили использовать такой алгоритм?

Author Team
8-)
#9 | Posted: 11 Mar 2005 17:34 
Потому что изначально мы не проектировали miniBB под сессии и добавили их уже потом. Чтобы не переписывать все заново, так и получилось. Да и вообще-то, только для передачи URL они и были сделаны, ибо если у пользователя включены куки - нах ему еще и сессии??

Author Iliya
Guest
#10 | Posted: 11 Mar 2005 17:48 
имхо безопаснее... в куке хранится только id-сессии, а логин/пароль хранится в файле сессии. Прочитать их в принципе не возможно. А от перехвата сессии (хотя, если хранить id-сессии в куке это уже сложно) отлично помогает хранение в сессии ip-адреса пользователя в момент создания сессии и постоянное сравнение его с текущим.

Но я не буду настаивать на своем мнении =) Мне просто было интересно, вдруг вы отказались от использования сессий по определенным причинам.

Спасибо за ответ =)

Author Fritzek
Partaker
#11 | Posted: 11 Mar 2005 19:09 
Hi Team
we talking about a serious problem? should i not switch on the sessions? you mentioned yesterday that the session mechanism is for intranet use. what does it mean for internet usage?
(sorry but I could follow your conversation with Iliya because of the russian lang)

Author Iliya
Guest
#12 | Posted: 11 Mar 2005 19:52 
Hi Fritzek
For use of a forum on the internet I do not recommend to use miniBB-session

Author Team
8-)
#13 | Posted: 14 Mar 2005 10:13 
Iliya
в куке хранится только id-сессии, а логин/пароль хранится в файле сессии. Прочитать их в принципе не возможно.
Согласен, но ведь ID сессии так же запросто можно подсмотреть через URL. К тому же, сессия ведь хранится только в то время, пока юзер на закрыл броузер, а cookie можно поставить на определенный период времени (зачем, собственно, мы это и сделали).

Как бы там ни было, мы поправим, чтобы если включены сессии, то не ставились бы cookie. Спасибо и вам за информацию!

Author Iliya
Guest
#14 | Posted: 14 Mar 2005 12:27 
Iliya
в куке хранится только id-сессии, а логин/пароль хранится в файле сессии. Прочитать их в принципе не возможно.

Team
Согласен, но ведь ID сессии так же запросто можно подсмотреть через URL.ID сессии можно хранить только в куке, а не в URL.

Team
мы поправим, чтобы если включены сессии, то не ставились бы cookieГуд. Если сделаете еще и проверку ip-адреса в сессии -- будет мегагуд :)

Author Team
8-)
#15 | Posted: 14 Mar 2005 12:55 
Iliya
IP-aдрес - вещь очень скользкая, и делать по нему проверку - все равно что не делать проверки вообще. Так что это вряд ли. А насчет ID в куки - так об этом я уже сказал :) Если включены cookie, то мы используем cookie, а не сессии. В идеале, конечно, было бы включать сессии только тогда, когда отключены cookie. Может быть, это вынести в пользовательский профайл?.. Надо подумать. Хотя тоже вряд ли - очень мало тех, кому это реально нужно.

The Other miniBB Support Forums / The Other /
 vulnerability if useSessions=TRUE [Russian]
 Share Topic's Link

Your Reply Click this icon to move up to the quoted message


  ?
Post as a Guest, leaving the Password field blank. You could also enter a Guest name, if it's not taken by a member yet. Sign-in and post at once, or just sign-in, bypassing the message's text.


Before posting, make sure your message is compliant with forum rules; otherwise it could be locked or removed with no explanation.

 

 
miniBB Support Forums Powered by Forum Software miniBB ® Home  Features  Requirements  Demo  Download  Showcase  Gallery of Arts
Compiler  Premium Extensions  Premium Support  License  Contact Us
Check out the Captcha add-on: protect your miniBB-forums from the automated spam and flood.


  ⇑