3

We are going to have some kind of secure VoIP implementation. We have come into make decision between VPN-based methods like PPTP or L2TP/IPsec and TLS-based methods. The question is which one is better; more secure and more efficient for VoIP applications? If we had both in work, could we obtain more security (confidentiality, authenticity, and integrity)? Thank you very much in advance.

7
  • To aks for "more security" and "more efficiency" at the same time is in general contradictory. But in your list, avoid PPTP since it's not at all secure. BTW, if tunnels re an option, why not look at OpenVPN?
    – Run CMD
    Nov 17, 2015 at 6:54
  • I know that OpenVPN is a TLS-based software and can be a good candidate. But, the question in my head remains unanswered. I want to know if we have security services in different layers, as it can be obtained by using IPsec in network layer and others in application layer, does it help to improve security or they just result in additional overhead without any further functionality?
    – Nasser
    Nov 17, 2015 at 8:15
  • Your original Q is regarding a secure tunnel vs a secure connection. Now you say your Q is regarding secure Internet Layer vs secure Application Layer. But in reality, you have only so many architectural options. One is an (in itself) insecure tunnel over a secure connection, and one is a secure tunnel over an (in itself) insecure connection. Finally, one more option you seem to ask for is a secure connection without a tunnel. So I assume you have the following Qs: 1) Comparison of tunnel compared vs connection; 2) Comparison of L2TP/IPSec vs OpenVPN. Is that correct?
    – Run CMD
    Nov 17, 2015 at 9:41
  • Thank you very much. You exactly mention it. It can be understandable for me to have a secure connection without a tunnel, as it is in TLS, and also an insecure connection over a secure tunnel. But, I have no idea what a secure connection over insecure tunnel is intended for?
    – Nasser
    Nov 17, 2015 at 10:03
  • And, it is of high significance if you could give a comrehensive comparison between L2TP/IPsec and OpenVPN.
    – Nasser
    Nov 17, 2015 at 10:06

2 Answers 2

1

Which one is more secure and efficient for VoIP: PPTP, L2TP, or TLS...

Here is some general information related to the question... VoIP can use dynamic compression codes and codecs, so they can be insecure regardless of the underlying encryption technology. See, for example, Spot me if you can: Uncovering spoken phrases in encrypted VoIP conversations.

Also, the NSA produces a phone for the US government using commodity hardware. The phones use two layers of encryption. The first is a traditional IPSec VPN. The second is a encrypted VoIP using stream SRTP tunneled through the VPN. So you have both network layer and application layer security. See, for example, Fishbowl (secure phone).

Also, the question is kind of vague (but in non-obvious ways)... We don't know what your security model is, and we don't know what your threat model is, so its hard to say which will (or will not) meet your goals and objectives. Apparently, NSA's threat model includes a cryptanalysis that VPN alone cannot contain :)

2
  • Thank you very much. My threat model is the same. I've threats in both network and application layer. I want to know if I exploit the confidentiality provided by TLS as the application layer encryption, and use IPsec for the network layer encryption, how much it would be confidential? Indeed, by doing this, I will have two level of encryptions with two different keys. So, I think it brings about more confidentiality. Am I right?
    – Nasser
    Nov 21, 2015 at 6:01
  • While it's true that the Q is not exactly detailed regarding potential threats to secure against, I feel it doesn't help to add information such as "spot me if you can" without being clear what it actually means. Thee "spot me if you can" scenario can only be applied if you have access to encrypted VoIP packets, which would not apply if you can only monitor the encrypted tunnel. So depending on the VoIP approach, this scenario may not even apply internally.
    – Run CMD
    Nov 22, 2015 at 10:00
3

Regarding architecture, considering the options in each of the two dimensions separately:

  • Secured tunnel vs secure connection:

    • In a VoIP scenario, usually there are many connections involved. VoIP clients register with a VoIP server, but for the actual call, the clients directly connect.
    • Establishing a secured connection involves a huge overhead as compared to establishing insecure connections, which a secure tunnel avoids.
    • Conceptually, some attacks are possible only during the connection phase, so a tunnel reduces the number of points in time where such attacks can take place.
    • Regarding setup and maintenance, I prefer a VPN connection. E.g. no unnecessary server exposure and easier filter rules for acceptance of connections (only local IP addresses). Also, you'll primarily have to monitor security advisories for the tunnel alone, rather than having to monitor them for all exposed services.
    • Regarding security, a secured tunnel will keep an observer from seeing how your two LANs interact, so he'll gain much fewer information and have fewer points to attack.
  • Two-layer tunnel with secure higher layer vs secure lower layer:

    • Although there are conceptual differences regarding possible attacks, the degree of security is comparable.
    • In practice, securing the tunnel allows for higher flexibility (see below).

Regarding the specific solutions you mention:

  • PPTP is flawed and insecure and does not provide any reasonable amount of security.
  • L2TP/IPsec is an approach with an (in itself) insecure tunnel over a secured connection.
    • Security is very high and no leaks are known, although it has been indicated that intelligence agencies have tried to introduce vulnerabilities.
    • A fixed port and protocol is required, and any usage of IPv6 cannot be hidden in the tunnel but is obvious to the outside. This means that all infrastructure between the VPN endpoints must support this particular setup.
  • OpenVPN is an approach with a secured tunnel over an (in itself) insecure connection.
    • With TLS, security is very high and no security leaks are known.
    • The tunnel can use any IP infrastructure, including the port of your choice and hiding internal details of the tunnel, such that you can route IPv6 packets through the tunnel even though the infrastructure between the VPN endpoints supports only IPv4.
  • IPsec offers a tunnel mode where the encrypted data packets are wrapped into new data packets. This mode differs from L2TP/IPsec in the authentication methods which it provides. Whenever you need a kind of logon, this mode cannot be used easily.

Conclusion:

  • Go for a tunnel approach due to higher overall security (likelihood) and fewer headaches.
  • Given that security is comparable, I'd favour OpenVPN due to its higher flexibility. But study the details of the security aspects of both approaches; if users can set up OpenVPN connections it may become much less secure.
  • If performance is more important than flexibility, some have claimed OpenVPN is faster but honestly I'd do my own test under given circumstances, because if there are performance differences worth mentioning, then I'd not expect them to be based on the software alone (just a gut feeling).
6
  • Many thanks. But, in case of L2TP/IPsec, how a secured connection is established? By using IPsec? In fact, I cannot understand what do you mean by connection.
    – Nasser
    Nov 17, 2015 at 11:58
  • I'm using the term "connection" for a host-to-host connection and "tunnel" for something with two routing endpoints. Yes, L2TP/IPsec establishes a secure host-to-host connection and establishes an unsecured tunnel on top of it.
    – Run CMD
    Nov 17, 2015 at 12:04
  • I'm really sorry, but I've a lot of questions in my mind. AFAIK, there is also a tunnel mode with IPsec, which is secure indeed. So, why it is used with L2TP for tunneling? Why we need an insecure tunnel over a secured connection?
    – Nasser
    Nov 17, 2015 at 12:17
  • No, there's no tunnel in IPsec. Where did you read that? L2TP is a separate tunnel protocol, which can use e.g. IPsec as an underlying layer. Read / as "over" in the context of protocols, e.g. "TCP/IP" is "TCP ocer IP" and "L2TP/IPsec" is "L2TP over IPsec".
    – Run CMD
    Nov 17, 2015 at 13:13
  • OK. But, we have both tunnel mode and transport mode in IPsec. Tunnel mode is usually used in scenarios where traffic between two gateways is intended to be transferred securely. While, with transport mode, the traffic between two hosts is secured. Moreover, in transport mode, the GRE protocol is usually used to first encapsulate IP packets and then to encrypt them using IPsec encryption algorithms.
    – Nasser
    Nov 17, 2015 at 13:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.