129-reject-plaintext-ports.txt 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. Filename: 129-reject-plaintext-ports.txt
  2. Title: Block Insecure Protocols by Default
  3. Version: $Revision$
  4. Last-Modified: $Date$
  5. Author: Kevin Bauer & Damon McCoy
  6. Created: 2008-01-15
  7. Status: Closed
  8. Implemented-In: 0.2.0.x
  9. Overview:
  10. Below is a proposal to mitigate insecure protocol use over Tor.
  11. This document 1) demonstrates the extent to which insecure protocols are
  12. currently used within the Tor network, and 2) proposes a simple solution
  13. to prevent users from unknowingly using these insecure protocols. By
  14. insecure, we consider protocols that explicitly leak sensitive user names
  15. and/or passwords, such as POP, IMAP, Telnet, and FTP.
  16. Motivation:
  17. As part of a general study of Tor use in 2006/2007 [1], we attempted to
  18. understand what types of protocols are used over Tor. While we observed a
  19. enormous volume of Web and Peer-to-peer traffic, we were surprised by the
  20. number of insecure protocols that were used over Tor. For example, over an
  21. 8 day observation period, we observed the following number of connections
  22. over insecure protocols:
  23. POP and IMAP:10,326 connections
  24. Telnet: 8,401 connections
  25. FTP: 3,788 connections
  26. Each of the above listed protocols exchange user name and password
  27. information in plain-text. As an upper bound, we could have observed
  28. 22,515 user names and passwords. This observation echos the reports of
  29. a Tor router logging and posting e-mail passwords in August 2007 [2]. The
  30. response from the Tor community has been to further educate users
  31. about the dangers of using insecure protocols over Tor. However, we
  32. recently repeated our Tor usage study from last year and noticed that the
  33. trend in insecure protocol use has not declined. Therefore, we propose that
  34. additional steps be taken to protect naive Tor users from inadvertently
  35. exposing their identities (and even passwords) over Tor.
  36. Security Implications:
  37. This proposal is intended to improve Tor's security by limiting the
  38. use of insecure protocols.
  39. Roger added: By adding these warnings for only some of the risky
  40. behavior, users may do other risky behavior, not get a warning, and
  41. believe that it is therefore safe. But overall, I think it's better
  42. to warn for some of it than to warn for none of it.
  43. Specification:
  44. As an initial step towards mitigating the use of the above-mentioned
  45. insecure protocols, we propose that the default ports for each respective
  46. insecure service be blocked at the Tor client's socks proxy. These default
  47. ports include:
  48. 23 - Telnet
  49. 109 - POP2
  50. 110 - POP3
  51. 143 - IMAP
  52. Notice that FTP is not included in the proposed list of ports to block. This
  53. is because FTP is often used anonymously, i.e., without any identifying
  54. user name or password.
  55. This blocking scheme can be implemented as a set of flags in the client's
  56. torrc configuration file:
  57. BlockInsecureProtocols 0|1
  58. WarnInsecureProtocols 0|1
  59. When the warning flag is activated, a message should be displayed to
  60. the user similar to the message given when Tor's socks proxy is given an IP
  61. address rather than resolving a host name.
  62. We recommend that the default torrc configuration file block insecure
  63. protocols and provide a warning to the user to explain the behavior.
  64. Finally, there are many popular web pages that do not offer secure
  65. login features, such as MySpace, and it would be prudent to provide
  66. additional rules to Privoxy to attempt to protect users from unknowingly
  67. submitting their login credentials in plain-text.
  68. Compatibility:
  69. None, as the proposed changes are to be implemented in the client.
  70. References:
  71. [1] Shining Light in Dark Places: A Study of Anonymous Network Usage.
  72. University of Colorado Technical Report CU-CS-1032-07. August 2007.
  73. [2] Rogue Nodes Turn Tor Anonymizer Into Eavesdropper's Paradise.
  74. http://www.wired.com/politics/security/news/2007/09/embassy_hacks.
  75. Wired. September 10, 2007.
  76. Implementation:
  77. Roger added this feature in
  78. http://archives.seul.org/or/cvs/Jan-2008/msg00182.html
  79. He also added a status event for Vidalia to recognize attempts to use
  80. vulnerable-plaintext ports, so it can help the user understand what's
  81. going on and how to fix it.
  82. Next steps:
  83. a) Vidalia should learn to recognize this controller status event,
  84. so we don't leave users out in the cold when we enable this feature.
  85. b) We should decide which ports to reject by default. The current
  86. consensus is 23,109,110,143 -- the same set that we warn for now.