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
Aaron.guzman (talk | contribs) (→Updated!) (Tag: Visual edit) |
Aaron.guzman (talk | contribs) |
||
(23 intermediate revisions by 2 users not shown) | |||
Line 10: | Line 10: | ||
''The OWASP Internet of Things Project is designed to help manufacturers, developers, and consumers better understand the security issues associated with the Internet of Things, and to enable users in any context to make better security decisions when building, deploying, or assessing IoT technologies''. | ''The OWASP Internet of Things Project is designed to help manufacturers, developers, and consumers better understand the security issues associated with the Internet of Things, and to enable users in any context to make better security decisions when building, deploying, or assessing IoT technologies''. | ||
− | The project looks to define a structure for various IoT sub-projects | + | The project looks to define a structure for various IoT sub-projects separated into the following categories - Seek & Understand, Validate & Test, and Governance. |
==Updated!== | ==Updated!== | ||
− | The OWASP IoT Project for 2018 has | + | The OWASP IoT Project for 2018 has been released![[File:OWASP 2018 IoT Top10 Final.jpg|center|thumb|1301x1301px]] |
− | |||
− | [[File:2018 IoT Top10. | ||
== Philosophy == | == Philosophy == | ||
Line 74: | Line 72: | ||
* Developer, Consumer and Manufacturer Guidance | * Developer, Consumer and Manufacturer Guidance | ||
* Design Principles | * Design Principles | ||
+ | * IoTGoat | ||
== Project Leaders == | == Project Leaders == | ||
Line 115: | Line 114: | ||
== Quick Download == | == Quick Download == | ||
[https://www.owasp.org/images/1/1c/OWASP-IoT-Top-10-2018-final.pdf OWASP IoT Top Ten 2018] | [https://www.owasp.org/images/1/1c/OWASP-IoT-Top-10-2018-final.pdf OWASP IoT Top Ten 2018] | ||
− | |||
− | |||
− | |||
− | |||
[https://www.owasp.org/images/3/36/IoTTestingMethodology.pdf IoT Attack Surface Mapping DEFCON 23] | [https://www.owasp.org/images/3/36/IoTTestingMethodology.pdf IoT Attack Surface Mapping DEFCON 23] | ||
Line 124: | Line 119: | ||
[https://www.owasp.org/images/2/2d/Iot_testing_methodology.JPG IoT Testing Guidance Handout] | [https://www.owasp.org/images/2/2d/Iot_testing_methodology.JPG IoT Testing Guidance Handout] | ||
− | [https://www.owasp.org/images/7/71/Internet_of_Things_Top_Ten_2014-OWASP.pdf OWASP IoT Top Ten PDF | + | [https://www.owasp.org/images/7/71/Internet_of_Things_Top_Ten_2014-OWASP.pdf OWASP IoT Top Ten 2014 PDF] |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
[https://www.owasp.org/images/b/bd/OWASP-IoT.pptx OWASP IoT Project Overview] | [https://www.owasp.org/images/b/bd/OWASP-IoT.pptx OWASP IoT Project Overview] | ||
== News and Events == | == News and Events == | ||
− | * [https:// | + | * OWASP [https://www.owasp.org/index.php/OWASP_Internet_of_Things_Project#tab=IoTGoat IoTGoat Project] underway |
+ | * New firmware security analysis tool, ByteSweep | ||
+ | * IoT ASVS and Testing Guide set to kick off in 2019 | ||
* Added a [https://owasp-iot-security.slack.com/ Slack channel] | * Added a [https://owasp-iot-security.slack.com/ Slack channel] | ||
* Added a sub-project; [https://www.owasp.org/index.php/OWASP_Internet_of_Things_Project#tab=IoT_Security_Policy_Project IoT Security Policy Project] | * Added a sub-project; [https://www.owasp.org/index.php/OWASP_Internet_of_Things_Project#tab=IoT_Security_Policy_Project IoT Security Policy Project] | ||
− | |||
− | |||
− | |||
==Classifications== | ==Classifications== | ||
Line 193: | Line 181: | ||
* [[Top 10 2014-I9 Insecure Software/Firmware|I9 Insecure Software/Firmware]] | * [[Top 10 2014-I9 Insecure Software/Firmware|I9 Insecure Software/Firmware]] | ||
* [[Top 10 2014-I10 Poor Physical Security|I10 Poor Physical Security]] | * [[Top 10 2014-I10 Poor Physical Security|I10 Poor Physical Security]] | ||
+ | |||
+ | = OWASP IoT Top 10 2018 Mapping Project = | ||
+ | {| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- | ||
+ | | style="border-right: 1px dotted gray;padding-right:25px;" valign="top" | | ||
+ | |||
+ | == IoT Top 10 2018 Mapping Project == | ||
+ | |||
+ | The OWASP IoT Mapping Project is intended to provide a mapping of the OWASP IoT Top 10 2018 to industry publications and sister projects. The goal is to provide resources that enable practical uses for the OWASP IoT Top 10 . As with all Top 10 lists, they should be used as a first step and expanded upon according to the applicable IoT ecosystem. | ||
+ | |||
+ | Mappings are structured with control categories, tests, or recommendations in the left column, descriptions in the middle column, and their mapping to the OWASP IoT Top 10 2018 list in the right column. Each mapping may not have a 1 to 1 relation; however, similar recommendations and/or controls are listed. For mappings that are not applicable to the IoT Top 10 2018 list, an "N/A" is provided as the mapping. | ||
+ | |||
+ | An example mapping of the IoT Top 10 2014 is provided below. | ||
+ | |||
+ | [[File:2014 2018Mapping.png|center|frameless|746x746px]] | ||
+ | |||
+ | For additional mappings, please visit the following link: https://scriptingxss.gitbook.io/owasp-iot-top-10-mapping-project/<nowiki/>{{Social Media Links}} | ||
+ | |||
+ | | style="padding-left:25px;width:300px;border-right: 1px dotted gray;padding-right:25px;" valign="top" | | ||
+ | |||
+ | == What is the IoT Top 10 Mapping Project? == | ||
+ | |||
+ | The OWASP IoT Mapping Project is intended to provide a mapping of the OWASP IoT Top 10 2018 to industry publications and sister projects. The goal is to provide resources that enable practical uses for the OWASP IoT Top 10 . As with all Top 10 lists, they should be used as a first step and expanded upon according to the applicable IoT ecosystem. | ||
+ | |||
+ | Mappings include the following: | ||
+ | * [https://scriptingxss.gitbook.io/owasp-iot-top-10-mapping-project/mappings/owasp-iot-top-10-2014 OWASP IoT Top 10 2014] | ||
+ | * [https://scriptingxss.gitbook.io/owasp-iot-top-10-mapping-project/mappings/gsma-iot-security-assessment-checklist GSMA IoT Security Assessment Checklist] | ||
+ | * [https://scriptingxss.gitbook.io/owasp-iot-top-10-mapping-project/mappings/code-of-practice Code of Practice (UK Government)] | ||
+ | * [https://scriptingxss.gitbook.io/owasp-iot-top-10-mapping-project/mappings/enisa-baseline-security-recommendations-for-iot ENISA Baseline Security Recommendations for IoT] | ||
+ | |||
+ | and more... | ||
+ | |||
+ | == GitBook == | ||
+ | Mappings are hosted on GitBook using the following link https://scriptingxss.gitbook.io/owasp-iot-top-10-mapping-project/ | ||
+ | |||
+ | == Project Leaders == | ||
+ | |||
+ | * Aaron Guzman | ||
+ | |||
+ | == Collaboration == | ||
+ | [https://owasp.slack.com The Slack Channel] | ||
+ | |||
+ | |} | ||
+ | |||
+ | = IoTGoat = | ||
+ | <div style="width:100%;height:160px;border:0,margin:0;overflow: hidden;">[[File:OWASP_Project_Header.jpg|link=]]</div> | ||
+ | |||
+ | {| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- | ||
+ | | style="border-right: 1px dotted gray;padding-right:25px;" valign="top" | | ||
+ | |||
+ | == IoTGoat Project == | ||
+ | |||
+ | IoT Goat is a deliberately insecure firmware based on OpenWrt. The project’s goal is to teach users about the most common vulnerabilities typically found in IoT devices. The vulnerabilities will be based on the top 10 vulnerabilities as documented by OWASP: [[OWASP_Internet_of_Things_Project|https://www.owasp.org/index.php/OWASP_Internet_of_Things_Project]]. IoTGoat is expected to be released by December 2019. | ||
+ | |||
+ | To get more information on getting started or how to contribute, visit the project's Github: https://github.com/scriptingxss/IoTGoat | ||
+ | |||
+ | {{Social Media Links}} | ||
+ | |||
+ | | style="padding-left:25px;width:300px;border-right: 1px dotted gray;padding-right:25px;" valign="top" | | ||
+ | |||
+ | == What is the IoTGoat Project? == | ||
+ | |||
+ | The IoTGoat Project is a deliberately insecure firmware based on OpenWrt. The project’s goal is to teach users about the most common vulnerabilities typically found in IoT devices. The vulnerabilities will be based on the IoT Top 10. | ||
+ | |||
+ | == GitHub == | ||
+ | https://github.com/scriptingxss/IoTGoat | ||
+ | |||
+ | == Project Leaders == | ||
+ | |||
+ | * Aaron Guzman | ||
+ | * Fotios Chantzis | ||
+ | * [[User:Calderpwn|Paulino Calderon]] | ||
+ | |||
+ | == Related Projects == | ||
+ | |||
+ | * WebGoat | ||
+ | * Serverless Goat | ||
+ | * NodeGoat | ||
+ | * RailsGoat | ||
+ | |||
+ | == Collaboration == | ||
+ | [https://owasp.slack.com The Slack Channel] | ||
+ | |||
+ | [https://groups.google.com/forum/#!forum/iotgoat IoTGoat Google Group] | ||
+ | |||
+ | == Quick Download == | ||
+ | * [https://docs.google.com/presentation/d/1SJfabCBxvC3GWnmBCqisO5pyLzkB1-EVcR7s8baT0dE/edit?usp=sharing Project Kick-off Slides] | ||
+ | * [https://strozfriedberg.webex.com/recordingservice/sites/strozfriedberg/recording/playback/5529b228ac514bed8cc050a9dee0f0df Project Kick-off Meeting] | ||
+ | * [https://docs.google.com/spreadsheets/d/1KXX2K7ikkve6wmdfAVu-sZONgKEBuAkRij_paJUgX2w/edit?usp=sharing Project Task List] | ||
+ | |||
+ | == News and Events == | ||
+ | * Coming Soon | ||
+ | |||
+ | |} | ||
+ | |||
+ | = ByteSweep = | ||
+ | [[File:OWASP_Project_Header.jpg|link=]] | ||
+ | {| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- | ||
+ | | style="border-right: 1px dotted gray;padding-right:25px;" valign="top" | | ||
+ | |||
+ | == ByteSweep Project == | ||
+ | |||
+ | ByteSweep is a Free Software IoT security analysis platform. This platform will allow IoT device makers, large and small, to conduct fully automated security checks before they ship firmware. A Free Software IoT Firmware Security Analysis Platform | ||
+ | |||
+ | ByteSweep Features: | ||
+ | * Firmware extraction | ||
+ | * File data enrichment | ||
+ | * Key and password hash identification | ||
+ | * Unsafe function use detection | ||
+ | * 3rd party component identification | ||
+ | * CVE correlation | ||
+ | {{Social Media Links}} | ||
+ | |||
+ | | style="padding-left:25px;width:300px;border-right: 1px dotted gray;padding-right:25px;" valign="top" | | ||
+ | |||
+ | == What is the ByteSweep Project? == | ||
+ | |||
+ | A Free Software IoT Firmware Security Analysis Platform. | ||
+ | |||
+ | == GitLab == | ||
+ | https://gitlab.com/bytesweep/bytesweep | ||
+ | |||
+ | == Project Leaders == | ||
+ | |||
+ | * Matt Brown | ||
+ | |||
+ | == Collaboration == | ||
+ | [https://owasp.slack.com The Slack Channel] | ||
+ | |||
+ | == Quick Download == | ||
+ | * https://gitlab.com/bytesweep/bytesweep/blob/master/INSTALL.md | ||
+ | |||
+ | |} | ||
+ | |||
+ | = Firmware Security Testing Methodology = | ||
+ | [[File:OWASP_Project_Header.jpg|link=]] | ||
+ | |||
+ | {| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- | ||
+ | | style="border-right: 1px dotted gray;padding-right:25px;" valign="top" | | ||
+ | |||
+ | == Firmware Security Testing Methodology == | ||
+ | |||
+ | The Firmware Security Testing Methodology (FSTM) is composed of nine stages tailored to enable security researchers, software developers, consultants, hobbyists, and Information Security professionals with conducting firmware security assessments. | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |'''Stage''' | ||
+ | |'''Description''' | ||
+ | |- | ||
+ | |1. Information gathering and reconnaissance | ||
+ | |Acquire all relative technical and documentation details pertaining to the target device’s firmware | ||
+ | |- | ||
+ | |2. Obtaining firmware | ||
+ | |Attain firmware using one or more of the proposed methods listed | ||
+ | |- | ||
+ | |3. Analyzing firmware | ||
+ | |Examine the target firmware’s characteristics | ||
+ | |- | ||
+ | |4. Extracting the filesystem | ||
+ | |Carve filesystem contents from the target firmware | ||
+ | |- | ||
+ | |5. Analyzing filesystem contents | ||
+ | |Statically analyze extracted filesystem configuration files and binaries for vulnerabilities | ||
+ | |- | ||
+ | |6. Emulating firmware | ||
+ | |Emulate firmware files and components | ||
+ | |- | ||
+ | |7. Dynamic analysis | ||
+ | |Perform dynamic security testing against firmware and application interfaces | ||
+ | |- | ||
+ | |8. Runtime analysis | ||
+ | |Analyze compiled binaries during device runtime | ||
+ | |- | ||
+ | |9. Binary Exploitation | ||
+ | |Exploit identified vulnerabilities discovered in previous stages to attain root and/or code execution | ||
+ | |}The full methodology release can be downloaded via the following https://github.com/scriptingxss/owasp-fstm/releases/download/v1.0/Firmware_Security_Testing_Methodology_Version1.pdf. | ||
+ | |||
+ | {{Social Media Links}} | ||
+ | |||
+ | | style="padding-left:25px;width:300px;border-right: 1px dotted gray;padding-right:25px;" valign="top" | | ||
+ | |||
+ | == What is the Firmware Security Testing Methodology == | ||
+ | |||
+ | The Firmware Security Testing Methodology Project provides: | ||
+ | |||
+ | *Attack walkthroughs | ||
+ | *Tool usage examples | ||
+ | *Screenshots | ||
+ | *Companion virtual machine preloaded with tools (EmbedOS) - <nowiki>https://github.com/scriptingxss/EmbedOS</nowiki> | ||
+ | |||
+ | == Project Leaders == | ||
+ | |||
+ | * Aaron Guzman | ||
+ | |||
+ | == Quick Download == | ||
+ | * https://github.com/scriptingxss/owasp-fstm/releases | ||
+ | |||
+ | |} | ||
= IoT Attack Surface Areas = | = IoT Attack Surface Areas = | ||
Line 950: | Line 1,134: | ||
* [http://www.binaryanalysis.org/en/home Binary Analysis Tool] | * [http://www.binaryanalysis.org/en/home Binary Analysis Tool] | ||
* [https://github.com/firmadyne/firmadyne Firmadyne] | * [https://github.com/firmadyne/firmadyne Firmadyne] | ||
+ | * Firmware Analysis Comparison Toolkit | ||
+ | * [https://gitlab.com/bytesweep/bytesweep ByteSweep] | ||
|- | |- | ||
| | | | ||
Line 955: | Line 1,141: | ||
| | | | ||
* [https://github.com/praetorian-inc/DVRF Damn Vulnerable Router Firmware] | * [https://github.com/praetorian-inc/DVRF Damn Vulnerable Router Firmware] | ||
+ | * [https://github.com/scriptingxss/IoTGoat OWASP IoTGoat] | ||
|- | |- | ||
− | |} | + | | |
− | + | |}{{Social Media Links}} | |
− | {{Social Media Links}} | ||
| style="padding-left:25px;width:300px;border-right: 1px dotted gray;padding-right:25px;" valign="top" | | | style="padding-left:25px;width:300px;border-right: 1px dotted gray;padding-right:25px;" valign="top" | | ||
Line 1,106: | Line 1,292: | ||
|} | |} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
=Project About= | =Project About= |
Latest revision as of 07:02, 1 November 2019