I still remember the first time that I'm developing with generic handler (.ashx) and found out that the session is missing. This is because the handler implements only the basic feature (as compared to Page class).
In order for the AJAX call accessing the session information, your handler must implement the following interface:
System.Web.SessionState.IRequiresSessionState
OR
System.Web.SessionState.IReadOnlySessionState
That's all you need.