стоит подробнее рассказать про эту "неординарную задачу".
если ваш софт не умеет работать в нескольких вкладках, и вы таким образом пытаетесь от этого защититься, то не исключено что вам проще будет его научить. приделать что-нибудь на манер asp.net'овского viewstate, seam'овского conversation или gwt'шного "полнеющего" клиента. наверняка и для пхп есть фреймворки, которые что-нибудь похожее обеспечивают.
плохо то, что у каждого способа навязать состояние протоколу http имеется куча отрицательных эффектов. типа утраты кнопки "назад".
да и обходится большинство из них достаточно просто. вебовские технологии изначально открытые, поэтому мало что может защитить от подготовленного человека.
обойти жабаскрипт вообще не проблема, да и доступа к соседним вкладкам у него всё равно нет. не говоря уже о том, что никто не мешает скопировать сессионную куку и открыть страницу в другом браузере.
можно оставить нормальной страницей только логин, а остальное всё тащить на клиента аяксом. но заниматься этим будет тот же жабаскрипт и обходится это запросто.
можно пытаться ставить метки где попало, например, во флешивом local storage или html5 local storage, всяких gears и прочих websql, если они вдруг есть. но проверять это в любом случае придётся локально на клиенте, поэтому задавить такую проверку тоже легко.
более или менее пристойных результатов можно добиться если при каждом обращении сохранять в серверной сессии случайный токен, передавать его параметром в каждой форме и ссылке, а при приёме сравнивать. при этом надо сохранять маршрут и отслеживать допустимость перехода между страницами, на случай если его подменят руками. такое, кстати, можно и без жабаскрипта организовать.
наиболее секурный вариант, который навскидку придумался - это переписать софт в виде comet-приложения с постоянно висящим соединением, и следить чтобы оно было одно. ну или на каких-нить вебсокетах соединение держать, хотя их в дикой природе почти не встречается...
в общем, обладая достаточно развитой фантазией, придумать можно массу способов различной степени извращённости. поэтому определённо стоит подробнее рассказать про эту "неординарную задачу".