idnits 2.17.1 draft-ietf-ace-usecases-04.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 : ---------------------------------------------------------------------------- == There are 1 instance of lines with non-RFC2606-compliant FQDNs in the document. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (June 04, 2015) is 3242 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- -- Obsolete informational reference (is this intentional?): RFC 6347 (Obsoleted by RFC 9147) Summary: 0 errors (**), 0 flaws (~~), 2 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 ACE Working Group L. Seitz, Ed. 3 Internet-Draft SICS Swedish ICT AB 4 Intended status: Informational S. Gerdes, Ed. 5 Expires: December 6, 2015 Universitaet Bremen TZI 6 G. Selander 7 Ericsson 8 M. Mani 9 Itron 10 S. Kumar 11 Philips Research 12 June 04, 2015 14 ACE use cases 15 draft-ietf-ace-usecases-04 17 Abstract 19 Constrained devices are nodes with limited processing power, storage 20 space and transmission capacities. These devices in many cases do 21 not provide user interfaces and are often intended to interact 22 without human intervention. 24 This document comprises a collection of representative use cases for 25 the application of authentication and authorization in constrained 26 environments. These use cases aim at identifying authorization 27 problems that arise during the lifecylce of a constrained device and 28 are intended to provide a guideline for developing a comprehensive 29 authentication and authorization solution for this class of 30 scenarios. 32 Where specific details are relevant, it is assumed that the devices 33 use the Constrained Application Protocol (CoAP) as communication 34 protocol, however most conclusions apply generally. 36 Status of This Memo 38 This Internet-Draft is submitted in full conformance with the 39 provisions of BCP 78 and BCP 79. 41 Internet-Drafts are working documents of the Internet Engineering 42 Task Force (IETF). Note that other groups may also distribute 43 working documents as Internet-Drafts. The list of current Internet- 44 Drafts is at http://datatracker.ietf.org/drafts/current/. 46 Internet-Drafts are draft documents valid for a maximum of six months 47 and may be updated, replaced, or obsoleted by other documents at any 48 time. It is inappropriate to use Internet-Drafts as reference 49 material or to cite them other than as "work in progress." 51 This Internet-Draft will expire on December 6, 2015. 53 Copyright Notice 55 Copyright (c) 2015 IETF Trust and the persons identified as the 56 document authors. All rights reserved. 58 This document is subject to BCP 78 and the IETF Trust's Legal 59 Provisions Relating to IETF Documents 60 (http://trustee.ietf.org/license-info) in effect on the date of 61 publication of this document. Please review these documents 62 carefully, as they describe your rights and restrictions with respect 63 to this document. Code Components extracted from this document must 64 include Simplified BSD License text as described in Section 4.e of 65 the Trust Legal Provisions and are provided without warranty as 66 described in the Simplified BSD License. 68 Table of Contents 70 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 71 1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 4 72 2. Use Cases . . . . . . . . . . . . . . . . . . . . . . . . . . 4 73 2.1. Container monitoring . . . . . . . . . . . . . . . . . . 4 74 2.1.1. Bananas for Munich . . . . . . . . . . . . . . . . . 5 75 2.1.2. Authorization Problems Summary . . . . . . . . . . . 6 76 2.2. Home Automation . . . . . . . . . . . . . . . . . . . . . 6 77 2.2.1. Controlling the Smart Home Infrastructure . . . . . . 7 78 2.2.2. Seamless Authorization . . . . . . . . . . . . . . . 7 79 2.2.3. Remotely letting in a visitor . . . . . . . . . . . . 7 80 2.2.4. Selling the house . . . . . . . . . . . . . . . . . . 8 81 2.2.5. Authorization Problems Summary . . . . . . . . . . . 8 82 2.3. Personal Health Monitoring . . . . . . . . . . . . . . . 9 83 2.3.1. John and the heart rate monitor . . . . . . . . . . . 10 84 2.3.2. Authorization Problems Summary . . . . . . . . . . . 11 85 2.4. Building Automation . . . . . . . . . . . . . . . . . . . 11 86 2.4.1. Device Lifecycle . . . . . . . . . . . . . . . . . . 12 87 2.4.2. Authorization Problems Summary . . . . . . . . . . . 14 88 2.5. Smart Metering . . . . . . . . . . . . . . . . . . . . . 15 89 2.5.1. Drive-by metering . . . . . . . . . . . . . . . . . . 15 90 2.5.2. Meshed Topology . . . . . . . . . . . . . . . . . . . 16 91 2.5.3. Advanced Metering Infrastructure . . . . . . . . . . 16 92 2.5.4. Authorization Problems Summary . . . . . . . . . . . 16 93 2.6. Sports and Entertainment . . . . . . . . . . . . . . . . 17 94 2.6.1. Dynamically Connecting Smart Sports Equipment . . . . 17 95 2.6.2. Authorization Problems Summary . . . . . . . . . . . 18 96 2.7. Industrial Control Systems . . . . . . . . . . . . . . . 18 97 2.7.1. Oil Platform Control . . . . . . . . . . . . . . . . 19 98 2.7.2. Authorization Problems Summary . . . . . . . . . . . 19 99 3. Security Considerations . . . . . . . . . . . . . . . . . . . 19 100 3.1. Attacks . . . . . . . . . . . . . . . . . . . . . . . . . 20 101 3.2. Configuration of Access Permissions . . . . . . . . . . . 21 102 3.3. Design Considerations for Authorization Solutions . . . . 22 103 3.4. Proxies . . . . . . . . . . . . . . . . . . . . . . . . . 23 104 4. Privacy Considerations . . . . . . . . . . . . . . . . . . . 23 105 5. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 23 106 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 24 107 7. Informative References . . . . . . . . . . . . . . . . . . . 24 108 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 24 110 1. Introduction 112 Constrained devices [RFC7228] are nodes with limited processing 113 power, storage space and transmission capacities. These devices are 114 often battery-powered and in many cases do not provide user 115 interfaces. 117 Constrained devices benefit from being interconnected using Internet 118 protocols. However, due to the devices' limitations, commonly used 119 security protocols are not always easily applicable. As the devices 120 are expected to be integrated in all aspects of everyday life, the 121 application of adequate security mechanisms is required to prevent 122 attackers from gaining control over data or functions important to 123 our lives. 125 This document comprises a collection of representative use cases for 126 the application of authentication and authorization in constrained 127 environments. These use cases aim at identifying authorization 128 problems that arise during the lifecycle of a constrained device. 129 Note that this document does not aim at collecting all possible use 130 cases. 132 We assume that the communication between the devices is based on the 133 Representational State Transfer (REST) architectural style, i.e. a 134 device acts as a server that offers resources such as sensor data and 135 actuators. The resources can be accessed by clients, sometimes 136 without human intervention (M2M). In some situations the 137 communication will happen through intermediaries (e.g. gateways, 138 proxies). 140 Where specific detail is necessary it is assumed that the devices 141 communicate using CoAP [RFC7252], although most conclusions are 142 generic. 144 1.1. Terminology 146 Readers are required to be familiar with the terms defined in 147 [RFC7228]. In addition, this document uses the following 148 terminology: 150 2. Use Cases 152 This section lists use cases involving constrained devices with 153 certain authorization problems to be solved. Each use case first 154 presents a general description of the application area, then one or 155 more specific use cases, and finally a summary of the authorization- 156 related problems users need to be solved. 158 There are various reasons for assigning a function (client or server) 159 to a device, e.g. which device initiates the conversation, how do 160 devices find each other, etc. The definition of the function of a 161 device in a certain use case is not in scope of this document. 162 Readers should be aware that there might be reasons for each setting 163 and that endpoints might even have different functions at different 164 times. 166 2.1. Container monitoring 168 The ability of sensors to communicate environmental data wirelessly 169 opens up new application areas. The use of such sensor systems makes 170 it possible to continuously track and transmit specific 171 characteristics such as temperature, humidity and gas content during 172 the transportation and storage of goods. 174 The proper handling of the sensors in this scenario is not easy to 175 accomplish. They have to be associated to the appropriate pallet of 176 the respective container. Moreover, the goods and the corresponding 177 sensors belong to specific customers. 179 During the shipment to their destination the goods often pass stops 180 where they are transloaded to other means of transportation, e.g. 181 from ship transport to road transport. 183 The transportation and storage of perishable goods is especially 184 challenging since they have to be stored at a constant temperature 185 and with proper ventilation. Additionally, it is very important for 186 the vendors to be informed about irregularities in the temperature 187 and ventilation of fruits to avoid the delivery of decomposed fruits 188 to their customers. The need for a constant monitoring of perishable 189 goods has led to projects such as The Intelligent Container (http:// 190 www.intelligentcontainer.com). 192 2.1.1. Bananas for Munich 194 A fruit vendor grows bananas in Costa Rica for the German market. It 195 instructs a transport company to deliver the goods via ship to 196 Rotterdam where they are picked up by trucks and transported to a 197 ripening facility. A Munich supermarket chain buys ripened bananas 198 from the fruit vendor and transports them from the ripening facility 199 to the individual markets with their own company trucks. 201 The fruit vendor's quality management wants to assure the quality of 202 their products and thus equips the banana boxes with sensors. The 203 state of the goods is monitored consistently during shipment and 204 ripening and abnormal sensor values are recorded (U1.2). 205 Additionally, the sensor values are used to control the climate 206 within the cargo containers (U1.1, U1.5, U1.7). The sensors 207 therefore need to communicate with the climate control system. Since 208 a wrong sensor value leads to a wrong temperature and thus to spoiled 209 goods, the integrity of the sensor data must be assured (U1.2, U1.3). 210 The banana boxes within a container will in most cases belong to the 211 same owner. Adjacent containers might contain goods and sensors of 212 different owners (U1.1). 214 The personnel that transloads the goods must be able to locate the 215 goods meant for a specific customer (U1.1, U1.6, U1.7). However the 216 fruit vendor does not want to disclose sensor information pertaining 217 to the condition of the goods to other companies and therefore wants 218 to assure the confidentiality of this data (U1.4). Thus, the 219 transloading personnel is only allowed to access logistic information 220 (U1.1). Moreover, the transloading personnel is only allowed to 221 access the data for the time of the transloading (U1.8). 223 Due to the high water content of the fruits, the propagation of radio 224 waves is hindered, thus often inhibiting direct communication between 225 nodes [Jedermann14]. Instead, messages are forwarded over multiple 226 hops (U1.9). The sensors in the banana boxes cannot always reach the 227 Internet during the journey (U1.10). 229 In the ripening facility bananas are stored until they are ready for 230 selling. The banana box sensors are used to control the ventilation 231 system and to monitor the degree of ripeness of the bananas. Ripe 232 bananas need to be identified and sold before they spoil (U1.2, 233 U1.8). 235 The supermarket chain gains ownership of the banana boxes when the 236 bananas have ripened and are ready to leave the ripening facility. 238 2.1.2. Authorization Problems Summary 240 o U1.1 Fruit vendors, transloading personnel and container owners 241 want to grant different authorizations for their resources and/or 242 endpoints to different parties. 244 o U1.2 The fruit vendor requires the integrity of the sensor data 245 that pertains the state of the goods for climate control and to 246 ensure the quality of the monitored recordings. 248 o U1.3 The container owner requires the integrity of the sensor data 249 that is used for climate control. 251 o U1.4 The fruit vendor requires the confidentiality of the sensor 252 data that pertains the state of the goods and the confidentiality 253 of location data, e.g., to protect them from targeted attacks from 254 competitors. 256 o U1.5 The fruit vendor may have several types of data that may be 257 controlled by the same endpoint, e.g., sensor data and the data 258 used for logistics. 260 o U1.6 The fruit vendor and the transloading personnel require the 261 integrity of the data that is used to locate the goods, in order 262 to ensure that the good are correctly treated and delivered. 264 o U1.7 The container owner and the fruit vendor may not be present 265 at the time of access and cannot manually intervene in the 266 authorization process. 268 o U1.8 The fruit vendor, container owner and transloading company 269 want to grant temporary access permissions to a party, in order to 270 avoid giving permanent access to parties that are no longer 271 involved in processing the bananas. 273 o U1.9 Messages between client and resource server might need to be 274 forwarded over multiple hops. 276 o U1.10 The constrained devices might not always be able to reach 277 the Internet. 279 2.2. Home Automation 281 Automation of the home has the potential to become a big future 282 market for the Internet of Things. One function of a home automation 283 system can be to connect devices in a house to the Internet and thus 284 make them accessible and manageable remotely. Such devices might 285 control for example heating, ventilation, lighting, home 286 entertainment or home security. 288 Such a system needs to accommodate a number of regular users 289 (inhabitants, close friends, cleaning personnel) as well as a 290 heterogeneous group of dynamically varying users (visitors, 291 repairmen, delivery men). 293 As the users are not typically trained in security (or even computer 294 use), the configuration must use secure default settings, and the 295 interface must be well adapted to novice users. 297 2.2.1. Controlling the Smart Home Infrastructure 299 Alice and her husband Bob own a flat which is equipped with home 300 automation devices such as HVAC and shutter control, and they have a 301 motion sensor in the corridor which controls the light bulbs there 302 (U2.5). 304 Alice and Bob can control the shutters and the temperature in each 305 room using either wall-mounted touch panels or an internet connected 306 device (e.g. a smartphone). Since Alice and Bob both have a full- 307 time job, they want to be able to change settings remotely, e.g. turn 308 up the heating on a cold day if they will be home earlier than 309 expected (U2.5). 311 The couple does not want people in radio range of their devices, e.g. 312 their neighbors, to be able to control them without authorization. 313 Moreover, they don't want burglars to be able to deduce behavioral 314 patterns from eavesdropping on the network (U2.8). 316 2.2.2. Seamless Authorization 318 Alice buys a new light bulb for the corridor and integrates it into 319 the home network, i.e. makes resources known to other devices in the 320 network. Alice makes sure that the new light bulb and her other 321 devices in the network get to know the authorization policies for the 322 new device. Bob is not at home, but Alice wants him to be able to 323 control the new device with his devices (e.g. his smartphone) without 324 the need for additional administration effort (U2.7). She provides 325 the necessary configurations for that (U2.9, U2.10). 327 2.2.3. Remotely letting in a visitor 328 Alice and Bob have equipped their home with automated connected door- 329 locks and an alarm system at the door and the windows. The couple 330 can control this system remotely. 332 Alice and Bob have invited Alice's parents over for dinner, but are 333 stuck in traffic and cannot arrive in time, while Alice's parents who 334 use the subway will arrive punctually. Alice calls her parents and 335 offers to let them in remotely, so they can make themselves 336 comfortable while waiting (U2.1, U2.6). Then Alice sets temporary 337 permissions that allow them to open the door, and shut down the alarm 338 (U2.2). She wants these permissions to be only valid for the evening 339 since she does not like it if her parents are able to enter the house 340 as they see fit (U2.3, U2.4). 342 When Alice's parents arrive at Alice's and Bob's home, they use their 343 smartphone to communicate with the door-lock and alarm system (U2.5, 344 U2.9). 346 2.2.4. Selling the house 348 Alice and Bob have to move because Alice is starting a new job. They 349 therefore decide to sell the house, and transfer control of all 350 automated services to the new owners(U2.11). Before doing that they 351 want to erase privacy relevant data from the logs of the automated 352 systems, while the new owner is interested to keep some historic data 353 e.g. pertaining to the behavior of the heating system (U2.12). 355 2.2.5. Authorization Problems Summary 357 o U2.1 A home owner (Alice and Bob in the example above) wants to 358 spontaneously provision authorization means to visitors. 360 o U2.2 A home owner wants to spontaneously change the home's access 361 control policies. 363 o U2.3 A home owner wants to apply different access rights for 364 different users. 366 o U2.4 The home owners want to grant temporary access permissions to 367 a party. 369 o U2.5 The smart home devices need to be able to communicate with 370 different control devices (e.g. wall-mounted touch panels, 371 smartphones, electronic key fobs). 373 o U2.6 The home owner wants to be able to configure authorization 374 policies remotely. 376 o U2.7 Authorized Users want to be able to obtain access with little 377 effort. 379 o U2.8 The owners of the automated home want to prevent unauthorized 380 entities from being able to deduce behavioral profiles from 381 devices in the home network. 383 o U2.9 Usability is particularly important in this scenario since 384 the necessary authorization related tasks in the lifecycle of the 385 device (commissioning, operation, maintenance and decommissioning) 386 likely need to be performed by the home owners who in most cases 387 have little knowledge of security. 389 o U2.10 Home Owners want their devices to seamlessly (and in some 390 cases even unnoticeably) fulfill their purpose. The 391 administration effort needs to be kept at a minimum. 393 o U2.11 Home Owners want to be able to transfer ownership of their 394 automated systems when they sell the house. 396 o U2.12 Home Owners want to be able to sanitize the logs of the 397 automated systems, when transferring ownership, without deleting 398 important operational data. 400 2.3. Personal Health Monitoring 402 The use of wearable health monitoring technology is expected to grow 403 strongly, as a multitude of novel devices are developed and marketed. 404 The need for open industry standards to ensure interoperability 405 between products has lead to initiatives such as Continua Alliance 406 (continuaalliance.org) and Personal Connected Health Alliance 407 (pchalliance.org). Personal health devices are typically battery 408 driven, and located physically on the user. They monitor some bodily 409 function, such as e.g. temperature, blood pressure, or pulse. They 410 are connected to the Internet through an intermediary base-station, 411 using wireless technologies. Through this connection they report the 412 monitored data to some entity, which may either be the user herself, 413 or some medical personnel in charge of the user. 415 Medical data has always been considered as very sensitive, and 416 therefore requires good protection against unauthorized disclosure. 417 A frequent, conflicting requirement is the capability for medical 418 personnel to gain emergency access, even if no specific access rights 419 exist. As a result, the importance of secure audit logs increases in 420 such scenarios. 422 Since the users are not typically trained in security (or even 423 computer use), the configuration must use secure default settings, 424 and the interface must be well adapted to novice users. Parts of the 425 system must operate with minimal maintenance. Especially frequent 426 changes of battery are unacceptable. 428 2.3.1. John and the heart rate monitor 430 John has a heart condition, that can result in sudden cardiac 431 arrests. He therefore uses a device called HeartGuard that monitors 432 his heart rate and his position (U3.7). In case of a cardiac arrest 433 it automatically sends an alarm to an emergency service, transmitting 434 John's current location (U3.1). This requires the device to be close 435 to a wireless access point, in order to be able to get an Internet 436 connection (e.g. John's smartphone). To ensure Johns safety, the 437 device is expected to be in constant operation (U3.3, U3.6). 439 The device includes some authentication mechanism, in order to 440 prevent other persons who get physical access to it from acting as 441 the owner and messing up the access control and security settings 442 (U3.8). 444 John can configure additional persons that get notified in an 445 emergency, for example his daughter Jill. Furthermore the device 446 stores data on John's heart rate, which can later be accessed by a 447 physician to assess the condition of John's heart (U3.2). 449 However John is a privacy conscious person, and is worried that Jill 450 might use HeartGuard to monitor his location while there is no 451 emergency. Furthermore he doesn't want his health insurance to get 452 access to the HeartGuard data, or even to the fact that he is wearing 453 a HeartGuard, since they might refuse to renew his insurance if they 454 decided he was too big a risk for them (U3.8). 456 Finally John, while being comfortable with modern technology and able 457 to operate it reasonably well, is not trained in computer security. 458 He therefore needs an interface for the configuration of the 459 HeartGuard security that is easy to understand and use (U3.5). If 460 John does not understand the meaning of a setting, he tends to leave 461 it alone, assuming that the manufacturer has initialized the device 462 to secure settings (U3.4). 464 NOTE: Monitoring of some state parameter (e.g. an alarm button) and 465 the position of a person also fits well into an elderly care service. 466 This is particularly useful for people suffering from dementia, where 467 the relatives or caregivers need to be notified of the whereabouts of 468 the person under certain conditions. In this case it is not the 469 patient that decides about access. 471 2.3.2. Authorization Problems Summary 473 o U3.1 The wearer of an eHealth device (John in the example above) 474 wants to pre-configure special access rights in the context of an 475 emergency. 477 o U3.2 The wearer of an eHealth device wants to selectively allow 478 different persons or groups access to medical data. 480 o U3.3 The Security measures could affect battery lifetime of the 481 device and changing the battery is very inconvenient. 483 o U3.4 Devices are often used with default access control settings. 485 o U3.5 Wearers of eHealth devices are often not trained in computer 486 use, and especially computer security. 488 o U3.6 Security mechanisms themselves could provide opportunities 489 for denial of service attacks on the device. 491 o U3.7 The device provides a service that can be fatal for the 492 wearer if it fails. Accordingly, the wearer wants the device to 493 have a high degree of resistance against attacks that may cause 494 the device to fail to operate partially or completely. 496 o U3.8 The wearer of an eHealth device requires the integrity and 497 confidentiality of the data measured by the device. 499 2.4. Building Automation 501 Buildings for commercial use such as shopping malls or office 502 buildings nowadays are equipped increasingly with semi-automatic 503 components to enhance the overall living quality and to save energy 504 where possible. This includes for example heating, ventilation and 505 air condition (HVAC) as well as illumination and security systems 506 such as fire alarms. 508 Different areas of these buildings are often exclusively leased to 509 different companies. However they also share some of the common 510 areas of the building. Accordingly, a company must be able to 511 control the light and HVAC system of its own part of the building and 512 must not have access to control rooms that belong to other companies. 514 Some parts of the building automation system such as entrance 515 illumination and fire alarm systems are controlled either by all 516 parties together or by a service company. 518 2.4.1. Device Lifecycle 520 2.4.1.1. Installation and Commissioning 522 A building is hired out to different companies for office space. 523 This building features various automated systems, such as a fire 524 alarm system, which is triggered by several smoke detectors which are 525 spread out across the building. It also has automated HVAC, lighting 526 and physical access control systems. 528 A vacant area of the building has been recently leased to company A. 529 Before moving into its new office, Company A wishes to replace the 530 lighting with a more energy efficient and a better light quality 531 luminaries. They hire an installation and commissioning company C to 532 redo the illumination. Company C is instructed to integrate the new 533 lighting devices, which may be from multiple manufacturers, into the 534 existing lighting infrastructure of the building which includes 535 presence sensors, switches, controllers etc (U4.1). 537 Company C gets the necessary authorization from the service company 538 to interact with the existing Building and Lighting Management System 539 (BLMS) (U4.4). To prevent disturbance to other occupants of the 540 building, Company C is provided authorization to perform the 541 commissioning only during non-office hours and only to modify 542 configuration on devices belonging to the domain of Company A's space 543 (U4.5). After installation (wiring) of the new lighting devices, the 544 commissioner adds the devices into the company A's lighting domain. 546 Once the devices are in the correct domain, the commissioner 547 authorizes the interaction rules between the new lighting devices and 548 existing devices like presence sensors (U4.7). For this, the 549 commissioner creates the authorization rules on the BLMS which define 550 which lights form a group and which sensors/switches/controllers are 551 allowed to control which groups (U4.8). These authorization rules 552 may be context based like time of the day (office or non-office 553 hours) or location of the handheld lighting controller etc (U4.5). 555 2.4.1.2. Operational 557 Company A's staff move into the newly furnished office space. Most 558 lighting is controlled by presence sensors which control the lighting 559 of specific group of lights based on the authorization rules in the 560 BLMS. Additionally employees are allowed to manually override the 561 lighting brightness and color in their office by using the switches 562 or handheld controllers. Such changes are allowed only if the 563 authorization rules exist in the BLMS. For example lighting in the 564 corridors may not be manually adjustable. 566 At the end of the day, lighting is dimmed down or switched off if no 567 occupancy is detected even if manually overridden during the day. 569 On a later date company B also moves into the same building, and 570 shares some of the common spaces with company A (U4.2, U4.9). On a 571 really hot day James who works for company A turns on the air 572 condition in his office. Lucy who works for company B wants to make 573 tea using an electric kettle. After she turned it on she goes 574 outside to talk to a colleague until the water is boiling. 575 Unfortunately, her kettle has a malfunction which causes overheating 576 and results in a smoldering fire of the kettle's plastic case. 578 Due to the smoke coming from the kettle the fire alarm is triggered. 579 Alarm sirens throughout the building are switched on simultaneously 580 (using a broadcast or multicast) to alert the staff of both companies 581 (U4.8). Additionally, the ventilation system of the whole building 582 is closed off to prevent the smoke from spreading and to withdraw 583 oxygen from the fire. The smoke cannot get into James' office 584 although he turned on his air condition because the fire alarm 585 overrides the manual setting by sending commands (broadcast or 586 multicast) to switch off all the air conditioning. 588 The fire department is notified of the fire automatically and arrives 589 within a short time. After inspecting the damage and extinguishing 590 the smoldering fire a fire fighter resets the fire alarm because only 591 the fire department is authorized to do that (U4.4, U4.5). 593 2.4.1.3. Maintenance 595 Company A's staff are annoyed that the lights switch off too often in 596 their rooms if they work silently in front of their computer. 597 Company A notifies the commissioning Company C about the issue and 598 asks them to increase the delay before lights switch off (U4.4). 600 Company C again gets the necessary authorization from the service 601 company to interact with the BLMS. The commissioner's tool gets the 602 necessary authorization from BMLS to send a configuration change to 603 all lighting devices in Company A's offices to increase their delay 604 before they switch off. 606 At some point the service company wants to update the firmware of 607 lighting devices in order to eliminate software bugs. Before 608 accepting the new firmware, each device checks the authorization of 609 the service company to perform this update. 611 2.4.1.4. Decommissioning 612 Company A has noticed that the handheld controllers are often 613 misplaced and hard to find when needed. So most of the time staff 614 use the existing wall switches for manual control. Company A decides 615 it would be better to completely remove handheld controllers and asks 616 Company C to decommission them from the lighting system (U4.4). 618 Company C again gets the necessary authorization from the service 619 company to interact with the BLMS. The commissioner now deletes any 620 rules that allowed handheld controllers authorization to control the 621 lighting (U4.3, U4.6). Additionally the commissioner instructs the 622 BLMS to push these new rules to prevent cached rules at the end 623 devices from being used. 625 2.4.2. Authorization Problems Summary 627 o U4.1 The building owner and the companies want to be able to add 628 new devices to their administrative domain (commissioning). 630 o U4.2 The building owner and the companies want to be able to 631 integrate a device that formerly belonged to a different 632 administrative domain to their own administrative domain 633 (handover). 635 o U4.3 The building owner and the companies want to be able to 636 remove a device from their administrative domain 637 (decommissioning). 639 o U4.4 The building owner and the companies want to be able to 640 delegate selected administration tasks for their devices to 641 others. 643 o U4.5 The building owner and the companies want to be able to 644 define context-based authorization rules. 646 o U4.6 The building owner and the companies want to be able to 647 revoke granted permissions and delegations. 649 o U4.7 The building owner and the companies want to allow authorized 650 entities to send data to their endpoints (default deny). 652 o U4.8 The building owner and the companies want to be able to 653 authorize a device to control several devices at the same time 654 using a multicast protocol. 656 o U4.9 The companies want to be able to interconnect their own 657 subsystems with those from a different operational domain while 658 keeping the control over the authorizations (e.g. granting and 659 revoking permissions) for their endpoints and devices. 661 2.5. Smart Metering 663 Automated measuring of customer consumption is an established 664 technology for electricity, water, and gas providers. Increasingly 665 these systems also feature networking capability to allow for remote 666 management. Such systems are in use for commercial, industrial and 667 residential customers and require a certain level of security, in 668 order to avoid economic loss to the providers, vulnerability of the 669 distribution system, as well as disruption of services for the 670 customers. 672 The smart metering equipment for gas and water solutions is battery 673 driven and communication should be used sparingly due to battery 674 consumption. Therefore the types of meters sleep most of the time, 675 and only wake up every minute/hour to check for incoming 676 instructions. Furthermore they wake up a few times a day (based on 677 their configuration) to upload their measured metering data. 679 Different networking topologies exist for smart metering solutions. 680 Based on environment, regulatory rules and expected cost, one or a 681 mixture of these topologies may be deployed to collect the metering 682 information. Drive-By metering is one of the most current solutions 683 deployed for collection of gas and water meters. 685 2.5.1. Drive-by metering 687 A service operator offers smart metering infrastructures and related 688 services to various utility companies. Among these is a water 689 provider, who in turn supplies several residential complexes in a 690 city. The smart meters are installed in the end customer's homes to 691 measure water consumption and thus generate billing data for the 692 utility company, they can also be used to shut off the water if the 693 bills are not paid (U5.1, U5.3). The meters do so by sending and 694 receiving data to and from a base station (U5.2). Several base 695 stations are installed around the city to collect the metering data. 696 However in the denser urban areas, the base stations would have to be 697 installed very close to the meters. This would require a high number 698 of base stations and expose this more expensive equipment to 699 manipulation or sabotage. The service operator has therefore chosen 700 another approach, which is to drive around with a mobile base-station 701 and let the meters connect to that in regular intervals in order to 702 gather metering data (U5.4, U5.5, U5.7). 704 2.5.2. Meshed Topology 706 In another deployment, the water meters are installed in a building 707 that already has power meters installed, the latter are mains 708 powered, and are therefore not subject to the same power saving 709 restrictions. The water meters can therefore use the power meters as 710 proxies, in order to achieve better connectivity. This requires the 711 security measures on the water meters to work through intermediaries 712 (U5.8). 714 2.5.3. Advanced Metering Infrastructure 716 A utility company is updating its old utility distribution network 717 with advanced meters and new communication systems, known as an 718 Advanced Metering Infrastructure (AMI). AMI refers to a system that 719 measures, collects and analyzes usage, and interacts with metering 720 devices such as electricity meters, gas meters, heat meters, and 721 water meters, through various communication media either on request 722 (on-demand) or on pre-defined schedules. Based on this technology, 723 new services make it possible for consumers to control their utility 724 consumption (U5.2, U5.6) and reduce costs by supporting new tariff 725 models from utility companies, and more accurate and timely billing. 727 The technical solution is based on levels of data aggregation between 728 smart meters located at the consumer premises and the Meter Data 729 Management (MDM) system located at the utility company (U5.8). For 730 reasons of efficiency and cost, end-to-end connectivity is not always 731 feasible, so metering data is stored and aggregated in various 732 intermediate devices before being forwarded to the utility company, 733 and in turn accessed by the MDM. The intermediate devices may be 734 operated by a third party service operator on behalf of the utility 735 company (U5.6). One responsibility of the service operator is to 736 make sure that meter readings are performed and delivered in a 737 regular, timely manner. An example of a Service Level Agreement 738 between the service operator and the utility company is e.g. "at 739 least 95 % of the meters have readings recorded during the last 72 740 hours". 742 2.5.4. Authorization Problems Summary 744 o U5.1 Devices are installed in hostile environments where they are 745 physically accessible by attackers (including dishonest 746 customers). The service operator and the utility company want to 747 make sure that an attacker cannot use data from a captured device 748 to attack other parts of their infrastructure. 750 o U5.2 The utility company wants to control which entities are 751 allowed to send data to, and read data from their endpoints. 753 o U5.3 The utility company wants to ensure the integrity of the data 754 stored on their endpoints. 756 o U5.4 The utility company wants to protect such data transfers to 757 and from their endpoints. 759 o U5.5 The devices may have intermittent Internet connectivity. 761 o U5.6 Neither the service operator nor the utility company are 762 always present at the time of access and cannot manually intervene 763 in the authorization process. 765 o U5.7 When authorization policies are updated it is impossible, or 766 at least very inefficient to contact all affected endpoints 767 directly. 769 o U5.8 Messages between endpoints may need to be stored and 770 forwarded over multiple nodes. 772 2.6. Sports and Entertainment 774 In the area of leisure time activities, applications can benefit from 775 the small size and weight of constrained devices. Sensors and 776 actuators with various functions can be integrated into fitness 777 equipment, games and even clothes. Users can carry their devices 778 around with them at all times. 780 Usability is especially important in this area since users will often 781 want to spontaneously interconnect their devices with others. 782 Therefore the configuration of access permissions must be simple and 783 fast and not require much effort at the time of access (preferably 784 none at all). 786 The required level of security will in most cases be low since 787 security breaches will likely have less severe consequences. The 788 continuous monitoring of data might however enable an attacker to 789 create behavioral or movement profiles. Moreover, the aggregation of 790 data can seriously increase the impact on the privacy of the users. 792 2.6.1. Dynamically Connecting Smart Sports Equipment 794 Jody is a an enthusiastic runner. To keep track of her training 795 progress, she has smart running shoes that measure the pressure at 796 various points beneath her feet to count her steps, detect 797 irregularities in her stride and help her to improve her posture and 798 running style. On a sunny afternoon, she goes to the Finnbahn track 799 near her home to work out. She meets her friend Lynn who shows her 800 the smart fitness watch she bought a few days ago. The watch can 801 measure the wearer's pulse, show speed and distance, and keep track 802 of the configured training program. The girls detect that the watch 803 can be connected with Jody's shoes and then can additionally display 804 the information the shoes provide. 806 Jody asks Lynn to let her try the watch and lend it to her for the 807 afternoon. Lynn agrees but doesn't want Jody to access her training 808 plan (U6.4). She configures the access policies for the watch so 809 that Jody's shoes are allowed to access the display and measuring 810 features but cannot read or add training data (U6.1, U6.2). Jody's 811 shoes connect to Lynn's watch after only a press of a button because 812 Jody already configured access rights for devices that belong to Lynn 813 a while ago (U6.3). Jody wants the device to report the data back to 814 her fitness account while she borrows it, so she allows it to access 815 her account temporarily. 817 After an hour, Jody gives the watch back and both girls terminate the 818 connection between their devices. 820 2.6.2. Authorization Problems Summary 822 o U6.1 Sports equipment owners want to be able to grant access 823 rights dynamically when needed. 825 o U6.2 Sports equipment owners want the configuration of access 826 rights to work with very little effort. 828 o U6.3 Sports equipment owners want to be able to pre-configure 829 access policies that grant certain access permissions to endpoints 830 with certain attributes (e.g. endpoints of a certain user) without 831 additional configuration effort at the time of access. 833 o U6.4 Sports equipment owners to protect the confidentiality of 834 their data for privacy reasons. 836 2.7. Industrial Control Systems 838 Industrial control systems (ICS) and especially supervisory control 839 and data acquisition systems (SCADA) use a multitude of sensors and 840 actuators in order to monitor and control industrial processes in the 841 physical world. Example processes include manufacturing, power 842 generation, and refining of raw materials. 844 Since the advent of the Stuxnet worm it has become obvious to the 845 general public how vulnerable this kind of systems are, especially 846 when connected to the Internet. The severity of these 847 vulnerabilities are exacerbated by the fact that many ICS are used to 848 control critical public infrastructure, such as power, water 849 treatment of traffic control. Nevertheless the economical advantages 850 of connecting such systems to the Internet can be significant if 851 appropriate security measures are put in place (U7.5). 853 2.7.1. Oil Platform Control 855 An oil platform uses an industrial control system to monitor data and 856 control equipment. The purpose of this system is to gather and 857 process data from a large number of sensors, and control actuators 858 such as valves and switches to steer the oil extraction process on 859 the platform. Raw data, alarms, reports and other information are 860 also available to the operators, who can intervene with manual 861 commands. Many of the sensors are connected to the controlling units 862 by direct wire, but the operator is slowly replacing these units by 863 wireless ones, since this makes maintenance easier (U7.4). 865 Some of the controlling units are connected to the Internet, to allow 866 for remote administration, since it is expensive and inconvenient to 867 fly in a technician to the platform (U7.3). 869 The main interest of the operator is to ensure the integrity of 870 control messages and sensor readings (U7.1). Access in some cases 871 needs to be restricted, e.g. the operator wants wireless actuators 872 only to accept commands by authorized control units (U7.2). 874 The owner of the platform also wants to collect auditing information 875 for liability reasons (U7.1). 877 2.7.2. Authorization Problems Summary 879 o U7.1 The operator of the platform wants to ensure the integrity 880 and confidentiality of sensor and actuator data. 882 o U7.2 The operator wants to ensure that data coming from sensors 883 and commands sent to actuators are authentic. 885 o U7.3 Some devices do not have direct Internet connection. 887 o U7.4 Some devices have wired connection while others use wireless. 889 o U7.5 The execution of unauthorized commands in an ICS can lead to 890 significant financial damage, and threaten the availability of 891 critical infrastructure services. Accordingly, the operator wants 892 a security solution that provides a very high level of security. 894 3. Security Considerations 895 As the use cases listed in this document demonstrate, constrained 896 devices are used in various application areas. The appeal of these 897 devices is that they are small and inexpensive. That makes it easy 898 to integrate them into many aspects of everyday life. Therefore such 899 devices will see vast amounts of valuable data passing through and 900 might even be in control of important functions. These assets need 901 to be protected from unauthorized access. Even seemingly innocuous 902 data and functions should be protected due to possible effects of 903 aggregation: By collecting data or functions from several sources, 904 attackers might be able to gain insights or a level of control not 905 immediately obvious from each of these sources on its own. 907 Not only the data on the constrained devices themselves is 908 threatened, the devices might also be abused as an intrusion point to 909 infiltrate a network. Once an attacker gained control over the 910 device, it can be used to attack other devices as well. Due to their 911 limited capabilities, constrained devices appear as the weakest link 912 in the network and hence pose an attractive target for attackers. 914 This section summarizes the security problems highlighted by the use 915 cases above and provides guidelines for the design of protocols for 916 authentication and authorization in constrained RESTful environments. 918 3.1. Attacks 920 This document lists security problems that users of constrained 921 devices want to solve. Further analysis of attack scenarios is not 922 in scope of the document. However, there are attacks that must be 923 considered by solution developers. 925 Because of the expected large number of devices and their ubiquity, 926 constrained devices increase the danger from Pervasive Monitoring 927 [RFC7258] attacks. 929 As some of the use cases indicate, constrained devices may be 930 installed in hostile environments where they are physically 931 accessible (see Section 2.5). Protection from physical attacks is 932 not in the scope of ACE, but should be kept in mind by developers of 933 authorization solutions. 935 Denial of service (DoS) attacks threaten the availability of services 936 a device provides. E.g., an attacker can induce a device to perform 937 steps of a heavy weight security protocol (e.g. Datagram Transport 938 Layer Security (DTLS) [RFC6347]) before authentication and 939 authorization can be verified, thus exhausting the device's system 940 resources. This leads to a temporary or - e.g. if the batteries are 941 drained - permanent failure of the service. For some services of 942 constrained devices, availability is especially important (see 943 Section 2.3). Because of their limitations, constrained devices are 944 especially vulnerable to denial of service attacks. Solution 945 designers must be particularly careful to consider these limitations 946 in every part of the protocol. This includes: 948 o Battery usage 950 o Number of message exchanges required by security measures 952 o Size of data that is transmitted (e.g. authentication and access 953 control data) 955 o Size of code required to run the protocol 957 o Size of RAM memory and stack required to run the protocol 959 Another category of attacks that needs to be considered by solution 960 developers is session interception and hijacking. 962 3.2. Configuration of Access Permissions 964 o The access control policies need to be enforced (all use cases): 965 The information that is needed to implement the access control 966 policies needs to be provided to the device that enforces the 967 authorization and applied to every incoming request. 969 o A single resource might have different access rights for different 970 requesting entities (all use cases). 972 Rationale: In some cases different types of users need different 973 access rights, as opposed to a binary approach where the same 974 access permissions are granted to all authenticated users. 976 o A device might host several resources where each resource has its 977 own access control policy (all use cases). 979 o The device that makes the policy decisions should be able to 980 evaluate context-based permissions such as location or time of 981 access (see e.g. Section 2.2, Section 2.3, Section 2.4). Access 982 may depend on local conditions, e.g. access to health data in an 983 emergency. The device that makes the policy decisions should be 984 able to take such conditions into account. 986 3.3. Design Considerations for Authorization Solutions 988 o Devices need to be enabled to enforce authorization policies 989 without human intervention at the time of the access request (see 990 e.g. Section 2.1, Section 2.2, Section 2.4, Section 2.5). 992 o Authorization solutions need to consider that constrained devices 993 might not have internet access at the time of the access request 994 (see e.g. Section 2.1, Section 2.3, Section 2.5, Section 2.6). 996 o It should be possible to update access control policies without 997 manually re-provisioning individual devices (see e.g. Section 2.2, 998 Section 2.3, Section 2.5, Section 2.6). 1000 Rationale: Peers can change rapidly which makes manual re- 1001 provisioning unreasonably expensive. 1003 o Authorization policies may be defined to apply to a large number 1004 of devices that might only have intermittent connectivity. 1005 Distributing policy updates to every device for every update might 1006 not be a feasible solution (see e.g. Section 2.5). 1008 o It must be possible to dynamically revoke authorizations (see e.g. 1009 Section 2.4). 1011 o The authentication and access control protocol can put undue 1012 burden on the constrained system resources of a device 1013 participating in the protocol. An authorization solutions must 1014 take the limitations of the constrained devices into account (all 1015 use cases, see also Section 3.1). 1017 o Secure default settings are needed for the initial state of the 1018 authentication and authorization protocols (all use cases). 1020 Rationale: Many attacks exploit insecure default settings, and 1021 experience shows that default settings are frequently left 1022 unchanged by the end users. 1024 o Access to resources on other devices should only be permitted if a 1025 rule exists that explicitly allows this access (default deny) (see 1026 e.g. Section 2.4). 1028 o Usability is important for all use cases. The configuration of 1029 authorization policies as well as the gaining access to devices 1030 must be simple for the users of the devices. Special care needs 1031 to be taken for home scenarios where access control policies have 1032 to be configured by users that are typically not trained in 1033 security (see Section 2.2, Section 2.3, Section 2.6). 1035 3.4. Proxies 1037 In some cases, the traffic between endpoints might go through 1038 intermediary nodes (e.g. proxies, gateways). This might affect the 1039 function or the security model of authentication and access control 1040 protocols e.g. end-to-end security between endpoints with DTLS might 1041 not be possible (see Section 2.5). 1043 4. Privacy Considerations 1045 Many of the devices that are in focus of this document register data 1046 from the physical world (sensors) or affect processes in the physical 1047 world (actuators), which may involve data or processes belonging to 1048 individuals. To make matters worse the sensor data may be recorded 1049 continuously thus allowing to gather significant information about an 1050 individual subject through the sensor readings. Therefore privacy 1051 protection is especially important, and Authentication and Access 1052 control are important tools for this, since they make it possible to 1053 control who gets access to private data. 1055 Privacy protection can also be weighted in when evaluating the need 1056 for end-to-end confidentiality, since otherwise intermediary nodes 1057 will learn the content of potentially sensitive messages sent between 1058 endpoints and thereby threaten the privacy of the individual that may 1059 be subject of this data. 1061 In some cases, even the possession of a certain type of device can be 1062 confidential, e.g. individuals might not want to others to know that 1063 they are wearing a certain medical device (see Section 2.3). 1065 The personal health monitoring use case (see Section 2.3) indicates 1066 the need for secure audit logs which impose specific requirements on 1067 a solution. 1068 Auditing is not in the scope of ACE. However, if an authorization 1069 solution provides means for audit logs, it must consider the impact 1070 of logged data for the privacy of all parties involved. Suitable 1071 measures for protecting and purging the logs must be taken during 1072 operation, maintenance and decommissioning of the device. 1074 5. Acknowledgments 1076 The authors would like to thank Olaf Bergmann, Sumit Singhal, John 1077 Mattson, Mohit Sethi, Carsten Bormann, Martin Murillo, Corinna 1078 Schmitt, Hannes Tschofenig, Erik Wahlstroem, Andreas Baeckman, Samuel 1079 Erdtman, Steve Moore, and Thomas Hardjono for reviewing and/or 1080 contributing to the document. Also, thanks to Markus Becker, Thomas 1081 Poetsch and Koojana Kuladinithi for their input on the container 1082 monitoring use case. 1084 Ludwig Seitz and Goeran Selander worked on this document as part of 1085 EIT-ICT Labs activity PST-14056. 1087 6. IANA Considerations 1089 This document has no IANA actions. 1091 7. Informative References 1093 [Jedermann14] 1094 Jedermann, R., Poetsch, T., and C. LLoyd, "Communication 1095 techniques and challenges for wireless food quality 1096 monitoring", Philosophical Transactions of the Royal 1097 Society A Mathematical, Physical and Engineering Sciences, 1098 May 2014. 1100 [RFC6347] Rescorla, E. and N. Modadugu, "Datagram Transport Layer 1101 Security Version 1.2", RFC 6347, January 2012. 1103 [RFC7228] Bormann, C., Ersue, M., and A. Keranen, "Terminology for 1104 Constrained-Node Networks", RFC 7228, May 2014. 1106 [RFC7252] Shelby, Z., Hartke, K., and C. Bormann, "The Constrained 1107 Application Protocol (CoAP)", RFC 7252, June 2014. 1109 [RFC7258] Farrell, S. and H. Tschofenig, "Pervasive Monitoring Is an 1110 Attack", BCP 188, RFC 7258, May 2014. 1112 Authors' Addresses 1114 Ludwig Seitz (editor) 1115 SICS Swedish ICT AB 1116 Scheelevaegen 17 1117 Lund 223 70 1118 Sweden 1120 Email: ludwig@sics.se 1122 Stefanie Gerdes (editor) 1123 Universitaet Bremen TZI 1124 Postfach 330440 1125 Bremen 28359 1126 Germany 1128 Phone: +49-421-218-63906 1129 Email: gerdes@tzi.org 1130 Goeran Selander 1131 Ericsson 1132 Faroegatan 6 1133 Kista 164 80 1134 Sweden 1136 Email: goran.selander@ericsson.com 1138 Mehdi Mani 1139 Itron 1140 52, rue Camille Desmoulins 1141 Issy-les-Moulineaux 92130 1142 France 1144 Email: Mehdi.Mani@itron.com 1146 Sandeep S. Kumar 1147 Philips Research 1148 High Tech Campus 1149 Eindhoven 5656 AA 1150 The Netherlands 1152 Email: sandeep.kumar@philips.com