Если данные сессии передаются по защищенному протоколу то пepeхватить сессию или куку будет сложно(не знаю насчет невозможно), подобрать идентификатор сессии как вариант, но там очень много вариантов не уверен что совпадет момент при активной сессии.
Время жизни сессии по умолчанию составляет 1440 секунд. Пользователь будет удивлен обнаружив через час пустую корзину(поэтому я дублирую кукой и при просрочке сессии обновляю куку).
Предела безопасности нет, можно заставить сервер с клиентов обмениваться сертификатами безопасности, подтверждать IP постоянно, вопрос что за данные вы передаете и какой интерес от взлома. Для интернет магазинов хватает сессии, для юридически значимых сделок(торги, закупки, налоги) нужен более защищенный обмен информацией с подтверждением пользователя.