Given a website with various security flaws, one of them is session hijacking, session token continuously being sent as an argument over unsecured HTTP. In my field it's not surprising that others sniff networks I use, so I contacted the owner of this site and notified them of the vulnerabilities and suggested that they should use TLS encryption. Some arrogant guy replied that they know it better and it's not my business anyways.

Since it's not always possible for me to use VPN when I access this site, my question as a regular user is, are there other reliable ways to defend against people stealing my session?

6 Answers 6


Here are some suggestions. None of this will give you the same level of security as TLS would, though.

  • Don't use the site unless you really have to. But since you ask, I assume you do.
  • If you visit it, use a VPN (or Tor) as often as possible. An attacker would have to get in the middle of your VPN exit and the server in question, which is harder than getting in the middle of you and the server (but not impossible, especially not for a governmnet - or the provider of the VPN/Tor exit node...).
  • If you don't use a VPN, at least don't use it over Wi-Fi. That is so much easier to sniff than a cable network.
  • Stay logged in for as short periods of time as possible, and always logg out when you are done. Don't check the "remember me" box.
  • Unless the login page is over HTTPS, you should be more worried about your password then your session ID... If the login page is over HTTPS, always check that you have a secure connection so you don't become a victim of SSL-strip.

Depending on how likely you think it is that you will be the target of an attack this may or may not be enough. I am afraid there is not much else you can do.

  • 5
    As you can see, I did came back on my answer. Beside the fact that Tor will protect user data from computer to entry node, the exit node, which can be run by an evil person, we'll see the unencrypted traffic.
    – Xavier59
    Commented Jan 3, 2017 at 0:31
  • 5
    For general security, I would not recommend using Tor to protect yourself in this circumstance. Using Tor with a non-encrypted website gives the exit node full, easy access to everything you do on that website. This is as bad or worse than wifi-sniffing. If you are trying to protect yourself from a specific person you know has access to your network, then Tor may help. But for general security, I think Tor is a step backwards in this case.
    – phylae
    Commented Jan 3, 2017 at 3:04
  • 1
    I would agree that Tor probably isn't a good idea in this case. Tor is much more focused on providing anonymity than security. Though a VPN provider can sniff and modify unencrypted traffic the same way a Tor exit node can, I'm much more inclined to trust a major VPN provider backed by a strong privacy statement and its reputation, than a random and anonymous Tor exit node operator.
    – tlng05
    Commented Jan 3, 2017 at 7:02
  • 4
    @phylae however, the tor exit node doesn't know who you are, unlike your ISP. Sometimes this is important difference. Commented Jan 3, 2017 at 7:44
  • 2
    Another suggestion: Don't have any other websites open in the same browser while using the vulnerable website. This should reduce the chance of XSS attacks.
    – bdsl
    Commented Jan 3, 2017 at 8:38

A vpn only protects your session to the point where it exits the vpn - ssl is exactly the same but the tunnel extends to the site you are connecting to. So when you access an http site using a vpn, you are only protected against an attack on your local network and a few hops along.

If your description is accurate, and there is any sensitive data being passed in either direction, then these people are idiots who are ignoring their duty of care to their customers. But there are sites which do not exchange any sensitive with your browser.

TLS is just part of the security controls a website should implement. I don't know why you feel the need to protect their identity.


Admins of sites with high traffic and low added value generally hate HTTPS, because it uses much more resources and resources cost money. So there is always a balance between the sensitivity of exchanged data and the cost for their protection. A password should only be passed over HTTPS, for what remains, the data admin is responsible for his decision.

The best way to mitigate the risk of session hijacking is to explicitely logout when you are no longer actively connected to the site in order to have the server to reject the session token starting at that moment. In addition, the site admin will be glad because you will not let unused sessions consuming resources...

  • It's 2017. The overhead for running TLS is like $0.00003 per month. Commented Jan 3, 2017 at 12:17
  • 1
    Are you sure it is for a server having thousands or millions of hits per second? Commented Jan 3, 2017 at 12:35

If possible, tunnel your traffic through a trusted machine. I have an SSH server at home that I can tunnel through if I'm on an untrusted network. While someone could theoretically MitM your SSH server over the internet, that's far more difficult and far less likely than a local machine on a public network or a network that, as you put it, is "not surprising" to be sniffed.

You could also, as others have said, use a third-party VPN/tunnel/proxy service. These vary in quality and cost, and while I personally trust my own machine more than a third-party service, this may be more practical for you.


You say little about the site in question and what services it offers, but further steps that might be worth taking are:

  • (an obvious one this) using a strong, random, fully unique password even if you don't follow this best practice normally. They've demonstrated that they can't be trusted on security so they're prime candidates for password leaks.

  • Not using an app they provide: Could you trust it to log out? What if you're logged on to your own wifi and then go somwhere with public wifi?

  • If you have to log in using a wireless device at all, be sure to close the session when leaving a network you trust (even if you used a wired connection). I suggest not just logging out but also using your browser's tools/addons to clear everything related to the site in question on exit, and closing the browser. This will deal with accidental attempts to reload the page.

  • registering with a userID that you don't use elsewhere
  • using a pseudonym (or if you can't get away with that a misspelt/uncommon version/abbreviation of your name)
  • using an email address you don't use for anything else (and if you run a personal domain, ideally one that's not on your domain).

These three are about two things, both dervining from not allowing your personal data to be leaked to someone hijacking a session and reading your account details: Not allowing the attacker to impersonate you (beyond the bounds of the site/associated community; and not allowing them to impersonate anyone other than the site in question (in anything addressed to you) without raising your suspicions.


If you connect through a wireless network, I don't think so. Everything can be sniffed if the traffic is in plain. If the site is unsecure, I think always there is some attack to perform. Sorry, nothing to do.

  • There is plenty that can be done.
    – Polynomial
    Commented Jan 3, 2017 at 0:35

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .