If a server was rooted, to the point that we know a Perl script which creates a remote shell was placed on the filesystem remotely, and the server was rebuilt entirely, patching the original Apache vulnerability that allowed that exploit, but the same SSL cert was used for the new Apache config (I know this is foolish); Assuming the web server just makes some PDF files available over HTTPS, what scenarios other than being able to possibly decrypt HTTPS traffic from that server via MITM are now likely (due to the fact an intruder may have the private key, csr, etc)?

TL;DR how much damage can be done theoretically on a well patched and well firewalled Linux server serving PDF documents over HTTPS if an attacker has the private key being used? I understand that they can perform MITM and decrypt SSL traffic.

3 Answers 3


If the attacker has the private key, they can fully impersonate you. They can perform MitM attacks on your traffic stream, they can redirect requests to your server in a manner undetectable to the client, and so on.

  • 2
    But creating installing a new certificate on the server isn't going to change the fact that the attacker has the old private key. You only get around this by revoking the old certificate, but you can't trust clients to always find out about the revocation.
    – kasperd
    Commented Sep 8, 2014 at 20:08

If they have your private key and you are not using PFS, they could inject malicious content in the traffic, steal anything that goes through in that HTTPS connection, redirect the people visiting the website, etc. It would be the best that you revoke your old CERT!

If you still want to use your old cert then:

When you configure the HTTPS server, use ONLY Forward secrecy (e.g.: ECDHE-RSA-AES128-GCM-SHA256 and only allow TLS 1.2):

Forward secrecy is designed to prevent the compromise of a long-term secret key from affecting the confidentiality of past conversations.

With a simple Calomel SSL Validation Add-on to Firefox or Qualys SSL Labs server test you can check that PFS is OK on your server or not.

You can give the private key a password, but it will still be in cleartext in the memory.

If your server only provides static PDF files via HTTPS, why don't you just use OpenBSD?

Do you know where they came in? Did you or somebody manage this server from a Windows machine? Maybe you should clean up there too!

Use only PFS to avoid these situations in the future.

  • How will using OpenBSD help me in this regard? We believe they came in from an unhardened JMX console in Jboss. The hacked server ran Solaris, but will be migrated to Linux. Commented Sep 8, 2014 at 16:52
  • That was only one part of my answer. You only said "Apache vulnerability" and "PDF documents over HTTPS" - undeadly.org/cgi?action=article&sid=20140827065755 - OpenBSD is creating a secure httpd. Much more secure then an apache on a linux box.
    – user54652
    Commented Sep 12, 2014 at 9:23

Its "only" the MITM problem, including the attacker not relaying the request to you at all. However, the attacker can't just decrypt your traffic, he can also modify it. For example, he could add a virus to the pdf, or add some pages/change some numbers.

A csr isn't something that needs to be kept secret.

  • 1
    It's not "only" the MITM problem, since the attacker doesn't need to be in the middle.
    – user49075
    Commented Sep 6, 2014 at 23:23
  • Please explain an additional attack
    – user10008
    Commented Sep 6, 2014 at 23:28
  • 2
    One could use the private key as if one was the server, without communicating with the real server at all.
    – user49075
    Commented Sep 7, 2014 at 0:47
  • e.g. through DNS poisoning.
    – Bob Brown
    Commented Sep 20, 2014 at 18:31
  • @BobBrown I admit that is possible, too, but if the service is dynamic, its hard to fake. MITM is just more convenient. Also, in most cases, when you can do MITM, you can also do the attack you described. But I'll edit to clarify.
    – user10008
    Commented Sep 20, 2014 at 19:18

You must log in to answer this question.

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