This site is the archived OWASP Foundation Wiki and is no longer accepting Account Requests.
To view the new OWASP Foundation website, please visit https://owasp.org
Difference between revisions of "OWASP Internet of Things Project"
From OWASP
(→Medical Device Testing) |
(Improvements in vulnerabilities and attack surface areas) (Tag: Visual edit) |
||
Line 4: | Line 4: | ||
{| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- | {| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- | ||
− | | valign="top" | + | | valign="top" style="border-right: 1px dotted gray;padding-right:25px;" | |
==OWASP Internet of Things (IoT) Project== | ==OWASP Internet of Things (IoT) Project== | ||
Line 19: | Line 19: | ||
The OWASP Internet of Things Project is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one. | The OWASP Internet of Things Project is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one. | ||
− | |||
{{Social Media Links}} | {{Social Media Links}} | ||
− | | valign="top" | + | | valign="top" style="padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;" | |
== What is the OWASP Internet of Things Project? == | == What is the OWASP Internet of Things Project? == | ||
Line 58: | Line 57: | ||
* [[C/C++|OWASP C/C++]] | * [[C/C++|OWASP C/C++]] | ||
− | | valign="top" | + | | valign="top" style="padding-left:25px;width:200px;" | |
== Collaboration == | == Collaboration == | ||
Line 89: | Line 88: | ||
{| width="200" cellpadding="2" | {| width="200" cellpadding="2" | ||
|- | |- | ||
− | | align="center" valign="top" width="50% | + | | rowspan="2" align="center" valign="top" width="50%" | [[File:Owasp-incubator-trans-85.png|link=https://www.owasp.org/index.php/OWASP_Project_Stages#tab=Incubator_Projects]] |
− | | align="center" valign="top" width="50%"| [[File:Owasp-builders-small.png|link=]] | + | | align="center" valign="top" width="50%" | [[File:Owasp-builders-small.png|link=]] |
|- | |- | ||
− | | align="center" valign="top" width="50%"| [[File:Owasp-defenders-small.png|link=]] | + | | align="center" valign="top" width="50%" | [[File:Owasp-defenders-small.png|link=]] |
|- | |- | ||
− | | colspan="2" align="center" | + | | colspan="2" align="center" | [[File:Cc-button-y-sa-small.png|link=http://creativecommons.org/licenses/by-sa/3.0/]] |
|- | |- | ||
− | | colspan="2" align="center" | + | | colspan="2" align="center" | [[File:Project_Type_Files_DOC.jpg|link=]] |
|} | |} | ||
Line 106: | Line 105: | ||
{| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- | {| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- | ||
− | | valign="top" | + | | valign="top" style="border-right: 1px dotted gray;padding-right:25px;" | |
== IoT Attack Surface Areas Project == | == IoT Attack Surface Areas Project == | ||
Line 112: | Line 111: | ||
The OWASP IoT Attack Surface Areas (DRAFT) are as follows: | The OWASP IoT Attack Surface Areas (DRAFT) are as follows: | ||
− | {| | + | {| class="wikitable" border="1" style="text-align: left" |
! Attack Surface | ! Attack Surface | ||
! Vulnerability | ! Vulnerability | ||
Line 145: | Line 144: | ||
* Tamper resistance | * Tamper resistance | ||
* Debug port | * Debug port | ||
+ | ** UART (Serial) | ||
+ | ** JTAG / SWD | ||
* Device ID/Serial number exposure | * Device ID/Serial number exposure | ||
|- | |- | ||
| '''Device Web Interface''' | | '''Device Web Interface''' | ||
| | | | ||
− | * Standard set of web vulnerabilities: | + | * Standard set of web application vulnerabilities, see: |
− | ** | + | ** [[:Category:OWASP Top Ten Project|OWASP Web Top 10]] |
− | ** | + | ** [[:Category:OWASP Application Security Verification Standard Project|OWASP ASVS]] |
− | ** | + | ** [[:Category:OWASP Testing Project|OWASP Testing guide]] |
− | |||
* Credential management vulnerabilities: | * Credential management vulnerabilities: | ||
** Username enumeration | ** Username enumeration | ||
Line 163: | Line 163: | ||
| '''Device Firmware''' | | '''Device Firmware''' | ||
| | | | ||
− | * Sensitive data exposure: | + | * Sensitive data exposure ([[Top 10 2013-A6-Sensitive Data Exposure|See OWASP Top 10 - A6 Sensitive data exposure]]): |
** Backdoor accounts | ** Backdoor accounts | ||
** Hardcoded credentials | ** Hardcoded credentials | ||
Line 172: | Line 172: | ||
* Firmware version display and/or last update date | * Firmware version display and/or last update date | ||
* Vulnerable services (web, ssh, tftp, etc.) | * Vulnerable services (web, ssh, tftp, etc.) | ||
+ | ** Verify for old sw versions and possible attacks (Heartbleed, Shellshock, old PHP versions etc) | ||
* Security related function API exposure | * Security related function API exposure | ||
− | * Firmware downgrade | + | * Firmware downgrade possibility |
|- | |- | ||
| '''Device Network Services''' | | '''Device Network Services''' | ||
Line 190: | Line 191: | ||
* DoS | * DoS | ||
* Device Firmware OTA update block | * Device Firmware OTA update block | ||
+ | * Firmware loaded over insecure channel (no TLS) | ||
* Replay attack | * Replay attack | ||
* Lack of payload verification | * Lack of payload verification | ||
Line 202: | Line 204: | ||
| '''Administrative Interface''' | | '''Administrative Interface''' | ||
| | | | ||
− | * Standard web vulnerabilities: | + | * Standard set of web application vulnerabilities, see: |
− | ** | + | ** [[:Category:OWASP Top Ten Project|OWASP Web Top 10]] |
− | ** | + | ** [[:Category:OWASP Application Security Verification Standard Project|OWASP ASVS]] |
− | ** | + | ** [[:Category:OWASP Testing Project|OWASP Testing guide]] |
− | |||
* Credential management vulnerabilities: | * Credential management vulnerabilities: | ||
** Username enumeration | ** Username enumeration | ||
Line 216: | Line 217: | ||
* Logging options | * Logging options | ||
* Two-factor authentication | * Two-factor authentication | ||
+ | * Check for insecure direct object references | ||
* Inability to wipe device | * Inability to wipe device | ||
|- | |- | ||
Line 228: | Line 230: | ||
| | | | ||
− | * Standard set of web vulnerabilities: | + | * Standard set of web application vulnerabilities, see: |
− | ** | + | ** [[:Category:OWASP Top Ten Project|OWASP Web Top 10]] |
− | ** | + | ** [[:Category:OWASP Application Security Verification Standard Project|OWASP ASVS]] |
− | ** | + | ** [[:Category:OWASP Testing Project|OWASP Testing guide]] |
* Credential management vulnerabilities: | * Credential management vulnerabilities: | ||
** Username enumeration | ** Username enumeration | ||
Line 317: | Line 319: | ||
* Sensing Environment Manipulation | * Sensing Environment Manipulation | ||
* Tampering (Physically) | * Tampering (Physically) | ||
− | * | + | * Damage (Physicall) |
|- | |- | ||
|} | |} | ||
− | |||
{{Social Media Links}} | {{Social Media Links}} | ||
− | | valign="top" | + | | valign="top" style="padding-left:25px;width:300px;border-right: 1px dotted gray;padding-right:25px;" | |
== What is the IoT Attack Surface Areas Project? == | == What is the IoT Attack Surface Areas Project? == | ||
Line 357: | Line 358: | ||
{| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- | {| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- | ||
− | | valign="top" | + | | valign="top" style="border-right: 1px dotted gray;padding-right:25px;" | |
== IoT Vulnerabilities Project == | == IoT Vulnerabilities Project == | ||
− | {| | + | {| class="wikitable" border="1" style="text-align: left" |
! Vulnerability | ! Vulnerability | ||
! Attack Surface | ! Attack Surface | ||
Line 383: | Line 384: | ||
| | | | ||
* Ability to set account passwords to '1234' or '123456' for example. | * Ability to set account passwords to '1234' or '123456' for example. | ||
+ | * Usage of pre-programmed default passwords | ||
|- | |- | ||
| '''Account Lockout''' | | '''Account Lockout''' | ||
Line 397: | Line 399: | ||
* Device Network Services | * Device Network Services | ||
| | | | ||
− | * Network services are not properly encrypted to prevent eavesdropping by attackers | + | * Network services are not properly encrypted to prevent eavesdropping or tampering by attackers |
|- | |- | ||
| '''Two-factor Authentication''' | | '''Two-factor Authentication''' | ||
Line 480: | Line 482: | ||
* By connecting to a serial interface, we will obtain full console access to a device | * By connecting to a serial interface, we will obtain full console access to a device | ||
* Usually security measures include custom bootloaders that prevent the attacker from entering single user mode, but that can also be bypassed. | * Usually security measures include custom bootloaders that prevent the attacker from entering single user mode, but that can also be bypassed. | ||
− | |||
|- | |- | ||
− | |||
− | |||
− | |||
|} | |} | ||
− | |||
{{Social Media Links}} | {{Social Media Links}} | ||
− | | valign="top" | + | | valign="top" style="padding-left:25px;width:300px;border-right: 1px dotted gray;padding-right:25px;" | |
== What is the IoT Vulnerabilities Project? == | == What is the IoT Vulnerabilities Project? == | ||
Line 528: | Line 525: | ||
{| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- | {| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- | ||
− | | valign="top" | + | | valign="top" style="border-right: 1px dotted gray;padding-right:25px;" | |
== Medical Device Testing == | == Medical Device Testing == | ||
Line 534: | Line 531: | ||
The Medical Device Testing project is intended to provide some basic attack surface considerations that should be evaluated before shipping Medical Device equipment. | The Medical Device Testing project is intended to provide some basic attack surface considerations that should be evaluated before shipping Medical Device equipment. | ||
− | {| | + | {| class="wikitable" border="1" style="text-align: left" |
! Attack Surface | ! Attack Surface | ||
! Vulnerability | ! Vulnerability | ||
Line 751: | Line 748: | ||
|} | |} | ||
− | |||
{{Social Media Links}} | {{Social Media Links}} | ||
− | | valign="top" | + | | valign="top" style="padding-left:25px;width:300px;border-right: 1px dotted gray;padding-right:25px;" | |
== What is the Medical Attack Surfaces project? == | == What is the Medical Attack Surfaces project? == | ||
Line 794: | Line 790: | ||
{| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- | {| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- | ||
− | | valign="top" | + | | valign="top" style="border-right: 1px dotted gray;padding-right:25px;" | |
== Firmware Analysis Project == | == Firmware Analysis Project == | ||
Line 800: | Line 796: | ||
The Firmware Analysis Project is intended to provide security testing guidance for the IoT Attack Surface "Device Firmware": | The Firmware Analysis Project is intended to provide security testing guidance for the IoT Attack Surface "Device Firmware": | ||
− | {| | + | {| class="wikitable" border="1" style="text-align: left" |
! Section | ! Section | ||
! | ! | ||
Line 863: | Line 859: | ||
|} | |} | ||
− | |||
{{Social Media Links}} | {{Social Media Links}} | ||
− | | valign="top" | + | | valign="top" style="padding-left:25px;width:300px;border-right: 1px dotted gray;padding-right:25px;" | |
== What is the Firmware Analysis Project? == | == What is the Firmware Analysis Project? == | ||
Line 911: | Line 906: | ||
{| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- | {| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- | ||
− | | valign="top" | + | | valign="top" style="border-right: 1px dotted gray;padding-right:25px;" | |
== IoT Logging Events== | == IoT Logging Events== | ||
Line 917: | Line 912: | ||
This is a working draft of the recommended minimum IoT Device logging events. This includes many different types of devices, including consumer IoT, enterprise IoT, and ICS/SCADA type devices. | This is a working draft of the recommended minimum IoT Device logging events. This includes many different types of devices, including consumer IoT, enterprise IoT, and ICS/SCADA type devices. | ||
− | {| | + | {| class="wikitable" border="1" style="text-align: left" |
! Event Category | ! Event Category | ||
! Events | ! Events | ||
Line 985: | Line 980: | ||
|} | |} | ||
− | |||
{{Social Media Links}} | {{Social Media Links}} | ||
− | | valign="top" | + | | valign="top" style="padding-left:25px;width:300px;border-right: 1px dotted gray;padding-right: 25px;" | |
== What is the IoT Security Logging Project? == | == What is the IoT Security Logging Project? == | ||
Line 1,018: | Line 1,012: | ||
{| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- | {| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- | ||
− | | valign="top" | + | | valign="top" style="border-right: 1px dotted gray;padding-right:25px;" | |
== ICS/SCADA Project == | == ICS/SCADA Project == | ||
Line 1,024: | Line 1,018: | ||
The OWASP ICS/SCADA Top 10 software weaknesses are as follows: | The OWASP ICS/SCADA Top 10 software weaknesses are as follows: | ||
− | {| | + | {| class="wikitable" border="1" style="text-align: left" |
! Rank and ID | ! Rank and ID | ||
! Title | ! Title | ||
Line 1,070: | Line 1,064: | ||
|} | |} | ||
− | |||
{{Social Media Links}} | {{Social Media Links}} | ||
− | | valign="top" | + | | valign="top" style="padding-left:25px;width:300px;border-right: 1px dotted gray;padding-right:25px;" | |
== What is the ICS/SCADA Project? == | == What is the ICS/SCADA Project? == | ||
Line 1,106: | Line 1,099: | ||
{| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- | {| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- | ||
− | | valign="top" | + | | valign="top" style="border-right: 1px dotted gray;padding-right:25px;" | |
== IoT Security Policy Project == | == IoT Security Policy Project == | ||
Line 1,112: | Line 1,105: | ||
The OWASP IoT Security Policy Project provides: | The OWASP IoT Security Policy Project provides: | ||
− | |||
{{Social Media Links}} | {{Social Media Links}} | ||
− | | valign="top" | + | | valign="top" style="padding-left:25px;width:300px;border-right: 1px dotted gray;padding-right:25px;" | |
== What is the IoT Security Policies Project? == | == What is the IoT Security Policies Project? == | ||
Line 1,137: | Line 1,129: | ||
|} | |} | ||
− | |||
− | |||
= Community = | = Community = | ||
Line 1,151: | Line 1,141: | ||
* Home Electronics | * Home Electronics | ||
* Public Infrastructure | * Public Infrastructure | ||
− | + | ||
[http://builditsecure.ly BuildItSecure.ly] | [http://builditsecure.ly BuildItSecure.ly] | ||
Line 1,162: | Line 1,152: | ||
* Curate informational resources | * Curate informational resources | ||
* Present research | * Present research | ||
− | + | ||
[https://otalliance.org Online Trust Alliance] | [https://otalliance.org Online Trust Alliance] | ||
Line 1,168: | Line 1,158: | ||
Addressing the mounting concerns, in January 2015 the Online Trust Alliance, established the [https://otalliance.org/initiatives/internet-things IoT Trustworthy Working Group (ITWG)], a multi-stakeholder initiative. The group recognizes “security and privacy by design” must be a priority from the onset of product development and be addressed holistically. The framework focuses on privacy, security sustainability. The sustainability pillar is critical as it looks at the life-cycle issues related to long- term supportability and transfers of ownership of devices and the data collected. | Addressing the mounting concerns, in January 2015 the Online Trust Alliance, established the [https://otalliance.org/initiatives/internet-things IoT Trustworthy Working Group (ITWG)], a multi-stakeholder initiative. The group recognizes “security and privacy by design” must be a priority from the onset of product development and be addressed holistically. The framework focuses on privacy, security sustainability. The sustainability pillar is critical as it looks at the life-cycle issues related to long- term supportability and transfers of ownership of devices and the data collected. | ||
− | + | ||
[https://allseenalliance.org/framework AllSeen Alliance] | [https://allseenalliance.org/framework AllSeen Alliance] | ||
The AllSeen Alliance is a Linux Foundation collaborative project. They're a cross-industry consortium dedicated to enabling the interoperability of billions of devices, services and apps that comprise the Internet of Things. The Alliance supports the AllJoyn Framework, an open source software framework that makes it easy for devices and apps to discover and communicate with each other. Developers can write applications for interoperability regardless of transport layer, manufacturer, and without the need for Internet access. The software has been and will continue to be openly available for developers to download, and runs on popular platforms such as Linux and Linux-based Android, iOS, and Windows, including many other lightweight real-time operating systems. | The AllSeen Alliance is a Linux Foundation collaborative project. They're a cross-industry consortium dedicated to enabling the interoperability of billions of devices, services and apps that comprise the Internet of Things. The Alliance supports the AllJoyn Framework, an open source software framework that makes it easy for devices and apps to discover and communicate with each other. Developers can write applications for interoperability regardless of transport layer, manufacturer, and without the need for Internet access. The software has been and will continue to be openly available for developers to download, and runs on popular platforms such as Linux and Linux-based Android, iOS, and Windows, including many other lightweight real-time operating systems. | ||
− | + | ||
[http://www.iiconsortium.org/ The Industrial Internet Consortium (IIC)] | [http://www.iiconsortium.org/ The Industrial Internet Consortium (IIC)] | ||
The Industrial Internet Consortium is the open membership, international not-for-profit consortium that is setting the architectural framework and direction for the Industrial Internet. Founded by AT&T, Cisco, GE, IBM and Intel in March 2014, the consortium’s mission is to coordinate vast ecosystem initiatives to connect and integrate objects with people, processes and data using common architectures, interoperability and open standards. | The Industrial Internet Consortium is the open membership, international not-for-profit consortium that is setting the architectural framework and direction for the Industrial Internet. Founded by AT&T, Cisco, GE, IBM and Intel in March 2014, the consortium’s mission is to coordinate vast ecosystem initiatives to connect and integrate objects with people, processes and data using common architectures, interoperability and open standards. | ||
− | + | ||
[http://securingsmartcities.org/ Securing Smart Cities] | [http://securingsmartcities.org/ Securing Smart Cities] | ||
Line 1,207: | Line 1,197: | ||
* [http://www.wikicfp.com/cfp/servlet/tool.search?q=internet+of+things&year=t WikiCFP - Internet of Things] | * [http://www.wikicfp.com/cfp/servlet/tool.search?q=internet+of+things&year=t WikiCFP - Internet of Things] | ||
* [http://www.wikicfp.com/cfp/servlet/tool.search?q=iot&year=t WikiCFP - IoT] | * [http://www.wikicfp.com/cfp/servlet/tool.search?q=iot&year=t WikiCFP - IoT] | ||
− | |||
Line 1,234: | Line 1,223: | ||
| links_url1 = | | links_url1 = | ||
| links_name1 = | | links_name1 = | ||
− | |||
− | |||
}} | }} | ||
Line 1,242: | Line 1,229: | ||
+ | __NOTOC__ <headertabs></headertabs> | ||
− | + | [[Category:OWASP_Project]] | |
− | + | [[Category:OWASP_Document]] | |
− | + | [[Category:OWASP_Download]] | |
− | [[Category:OWASP_Project]] [[Category:OWASP_Document]] [[Category:OWASP_Download]] [[Category:OWASP_Release_Quality_Document]] | + | [[Category:OWASP_Release_Quality_Document]] |
Revision as of 10:20, 20 March 2017