ID сесије

С Википедије, слободне енциклопедије

Идентификатор сесије, ID сесије или токен сесије је информатички податак који се користи у мрежним комуникацијама (често преко HTTP протокола) за идентификацију сесије. Сесија представља размену низа повезаних порука. Идентификатори сесије постају неопходни у случајевима у којима комуникациона инфраструктура користи протокол као што је HTTP (ХиперТекст Трансфер Протокол). На пример, купац који посећује сајт продавца жели да убаци одређен број производа у виртуелну корпу и обави куповину преласком на страницу за наплату. Овај поступак обично подразумева сталну комуникацију, када је неколико веб-страница захтевано од стране клијента и које су му послате назад од стране сервера. У таквој ситуацији, од виталног је значаја праћење тренутног стања корпе купца, а идентификатор сесије је један од начина да се постигне тај циљ.

Идентификатор сесије се обично додељује посетиоцу приликом његове прве посете сајту, односно приликом иницирања сесије.[шта?] Овај идентификатор се разликује од корисничког идентификатора. У сесијама, идентификатори су обично кратковечни (истичу након одређеног времена неактивности, које је унапред подешено, а може бити неколико минута или сати) и могу да постану неважећи након што се неки циљ испуни. На пример, када купац заврши са својом наруџбином, он не може да користи исту сесију како би додао још производа у корпу.

Будући да се идентификатори сесије често користе за идентификацију корисника који је пријављен на сајт, они могу да се злоупотребе од стране хакера како би се добиле потенцијалне привилегије. Идентификатор сесије је, по правилу, насумично генерисан стринг да би се у што већој мери смањила вероватноћа злоупотребе валидног индентификатора коришћењем хакерске методе грубе силе. Многи сервери врше додатну проверу идентитета клијента, за случај да је нападач успео да неовлашћено дође до идентификатора сесије. Закључавање сесије на IP адреси клијента је једноставан и ефективан начин заштите, све док нападач не може да се повеже на сервер користећи исту клијентску адресу. Овај приступ може изазвати проблеме за клијента уколико клијент приступа серверу истовремено на више начина (велики број интернет конекција) и уколико мрежни уређај клијента не користи НАТ протокол (пресликавање мрежне адресе).

Приликом злоупотребе сесије, најчешћи облици напада су лажирање сесије и крање сесије. Крање сесије је отимање сесије односно њеног ID-а. На пример, до идентификатора сесије се може доћи простим погађањем.[појаснити] Нападач може константно слати захтеве којима ће придруживати ID сесије. Ако апликација није добро заштићена, може доћи до тога да захтев прође и нападач се логује под налогом корисника чију је сесију погодио. Сесија се може преузети и уз помоћ колачића с рачунара клијента. Овакви покушаји преузимања сесије се називају напади лажирањем сесије.

Токен сесије је јединствени идентификатор; обично је у форми хеша, генерисаног хеш функцијом која се ствара и шаље са сервера клијенту да би се идентификовала тренутна интеракција сервера. Клијент обично складишти и шаље токен као HTTP колачић и/или као параметар у GET или POST упитима. Разлог за употребу токена сесије је да би се на клијенту само руковало идентификатором (мали део података који је иначе бесмислен[појаснити] и на тај начин не представља никакву опасност за безбедност); сви подаци везани за сесију се чувају на серверу (обично у бази података, којој корисник не може директно приступити), повезани са идентификатором. Постоји много недостатака идентификатора сесије и може се десити да неки захтеви програмера не буду испуњени. Многи програмери користе другачије (различите) логике да идентификују сесију.

Примери имена које неки програмски језици користе када именују своје колачиће укључују JSESSIONID (Јава), PHPSESSID (PHP) и ASPSESSIONID (Microsoft ASP).

Види још[уреди | уреди извор]

Спољашње везе[уреди | уреди извор]