idnits 2.17.1 draft-irtf-pearg-safe-internet-measurement-03.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (May 18, 2020) is 1411 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- No issues found here. Summary: 0 errors (**), 0 flaws (~~), 1 warning (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group I. Learmonth 3 Internet-Draft Tor Project 4 Intended status: Informational May 18, 2020 5 Expires: November 19, 2020 7 Guidelines for Performing Safe Measurement on the Internet 8 draft-irtf-pearg-safe-internet-measurement-03 10 Abstract 12 Researchers from industry and academia often use Internet 13 measurements as part of their work. While these measurements can 14 give insight into the functioning and usage of the Internet, they can 15 come at the cost of user privacy. This document describes guidelines 16 for ensuring that such measurements can be carried out safely. 18 Note 20 Comments are solicited and should be addressed to the research 21 group's mailing list at pearg@irtf.org and/or the author(s). 23 The sources for this draft are at: 25 https://github.com/irl/draft-safe-internet-measurement 27 Status of This Memo 29 This Internet-Draft is submitted in full conformance with the 30 provisions of BCP 78 and BCP 79. 32 Internet-Drafts are working documents of the Internet Engineering 33 Task Force (IETF). Note that other groups may also distribute 34 working documents as Internet-Drafts. The list of current Internet- 35 Drafts is at https://datatracker.ietf.org/drafts/current/. 37 Internet-Drafts are draft documents valid for a maximum of six months 38 and may be updated, replaced, or obsoleted by other documents at any 39 time. It is inappropriate to use Internet-Drafts as reference 40 material or to cite them other than as "work in progress." 42 This Internet-Draft will expire on November 19, 2020. 44 Copyright Notice 46 Copyright (c) 2020 IETF Trust and the persons identified as the 47 document authors. All rights reserved. 49 This document is subject to BCP 78 and the IETF Trust's Legal 50 Provisions Relating to IETF Documents 51 (https://trustee.ietf.org/license-info) in effect on the date of 52 publication of this document. Please review these documents 53 carefully, as they describe your rights and restrictions with respect 54 to this document. 56 1. Introduction 58 Performing research using the Internet, as opposed to an isolated 59 testbed or simulation platform, means that experiments co-exist in a 60 space with other users. This document outlines guidelines for 61 academic and industry researchers that might use the Internet as part 62 of scientific experimentation to mitigate risks to the safety of 63 other users. 65 1.1. Scope of this document 67 Following the guidelines contained within this document is not a 68 substitute for any institutional ethics review process, although 69 these guidelines could help to inform that process. Similarly, these 70 guidelines are not legal advice and local laws must also be 71 considered before starting any experiment that could have adverse 72 impacts on user safety. 74 The scope of this document is restricted to guidelines that mitigate 75 exposure to risks to Internet user safety when measuring properties 76 of the Internet: the network, its constiuent hosts and links, or its 77 users traffic. 79 For the purpose of this document, an Internet user is an individual 80 or organisation that uses the Internet to communicate, or maintains 81 Internet infrastructure. 83 1.2. Threat Model 85 A threat is a potential for a security violation, which exists when 86 there is a circumstance, capability, action, or event that could 87 breach security and cause harm [RFC4949]. Every Internet measurement 88 study has the potential to subject Internet users to threat actions, 89 or attacks. 91 Many of the threats to user safety occur from an instantiation (or 92 combination) of the following: 94 Surveillance: An attack whereby an Internet user's information is 95 collected. This type of attack covers not only data but also 96 metadata. 98 Inadequate protection of collected data: An attack where data, either 99 in flight or at rest, was not adequately protected from disclosure. 100 Failure to adequately protect data to the expectations of the user is 101 an attack even if it does not lead to another party gaining access to 102 the data. 104 Traffic generation: An attack whereby traffic is generated to 105 traverse the Internet. 107 Traffic modification: An attack whereby the Internet traffic of users 108 is modified. 110 Any conceivable Internet measurement study might be considered an 111 attack on an Internet user's safety. It is always necessary to 112 consider the best approach to mitigate the impact of measurements, 113 and to balance the risks of measurements against the benefits to 114 impacted users. 116 1.3. Measurement Studies 118 Internet measurement studies can be broadly categorized into two 119 groups: active measurements and passive measurements. Active 120 measurements generate or modify traffic while passive measurements 121 use surveillance of existing traffic. The type of measurement is not 122 truly binary and many studies will include both active and passive 123 components. The measurement of generated traffic may also lead to 124 insights into other users' traffic indirectly. 126 XXX On-path/off-path 128 XXX One ended/two ended 130 1.4. User Impact from Measurement Studies 132 Consequences of attacks 134 Breach of Privacy: data collection. This impact also covers the case 135 of an Internet user's data being shared beyond that which a user had 136 given consent for. 138 Impersonation: An attack where a user is impersonated during a 139 measurement. 141 XXX Legal 143 XXX Other Retribution 144 System corruption: An attack where generated or modified traffic 145 causes the corruption of a system. This attack covers cases where a 146 user's data may be lost or corrupted, and cases where a user's access 147 to a system may be affected. 149 XXX Data loss, corruption 151 XXX Denial of Service (by which self-censorship is covered) 153 XXX Emotional Trauma 155 2. Consent 157 XXX a user is best placed to balanced risks vs benefits themselves 159 In an ideal world, informed consent would be collected from all users 160 that may be placed at risk, no matter how small a risk, by an 161 experiment. In cases where it is practical to do so, this should be 162 done. 164 2.1. Informed Consent 166 For consent to be informed, all possible risks must be presented to 167 the users. The considerations in this document can be used to 168 provide a starting point although other risks may be present 169 depending on the nature of the measurements to be performed. 171 2.2. Informed Consent: Case Study 173 A researcher would like to use volunteer owned mobile devices to 174 collect information about local Internet censorship. Connections 175 will be made from the volunteer's device towards known or suspected 176 blocked webpages. 178 This experiment can carry substantial risk for the user depending on 179 the circumstances, from disciplinary action from their employer to 180 arrest or imprisonment. Fully informed consent ensures that any risk 181 that is being taken has been carefully considered by the volunteer 182 before proceeding. 184 2.3. Proxy Consent 186 In cases where it is not practical to collect informed consent from 187 all users of a shared network, it may be possible to obtain proxy 188 consent. Proxy consent may be given by a network operator or 189 employer that would be more familiar with the expectations of users 190 of a network than the researcher. 192 In some cases, a network operator or employer may have terms of 193 service that specifically allow for giving consent to 3rd parties to 194 perform certain experiments. 196 2.4. Proxy Consent: Case Study 198 A researcher would like to perform a packet capture to determine the 199 TCP options and their values used by all client devices on an 200 corporate wireless network. 202 The employer may already have terms of service laid out that allow 203 them to provide proxy consent for this experiment on behalf of the 204 employees (the users of the network). The purpose of the experiment 205 may affect whether or not they are able to provide this consent. For 206 example, to perform engineering work on the network then it may be 207 allowed, whereas academic research may not be covered. 209 2.5. Implied Consent 211 In larger scale measurements, even proxy consent collection may not 212 be practical. In this case, implied consent may be presumed from 213 users for some measurements. Consider that users of a network will 214 have certain expectations of privacy and those expectations may not 215 align with the privacy guarantees offered by the technologies they 216 are using. As a thought experiment, consider how users might respond 217 if asked for their informed consent for the measurements you'd like 218 to perform. 220 Implied consent should not be considered sufficient for any 221 experiment that may collect sensitive or personally identifying 222 information. If practical, attempt to obtain informed consent or 223 proxy consent from a sample of users to better understand the 224 expectations of other users. 226 2.6. Implied Consent: Case Study 1 228 A researcher would like to run a measurement campaign to determine 229 the maximum supported TLS version on popular web servers. 231 The operator of a web server that is exposed to the Internet hosting 232 a popular website would have the expectation that it may be included 233 in surveys that look at supported protocols or extensions but would 234 not expect that attempts be made to degrade the service with large 235 numbers of simultaneous connections. 237 2.7. Implied Consent: Case Study 2 239 A researcher would like to perform A/B testing for protocol feature 240 and how it affects web performance. They have created two versions 241 of their software and have instrumented both to report telemetry 242 back. These updates will be pushed to users at random by the 243 software's auto-update framework. The telemetry consists only of 244 performance metrics and does not contain any personally identifying 245 or sensitive information. 247 As users expect to receive automatic updates, the effect of changing 248 the behaviour of the software is already expected by the user. If 249 users have already been informed that data will be reported back to 250 the developers of the software, then again the addition of new 251 metrics would be expected. There are risks in pushing any new 252 software update, and the A/B testing technique can reduce the number 253 of users that may be adversely affected by a bad update. 255 The reduced impact should not be used as an excuse for pushing higher 256 risk updates, only updates that could be considered appropriate to 257 push to all users should be A/B tested. Likewise, not pushing the 258 new behaviour to any user should be considered appropriate if some 259 users are to remain with the old behavior. 261 In the event that something does go wrong with the update, it should 262 be easy for a user to discover that they have been part of an 263 experiment and roll back the change, allowing for explicit refusal of 264 consent to override the presumed implied consent. 266 3. Safety Considerations 268 3.1. Isolate risk with a dedicated testbed 270 Wherever possible, use a testbed. An isolated network means that 271 there are no other users sharing the infrastructure you are using for 272 your experiments. 274 When measuring performance, competing traffic can have negative 275 effects on the performance of your test traffic and so the testbed 276 approach can also produce more accurate and repeatable results than 277 experiments using the public Internet. 279 WAN link conditions can be emulated through artificial delays and/or 280 packet loss using a tool like [netem]. Competing traffic can also be 281 emulated using traffic generators. 283 3.2. Be respectful of other's infrastructure 285 If your experiment is designed to trigger a response from 286 infrastructure that is not your own, consider what the negative 287 consequences of that may be. At the very least your experiment will 288 consume bandwidth that may have to be paid for. 290 In more extreme circumstances, you could cause traffic to be 291 generated that causes legal trouble for the owner of that 292 infrastructure. The Internet is a global network crossing many legal 293 jurisdictions and so what may be legal for you is not necessarily 294 legal for everyone. 296 If you are sending a lot of traffic quickly, or otherwise generally 297 deviate from typical client behaviour, a network may identify this as 298 an attack which means that you will not be collecting results that 299 are representative of what a typical client would see. 301 3.2.1. Maintain a "Do Not Scan" list 303 When performing active measurements on a shared network, maintain a 304 list of hosts that you will never scan regardless of whether they 305 appear in your target lists. When developing tools for performing 306 active measurement, or traffic generation for use in a larger 307 measurement system, ensure that the tool will support the use of a 308 "Do Not Scan" list. 310 If complaints are made that request you do not generate traffic 311 towards a host or network, you must add that host or network to your 312 "Do Not Scan" list, even if no explanation is given or the request is 313 automated. 315 You may ask the requester for their reasoning if it would be useful 316 to your experiment. This can also be an opportunity to explain your 317 research and offer to share any results that may be of interest. If 318 you plan to share the reasoning when publishing your measurement 319 results, e.g. in an academic paper, you must seek consent for this 320 from the requester. 322 Be aware that in publishing your measurement results, it may be 323 possible to infer your "Do Not Scan" list from those results. For 324 example, if you measured a well-known list of popular websites then 325 it would be possible to correlate the results with that list to 326 determine which are missing. 328 3.3. Data Minimization 330 When collecting, using, disclosing, and storing data from a 331 measurement, use only the minimal data necessary to perform a task. 332 Reducing the amount of data reduces the amount of data that can be 333 misused or leaked. 335 When deciding on the data to collect, assume that any data collected 336 might be disclosed. There are many ways that this could happen, 337 through operation security mistakes or compulsion by a judicial 338 system. 340 When directly instrumenting a protocol to provide metrics to a 341 passive observer, see section 6.1 of RFC6973 [RFC6973] for data 342 minimalization considerations specific to this use case. 344 3.3.1. Discarding Data 346 XXX: Discard data that is not required to perform the task. 348 When performing active measurements be sure to only capture traffic 349 that you have generated. Traffic may be identified by IP ranges or 350 by some token that is unlikely to be used by other users. 352 Again, this can help to improve the accuracy and repeatability of 353 your experiment. [RFC2544], for performance benchmarking, requires 354 that any frames received that were not part of the test traffic are 355 discarded and not counted in the results. 357 3.3.2. Masking Data 359 XXX: Mask data that is not required to perform the task. 360 Particularly useful for content of traffic to indicate that either a 361 particular class of content existed or did not exist, or the length 362 of the content, but not recording the content itself. Can also 363 replace content with tokens, or encrypt. 365 3.3.3. Reduce Accuracy 367 XXX: Binning, categorizing, geoip, noise. 369 3.3.4. Data Aggregation 371 When collecting data, consider if the granularity can be limited by 372 using bins or adding noise. XXX: Differential privacy. 374 XXX: Do this at the source, definitely do it before you write to 375 disk. 377 [Tor.2017-04-001] presents a case-study on the in-memory statistics 378 in the software used by the Tor network, as an example. 380 4. Risk Analysis 382 The benefits should outweigh the risks. Consider auxiliary data 383 (e.g. third-party data sets) when assessing the risks. 385 5. Security Considerations 387 Take reasonable security precautions, e.g. about who has access to 388 your data sets or experimental systems. 390 6. IANA Considerations 392 This document has no actions for IANA. 394 7. Acknowledgements 396 Many of these considerations are based on those from the 397 [TorSafetyBoard] adapted and generalised to be applied to Internet 398 research. 400 Other considerations are taken from the Menlo Report [MenloReport] 401 and its companion document [MenloReportCompanion]. 403 8. Informative References 405 [MenloReport] 406 Dittrich, D. and E. Kenneally, "The Menlo Report: Ethical 407 Principles Guiding Information and Communication 408 Technology Research", August 2012, 409 . 412 [MenloReportCompanion] 413 Bailey, M., Dittrich, D., and E. Kenneally, "Applying 414 Ethical Principles to Information and Communication 415 Technology Research", October 2013, 416 . 419 [netem] Stephen, H., "Network emulation with NetEm", April 2005. 421 [RFC2544] Bradner, S. and J. McQuaid, "Benchmarking Methodology for 422 Network Interconnect Devices", RFC 2544, 423 DOI 10.17487/RFC2544, March 1999, 424 . 426 [RFC4949] Shirey, R., "Internet Security Glossary, Version 2", 427 August 2007, . 429 [RFC6973] Cooper, A., Tschofenig, H., Aboba, B., Peterson, J., 430 Morris, J., Hansen, M., and R. Smith, "Privacy 431 Considerations for Internet Protocols", RFC 6973, July 432 2013, . 434 [Tor.2017-04-001] 435 Herm, K., "Privacy analysis of Tor's in-memory 436 statistics", Tor Tech Report 2017-04-001, April 2017, 437 . 440 [TorSafetyBoard] 441 Tor Project, "Tor Research Safety Board", 442 . 444 Author's Address 446 Iain R. Learmonth 447 Tor Project 449 Email: irl@torproject.org