サーバー側のHTTPリクエストを実行できます。C#では次のようになります。
HttpWebRequest req = (HttpWebRequest)WebRequest.Create("/ASPSession.ASP?SessionVar=" + SessionVarName);
req.Headers.Add("Cookie: " + SessionCookieName + "=" + SessionCookieValue);
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
Stream receiveStream = resp.GetResponseStream();
System.Text.Encoding encode = System.Text.Encoding.GetEncoding("utf-8");
StreamReader readStream = new StreamReader(receiveStream, encode);
string response = readStream.ReadToEnd();
resp.Close();
readStream.Close();
return response;
ASP側では、XSSスタイルの攻撃を防ぐために、リクエストがローカルホストからのみ送信されることを確認します。その後、応答はSession変数の値になります。
Cookieの検索は非常に簡単です。SessionCookieはすべて類似した名前を持っているため、適切なCookieが見つかるまでCookieコレクションを調べてください。これは、Cookieがドメイン全体で有効であり、使用しているサブフォルダーだけで有効でない場合にのみ機能することに注意してください。