diff --git a/CNAME b/CNAME new file mode 100644 index 0000000..b5068d1 --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +iotsecuritywiki.com diff --git a/README.md b/README.md deleted file mode 100644 index 6722982..0000000 --- a/README.md +++ /dev/null @@ -1,202 +0,0 @@ -### Welcome to IoT Security Wiki Website. - -So this website is an intiative to help developers and security researchers to get all security resource related to IoT Security. Although listing out all resources related to IoT is very difficult, but i have tried my best to list out Major technical material available. - -As IoT is broadly based on four components: Embedded Systems, Cloud, Network, Mobile. We will have resource related to first three in this wiki and for Mobile we already have [MobileSecurityWiki](https://mobilesecuritywiki.com) which is also my project. - -If you find anything missing or have some resource to add, please add through [contribute](#contribute) section. - -Follow IoT Security Wiki on [Twitter](https://twitter.com/IoTSecurityWiki) to get latest updates about IoT Security - -Thanks! - -##Presentations - -| Presentation | Conference | Year | Author | Link | -|------------------------------------------------------------------------------------------|----------------|------|-----------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| A Surface Area Approach to Pen-testing the IoT | Defcon 23 | 2015 | Daniel Miessler | [Video](https://www.youtube.com/watch?v=RhxHHD790nw) [Slide](https://www.iotvillage.org/slides_DC23/IoT-Attack-Surfaces-DEFCON-2015-2.pdf) | -| The Hand that Rocks the Cradle: Hacking IoT Baby Monitors | Defcon23 | 2015 | Mark Stanislav | [Video](https://www.youtube.com/watch?v=2QU6OVkMg68) | -| Security of Wireless Home Automation Systems - A World Beside TCP/IP | Defon23 | 2015 | Tobias Zillner & Sebastian Strobl | [Slide](https://www.iotvillage.org/slides_DC23/IOT-village-v2.pdf) | -| Securing the IoT World | Defcon 23 | 2015 | Aaron Guzman | [Video](https://www.youtube.com/watch?v=VOvzsnIQPyA) [Slide](https://docs.google.com/presentation/d/1FfXGtqgPFXxA3zoqi8UAfnAsdlFbK0zDOhwp7MbJYko/mobilepresent?pli=1&slide=id.g63c7381c1_1_18) | -| Yes, You Can Walk on Water: Application & Product Security on a Startup Budget | Defcon23 | 2015 | Brian Knopf | [Video](https://www.youtube.com/watch?v=aTirAI-B-dI) | -| Cameras, Thermostats, and Home Automation Controllers - Hacking 14 IoT Devices | Defcon23 | 2015 | Wesley Wineberg | [Video](https://www.youtube.com/watch?v=majPZcqlVjI) [Slide](https://www.iotvillage.org/slides_DC23/IoT11-slides.pdf) | -| Smart Hone Invasion | Defcon23 | 2015 | Craig Young | [Video](https://www.youtube.com/watch?v=VWEhaZdUVW8) Slide[](https://www.iotvillage.org/slides_DC23/CRAIG_YOUNG-IoT_Village-Smart_Home_Invasion.pdf) | -| Practical IoT Exploitation Workshop (MIPS/ARM) | Defcon23 | 2015 | Lyon Yang | [Video]() [Slide](https://www.iotvillage.org/slides_DC23/DEFCON23_IoTVillage_Hackshop_v12.pptx) | -| Advanced SOHO Router Exploitation | HITBGSEC | 2015 | Lyon Yang | [Video](https://www.youtube.com/watch?v=B_OYnpAVpd8) [Slide](http://www.slideshare.net/lyonyang3/advanced-soho-router-exploitation-xcon) | -| Pwning IoT with Hardware Attacks | Defcon23 | 2015 | Chase Schultz | [Slide](http://www.slideshare.net/ChaseSchultz/pwning-iot-via-hardware-attacks-chase-schultz-iot-village-defcon-23) | -| SWEET SECURITY - Creating a Defensive Raspberry Pi | Defcon23 | 2015 | Travis Smith | [Slide](https://www.iotvillage.org/slides_DC23/Sweet%20Security.pptx) | -| Securing the Internet of Things: Mapping Attack Surface Areas Using the OWASP IoT Top 10 | RSA Conference | 2015 | Daniel Miessler | [Link](https://www.owasp.org/images/5/51/RSAC2015-OWASP-IoT-Miessler.pdf) | -| IoT Security | BSides | 2015 | Justin C. Klein Keane | [Video](https://www.youtube.com/watch?v=s5AOkqyCvHg) | -| Securing the Internet of Things | IoT Conference | 2015 | Paul Fremantle | [Video](https://www.youtube.com/watch?v=iEu1LFhnPWQ) | -| The Internet of Fails - Where IoT Has Gone Wrong | Defcon22 | 2014 | Mark Stanislav & Zach Lanier | [Video](https://www.youtube.com/watch?v=WHdU4LutBGU) | -## WhitePapers -* [What the Internet of Things(IoT) needs to become a reality](http://www.mouser.fr/pdfdocs/INTOTHNGSWP.PDF) -* [Security of Things: An Implementers’ Guide to Cyber-Security for Internet of Things Devices and Beyond](https://www.nccgroup.trust/globalassets/our-research/uk/whitepapers/2014-04-09_-_security_of_things_-_an_implementers_guide_to_cyber_security_for_internet_of_things_devices_and_beyond-2.pdf) -* [Use case possibilities with Bluetooth low energy in IoT applications](http://www.spezial.de/sites/default/files/bluetoothlowenergy-iot-applications_whitepaper_ubx-14054580.pdf) - -##Research Studies - -| Title | Organization | Year | Link | -|-------------------------------------------------|-----------------|------|-------------------------------------------------------------------------------------------------------------------| -| The Internet of Things: Security Research Study | Veracode | 2015 | [Link](https://www.veracode.com/sites/default/files/Resources/Whitepapers/internet-of-things-whitepaper.pdf) | -| Internet of Things Research Study | Hewlett Packard | 2015 | [Link](http://www8.hp.com/h20195/V2/GetPDF.aspx/4AA5-4759ENW.pdf) | -| Insecurity in Internet Of Things | Symantec | 2015 | [Link](https://www.symantec.com/content/en/us/enterprise/iot/b-insecurity-in-the-internet-of-things_21349619.pdf) | -| Securing the "Internet of Things" Survey | SANS | 2014 | [Link](http://cybersec.orglearn.com/wp-content/uploads/2014/02/SecuringtheInternetofThingsSurvey.pdf) - -##Research Papers - -| Title | Year | Link | -|-----------------------------------------------------------------------------------------------------------|------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| Enhance Embedded System Security With Rust | 2016 | [Link](http://www.getreu.net/public/downloads/doc/Enhance%20Embedded%20System%20Security%20With%20Rust/Enhance%20Embedded%20System%20Security%20With%20Rust--Example%20of%20Heartbleed.pdf) | -| Requirement of Security for IoT Application based on Gateway System | 2015 | [Link](http://www.sersc.org/journals/IJSIA/vol9_no10_2015/18.pdf) | -| Threats Analysis, Requirements and Considerationsfor Secure Internet of Things | 2015 | [Link](www.sersc.org/journals/IJSH/vol9_no12_2015/20.pdf) | -| Hybrid Lightweight and Robust Encryption Design for Security in IoT | 2015 | [Link](http://www.sersc.org/journals/IJSIA/vol9_no12_2015/10.pdf) | -| A Study on IP Exposure Notification System for IoT Devices Using IP Search Engine Shodan | 2015 | [Link](http://www.sersc.org/journals/IJMUE/vol10_no12_2015/7.pdf) | -| Security Framework and Jamming Detection for Internet of Things | 2015 | [Link](http://vbn.aau.dk/files/208811916/Thesis_SECURITY_FRAMEWORK_AND_JAMMING_DETECTION_FOR_INTERNET_OF_THINGS.pdf) | -| Personal Information Security and the IoT: The Changing Landscape of Data privacy | 2015 | [Link](http://www.bapress.ca/ccc/ccc2015_4/201511_2_15112162.pdf) | -| Design of the Secure Compiler for the IoT Services | 2015 | [Link](http://onlinepresent.org/proceedings/vol110_2015/14.pdf) | -| On the design of lightweight link-layersecurity mechanisms in IoT systems | 2015 | [Link](https://pdfs.semanticscholar.org/c937/29a471915721f3e85b6dc16adf6ac77cc34f.pdf) | -| A Digital Door Lock System for the Internet of Things with Improved Security and Usability | 2015 | [Link](http://onlinepresent.org/proceedings/vol109_2015/8.pdf) | -| Security Threats on National Defense ICT based on IoT | 2015 | [Link](http://modul.mercubuana.ac.id/files/openjournal/JournalOfArt/text/16_77.pdf) | -| On the Security and Privacy of Internet of Things Architectures and Systems | 2015 | [Link](https://www.informatik.tu-darmstadt.de/fileadmin/user_upload/Group_TK/filesDownload/Published_Papers/SIoTpaper.pdf) | -| Cyber Security for Intelligent World with Internet of Things and Machine to Machine Communication | 2015 | [Link](http://riverpublishers.com/journal/journal_articles/RP_Journal_2245-1439_412.pdf) | -| Study on the Vulnerability Level of Physical Security AndApplication of the IP-Based Devices | 2015 | [Link](http://www.sersc.org/journals/IJSH/vol9_no10_2015/7.pdf) | -| ENERGY AWARE SECURITY ALGORITHM DECISION METHOD FOR INTERNET OF THINGS USING SSL/TLS FOR WIRELESS NETWORK | 2015 | [Link](http://granthaalayah.com/Articles/Vol3Iss12/01_IJRG15_C12_72.pdf) | -| A Lightweight RFID Security Protocol Based on Elliptic Curve Cryptography | 2015 | [Link](http://ijns.jalaxy.com.tw/contents/ijns-v18-n2/ijns-2016-v18-n2-p354-361.pdf) | -| DTLS-HIMMO: Efficiently Securing a Post-Quantum World with a Fully-Collusion Resistant KPS | 2015 | [Link](http://csrc.nist.gov/groups/ST/post-quantum-2015/papers/session7-garciamorchon-paper.pdf) | -| Study on a Secure Wireless Data Communication in Internet of Things Applications | 2015 | [Link](http://paper.ijcsns.org/07_book/201502/20150204.pdf) | -| IoT: The Internet of Threats and Static Program Analysis Defense | 2015 | [Link](https://ssrg.nicta.com.au/publications/nictaabstracts/8517.pdf) | -| Event driven adaptive security in internet of things | 2014 | [Link](https://www.researchgate.net/profile/Waqas_Aman/publication/265786485_Event_Driven_Adaptive_Security_in_Internet_of_things/links/54f6ca370cf2ca5efeff3f45.pdf) | -| Internet of Things: Architectural framework for eHealth security | 2014 | [Link](http://riverpublishers.com/journal/journal_articles/RP_Journal_2245-800X_133.pdf) | -| Privacy and Security Issues for Healthcare System with Embedded RFID System on Internet of Things | 2014 | [Link](onlinepresent.org/proceedings/vol72_2014/27.pdf) | -| An Approach for Cyber SecurityExperimentation Supporting Sensei/IoT forSmart Grid | 2014 | [Link](www.ibs.ro/~bela/Papers/isdfs2014.pdf) | -| Toward an Inverse-free Lightweight Encryption Scheme for IoT | 2014 | [Link](http://caislab.kaist.ac.kr/publication/paper_files/2014/FINAL_0089_HJ.pdf) | -| Broadcast Based Registration Technique for Heterogeneous Nodes in the IoT | 2014 | [Link](https://www.researchgate.net/profile/Qazi_Ashraf/publication/270106094_Broadcast_Based_Registration_Technique_for_Heterogeneous_Nodes_in_the_IoT/links/54a0c3510cf257a636021b11.pdf) | -| An Evaluation Scenario for Adaptive Security in eHealth | 2014 | [Link](https://www.researchgate.net/profile/Stefan_Poslad/publication/261989906_2014_PESARO-30_60033/links/00b49536202809c046000000.pdf) | -| Security requirements of IoT-based smart buildings using RESTful Web Services | 2014 | [Link](http://www1.fh-dortmund.de/de/fb/3/institutionen/ikt/pub/103020100000386719.media/386720/paper_Kando-conference-.pdf) | -| A survey on providing security to the wireless sensor networks integrated with IOT | 2014 | [Link](https://www.erpublication.org/admin/vol_issue1/upload%20Image/IJETR023021.pdf) | -| IOT Secure Transmission Based on Integration of IBE and PKI/CA | 2013 | [Link](http://www.sersc.org/journals/IJCA/vol6_no2/23.pdf) | -| An Empirical Research on InfoSec RiskManagement in IoT-based eHealth | 2013 | [Link](https://www.researchgate.net/profile/Waqas_Aman/publication/265786582_An_Empirical_Research_on_InfoSec_Risk_Management_in_IoT-based_eHealth/links/54f6c9cb0cf21d8b8a5d90bf.pdf) | -| Security and privacy challenge in data aggregation for the iot in smart cities | 2013 | [Link](https://www.researchgate.net/profile/Patrick_Guillemin/publication/260712666_Internet_of_Things_Strategic_Research_and_Innovation_Agenda/links/00b49537c99302c081000000.pdf#page=240) | -| Designing a secure service manager for internet of things | 2013 | [Link](http://onlinepresent.org/proceedings/vol43_2013/35.pdf) | -| Identity Authentication and Capability Based Access Control (IACAC) for the Internetof Things | 2013 | [Link](http://vbn.aau.dk/ws/files/74574200/PNM_IACAC_River.pdf) | -| Security Architecture of the Internet of Things Oriented to PerceptualLayer | 2013 | [Link](http://ij3c.ncuteecs.org/volume/paperfile/2-2/IJ3C_5.pdf) | -| Towards a Light Weight Internet of ThingsPlatform Architecture | 2013 | [Link](http://riverpublishers.com/journal/journal_articles/RP_Journal_2245-800X_128.pdf) | -| A bi-direction authentication protocol for RFID based on the variable update in IOT | 2013 | [Link](http://onlinepresent.org/proceedings/vol17_2013/6.pdf) | -| Novel Threshold Cryptography-based Group Authentication (TCGA)Scheme for the Internet of Things (IoT) | 2013 | [Link](http://vbn.aau.dk/ws/files/107848036/D_TCGA_IEEE_ANTS_2013_PNM.pdf) | -| A Survey on Security Issues of M2M Communications in Cyber-Physical Systems. | 2012 | [Link](https://www.researchgate.net/profile/Dong_Chen27/publication/263285993_A_Survey_on_Security_Issues_of_M2M_Communications_in_Cyber-Physical_Systems/links/55cd810d08ae1141f6b9f0b9.pdf) | -| Making Devices Trustworthy: Security and Trust Feedbackin the Internet of Things | 2012 | [Link](http://www.medien.ifi.lmu.de/iwssi2012/papers/iwssi-spmu2012-hochleitner.pdf) | -| A bi-directional security authentication architecture for the internet of vehicles | 2012 | [Link](http://amis.naturalspublishing.com/files/published/mh28xl118t4u15.pdf) | -| Security for Practical CoAP Applications:Issues and Solution Approaches | 2011 | [Link](https://www.researchgate.net/profile/Michael_Kirsche/publication/265973615_Security_for_Practical_CoAP_Applications_Issues_and_Solution_Approaches/links/5583f51c08ae4738295c2028.pdf) | -| A Security Protocol Adaptation Layer for theIP-based Internet of Things | 2011 | [Link](https://www.iab.org/wp-content/IAB-uploads/2011/03/Hummen.pdf) | -| Security in the Internet of Things | 2011 | [Link](http://www.mhutter.org/papers/Gudymenko2011SecurityInThe.pdf) | -| Assessing the Security of Internet ConnectedCritical Infrastructures | 2010 | [Link](https://www.researchgate.net/profile/Neeraj_Suri/publication/267942349_Assessing_the_Security_of_Internet_Connected_Critical_Infrastructures_(The_CoMiFin_Project_Approach)/links/54bcd6600cf29e0cb04c388a.pdf) | - -##OWASP Resources - -* [Top IoT Vulnerabilities](https://www.owasp.org/index.php/Top_IoT_Vulnerabilities) -* [IoT Testing Guides](https://www.owasp.org/index.php/IoT_Testing_Guides) -* [Manufacturer IoT Security Guidance](https://www.owasp.org/index.php/IoT_Security_Guidance#Manufacturer_IoT_Security_Guidance) -* [Developer IoT Security Guidance](https://www.owasp.org/index.php/IoT_Security_Guidance#Developer_IoT_Security_Guidance) -* [Consumer IoT Security Guidance](https://www.owasp.org/index.php/IoT_Security_Guidance#Consumer_IoT_Security_Guidance) -* [Priciples of IoT Security](https://www.owasp.org/index.php/Principles_of_IoT_Security) -* [IoT Framework Assessment](https://www.owasp.org/index.php/IoT_Framework_Assessment) - -##Case Studies - -* [HACKING IoT: A Case Study on Baby Monitor Exposures and Vulnerabilities](https://www.rapid7.com/docs/Hacking-IoT-A-Case-Study-on-Baby-Monitor-Exposures-and-Vulnerabilities.pdf) -* [Your Fridge is Full of SPAM: Proof of An IoT-driven Attack](https://www.proofpoint.com/us/threat-insight/post/Your-Fridge-is-Full-of-SPAM) -* [Refrigerator Vulnerabilities - Samsung Security Hack ](https://www.pentestpartners.com/blog/hacking-defcon-23s-iot-village-samsung-fridge/) - -##Articles - -* [Vulnerable Embedded Web Interfaces Plague IoT Devices: Study](http://www.securityweek.com/vulnerable-embedded-web-interfaces-plague-iot-devices-study) -* [A Hacker's-Eye View of the Internet of Things](https://recode.net/2015/04/07/a-hackers-eye-view-of-the-internet-of-things/) -* [Hackers Remotely Kill a Jeep on the Highway—With Me in It](http://www.wired.com/2015/07/hackers-remotely-kill-jeep-highway/) -* [How hackers attacked Ukraine's power grid: Implications for Industrial IoT security](http://www.zdnet.com/article/how-hackers-attacked-ukraines-power-grid-implications-for-industrial-iot-security/) - -##Firmware Analysis - -* [Binwalk](https://github.com/devttys0/binwalk) - Binwalk is a fast, easy to use tool for analyzing, reverse engineering, and extracting firmware images. -* [Reversing Firmware Part 1](http://resources.infosecinstitute.com/reversing-firmware-part-1/) -* [Embedded Devices Security and Firmware Reverse Engineering](https://media.blackhat.com/us-13/US-13-Zaddach-Workshop-on-Embedded-Devices-Security-and-Firmware-Reverse-Engineering-WP.pdf) - -## IoT Development Tools - -* [Arduino](https://www.arduino.cc/) - Arduino is an open-source electronics platform based on easy-to-use hardware and software. It's intended for anyone making interactive projects. -* [Eclipse IoT Project](http://iot.eclipse.org/) - IoT needs open source to be successful. Eclipse IoT simplifies IoT development. -* [Kinoma](https://origin-www.marvell.com/kinoma/) - Kinoma’s platform is optimized for connected, high-performance consumer electronics and Internet of Things (IoT) products. Build rich consumer experiences that orchestrate connected devices, their companion apps, and cloud services. -* [M2M Labs MainSpring](http://www.m2mlabs.com/framework) - M2MLabs Mainspring is an open source application framework for building machine to machine (M2M) applications such as remote monitoring, fleet management or smart grid. -* [Node-RED](http://nodered.org/) - Node-RED is a tool for wiring together hardware devices, APIs and online services in new and interesting ways. -* [Particle](https://www.particle.io) - Particle is a prototype-to-production platform for developing an Internet of Things product. -* [PlatformIO](http://platformio.org/#!/) - PlatformIO IDE is the missing integrated development environment which provides comprehensive facilities for IoT development: -* [ThingBox](http://thethingbox.io/#idea) - The ThingBox is a set of software already installed and configured. -The ThingBox allows anyone to graphically create new unlimited applications interacting with connected objects from a simple web-browser. - -##IoT Hardware Platforms - -* [Arduino](https://arduino.cc) - Arduino is an open-source electronics platform based on easy-to-use hardware and software. It's intended for anyone making interactive projects. - * Arduino Nano] - * Arduno Pro Mini - * Arduino Uno - * Arduino Yún -* [Arietta G25](http://www.acmesystems.it/arietta) - Arietta G25 - Low cost Linux embedded module -* [BeagleBoard](http://beagleboard.org/) - Get your hands in technology's guts and control your development destiny with these credit-card sized, low-power, open-hardware computers. Experiment with Linux, Android and Ubuntu and jump-start development in five minutes with the included USB cable. -* [Flutter](http://flutterwireless.com/) - Flutter is a programmable processor core for electronics projects, designed for hobbysits, students, and engineers. Flutter features a fast ARM processor, powerful long-range wireless communication, built-in battery charging, and an onboard security chip, making Flutter an ideal choice for robotics, wireless sensor networks, consumer electronics, and educational platforms. -* [Imuduino](http://femto.io/products/imuduino) - The smallest Arduino Leonardo compatible clone, feature packed with USB keyboard/mouse emulation, on-board Bluetooth LE, real-time orientation and motion sensing IMU, and 10V max voltage regulator. Works with Android and iOS devices -* [Intel Edison](https://www-ssl.intel.com/content/www/us/en/do-it-yourself/support/maker/edison/edison-documents-and-guides.html) - The Intel Edison is a tiny computer offered by Intel as a development system for wearable devices and Internet Of Things. -* [Intel Galileo](http://www.intel.in/content/www/in/en/embedded/products/galileo/galileo-overview.html) - The Intel® Galileo Gen 2 development board is a microcontroller board based on the Intel® Quark™ SoC X1000 application processor, a 32-bit Intel® Pentium® brand system on a chip (SoC). It is the first board based on Intel® architecture designed to be hardware and software pin-compatible with shields designed for the Arduino Uno R3. -* [LightBlue Bean](https://punchthrough.com/bean) - With Bean, you can program wirelessly from any of your devices. No more unscrewing screws and ungluing glue. -* [MicroDuino](https://www.microduino.cc) - Microduino presents the world’s smallest series of Arduino-compatible smart modules that are small, flexible, stackable and powerful, and can be used to create a limitless amount of DIY projects. - -##Home Automation Software -* [Eclipse SmartHome](https://eclipse.org/smarthome/) - The framework is designed to run on embedded devices, such as a Raspberry Pi, a BeagleBone Black or an Intel Edison. It requires a Java 7 compliant JVM and an OSGi (4.2+) framework, such as Eclipse Equinox. -* [Home Gateway Initiative](http://www.homegatewayinitiative.org/) - The HGI Open Platform 2.0 suite captures home gateway software modularity requirements and provides remote test tools that form a cornerstone of many of the operators’ and vendors’ home gateway strategy. -* [Ninja Blocks](https://ninjablocks.com/) - Ninja Sphere is both a hardware and software platform designed to seamlessly bridge your smart devices together. By connecting to products from various brands, your home can start using them in new and exciting ways. -* [openHAB](http://www.openhab.org/) - a vendor and technology agnostic open source automation software for your home. Build your smart home in no time! -* [PrivateEyePi](http://projects.privateeyepi.com/) - This is a Raspberry Pi projects website aimed at the Raspberry Pi enthusiast wanting to build home security/automation systems and at the same time learn programming and electronics. -* [RaZberry](http://razberry.z-wave.me/) - The Razberry platform adds all the components needed to turn a Raspberry PI board into a fully operational and inexpensive Z-Wave gateway. - -##Middleware -* [IoTSyS](https://code.google.com/archive/p/iotsys/) - IoTSyS is an integration middleware for the Internet of Things. It provides a communication stack for embedded devices based on IPv6, Web services and oBIX to provide interoperable interfaces for smart objects. Using 6LoWPAN for constrained wireless networks and the Constrained Application Protocol together with Efficient XML Interchange an efficient stack is provided allowing using interoperable Web technologies in the field of sensor and actuator networks and systems while remaining nearly as efficient regarding transmission message sizes as existing automation systems. -* [Kaa](http://www.kaaproject.org/) - Kaa IoT Platform — 100% open-source Internet of Things middleware platform for everyone. -* [OpenIoT](https://github.com/OpenIotOrg/openiot) - The OpenIoT middleware infrastructure will support flexible configuration and deployment of algorithms for collection, and filtering information streams stemming from the internet-connected objects, while at the same time generating and processing important business/applications events. -* [OpenRemote](http://www.openremote.org/display/HOME/OpenRemote) - OpenRemote is software integration platform for residential and commercial building automation. OpenRemote platform is automation protocol agnostic, operates on off-the-shelf hardware and is freely available under an Open Source license. OpenRemote's architecture enables fully autonomous and user-independent intelligent buildings. End-user control interfaces are available for iOS and Android devices, and for devices with modern web browsers. User interface design, installation management and configuration can be handled remotely with OpenRemote cloud-based design tools. - -##Operating Systems -* [AllJoyn](https://allseenalliance.org/opportunities/developers) - The AllJoyn framework defines a common way for devices and apps to communicate with one another regardless of brands, categories, transports, and OSes. Developers write applications that discover nearby devices, and communicate with each other directly and through the cloud, unleashing new possibilities in the Internet of Things. -* [Brillo](https://developers.google.com/brillo/?hl=en) - Brillo brings the simplicity and speed of software development to hardware for IoT with an embedded OS, core services, developer kit, and developer console. -* [Contiki](http://www.contiki-os.org/) - Contiki is an open source operating system for the Internet of Things. Contiki connects tiny low-cost, low-power microcontrollers to the Internet. -* [JaneOS](http://janeos.io) - JanOS is an operating system designed to run on the chipset of mobile phones. It runs without a screen, and allows you to access all phone functionality, from calling to the camera, through JavaScript APIs. -* [OpenWSN](https://openwsn.atlassian.net/wiki/) - The Internet of Things enables great applications, such as energy-aware homes or real-time asset tracking. With these networks gaining maturity, standardization bodies have started to work on standardizing how these networks of tiny devices communicate. -* [Rasbian](https://www.raspbian.org/) - Raspbian is a free operating system based on Debian optimized for the Raspberry Pi hardware. An operating system is the set of basic programs and utilities that make your Raspberry Pi run. However, Raspbian provides more than a pure OS: it comes with over 35,000 packages, pre-compiled software bundled in a nice format for easy installation on your Raspberry Pi. -* [RIOT](http://www.riot-os.org/#home) - The friendly Operating System for the Internet of Things. Make your applications ready for the smaller things in the Internet with common system support. - * 6LoWPAN, IPv6, RPL, and UDP - * CoAP and CBOR - * Static and dynamic memory allocation - * High resolution and long-term timers - * Tools and utilities (System shell, SHA-256, Bloom filters, ...) -* [TinyOS](https://www.tinyos.net/) - TinyOS is an open source, BSD-licensed operating system designed for low-power wireless devices, such as those used in sensor networks, ubiquitous computing, personal area networks, smart buildings, and smart meters. -* [Windows 10 IoT Core OS](https://dev.windows.com/en-us/iot) - Discover the features and functionality that Windows 10 IoT Core provides. It’s ease of Windows combined with the power of IoT. -* [Zephyr](https://www.zephyrproject.org/) - Zephyr Project is a small, scalable real-time operating system for use on resource-constrained systems supporting multiple architectures. Developers are able to tailor their optimal solution. As a true open source project, the community can evolve the Zephyr Project to support new hardware, developer tools, sensor and device drivers. Advancements in security, device management capabilities, connectivity stacks and file systems can be easily implemented. - - -##IoT App Development Protocols - -* [Advanced Message Queuing Protocol]() -* [OASIS Message Queuing Telemetry Transport]() -* [Very Simple Control Protocol]() -* [Constrained Application Protocol]() -* [Extensible Messaging and Presence Protocol]() - -#Contribute - -It is awesome to see that you want to contribute in this wiki, which would directly help the community. Please follow one of the ways from below to include tool/resource in this wiki- - -* Tweet the resource to [@IoTSecurityWiki](https://twitter.com/IoTSecurityWiki) or [@exploitprotocol](https://twitter.com/exploitprotocol) -* Send an email to [aditya@manifestsecurity.com](mailto:aditya@manifestsecurity.com) - -Please let me know if you have any suggestions. - -Below is the list of the awesome folks who contributed to this wiki- - diff --git a/fonts/copse-regular-webfont.eot b/fonts/copse-regular-webfont.eot new file mode 100644 index 0000000..af1f5e6 Binary files /dev/null and b/fonts/copse-regular-webfont.eot differ diff --git a/fonts/copse-regular-webfont.svg b/fonts/copse-regular-webfont.svg new file mode 100644 index 0000000..1e920b5 --- /dev/null +++ b/fonts/copse-regular-webfont.svg @@ -0,0 +1,247 @@ + + + + +This is a custom SVG webfont generated by Font Squirrel. +Copyright : Copyright c 2010 Daniel Rhatigansparkyultrasparkyorg with Reserved Font Name Copse +Designer : Daniel Rhatigan +Foundry : Daniel Rhatigan + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/fonts/copse-regular-webfont.ttf b/fonts/copse-regular-webfont.ttf new file mode 100644 index 0000000..434b208 Binary files /dev/null and b/fonts/copse-regular-webfont.ttf differ diff --git a/fonts/copse-regular-webfont.woff b/fonts/copse-regular-webfont.woff new file mode 100644 index 0000000..a9a0450 Binary files /dev/null and b/fonts/copse-regular-webfont.woff differ diff --git a/fonts/quattrocentosans-bold-webfont.eot b/fonts/quattrocentosans-bold-webfont.eot new file mode 100644 index 0000000..c041ed9 Binary files /dev/null and b/fonts/quattrocentosans-bold-webfont.eot differ diff --git a/fonts/quattrocentosans-bold-webfont.svg b/fonts/quattrocentosans-bold-webfont.svg new file mode 100644 index 0000000..fb162e9 --- /dev/null +++ b/fonts/quattrocentosans-bold-webfont.svg @@ -0,0 +1,247 @@ + + + + +This is a custom SVG webfont generated by Font Squirrel. +Copyright : Copyright c 2011 Pablo Impallari wwwimpallaricomimpallarigmailcomCopyright c 2011 Igino Marini wwwikerncommailiginomarinicomCopyright c 2011 Brenda Gallo gbrenda1987gmailcomwith Reserved Font Name Quattrocento Sans +Designer : Pablo Impallari +Foundry : Pablo Impallari Igino Marini Brenda Gallo +Foundry URL : wwwimpallaricom + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/fonts/quattrocentosans-bold-webfont.ttf b/fonts/quattrocentosans-bold-webfont.ttf new file mode 100644 index 0000000..7389c87 Binary files /dev/null and b/fonts/quattrocentosans-bold-webfont.ttf differ diff --git a/fonts/quattrocentosans-bold-webfont.woff b/fonts/quattrocentosans-bold-webfont.woff new file mode 100644 index 0000000..fc14168 Binary files /dev/null and b/fonts/quattrocentosans-bold-webfont.woff differ diff --git a/fonts/quattrocentosans-bolditalic-webfont.eot b/fonts/quattrocentosans-bolditalic-webfont.eot new file mode 100644 index 0000000..7c1aa7a Binary files /dev/null and b/fonts/quattrocentosans-bolditalic-webfont.eot differ diff --git a/fonts/quattrocentosans-bolditalic-webfont.svg b/fonts/quattrocentosans-bolditalic-webfont.svg new file mode 100644 index 0000000..9070a8b --- /dev/null +++ b/fonts/quattrocentosans-bolditalic-webfont.svg @@ -0,0 +1,248 @@ + + + + +This is a custom SVG webfont generated by Font Squirrel. +Copyright : Copyright c 2011 Pablo Impallari wwwimpallaricomimpallarigmailcomCopyright c 2011 Igino Marini wwwikerncommailiginomarinicomCopyright c 2011 Brenda Gallo gbrenda1987gmailcomwith Reserved Font Name Quattrocento Sans +Designer : Pablo Impallari +Foundry : Pablo Impallari Igino Marini Brenda Gallo +Foundry URL : wwwimpallaricom + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/fonts/quattrocentosans-bolditalic-webfont.ttf b/fonts/quattrocentosans-bolditalic-webfont.ttf new file mode 100644 index 0000000..9766a17 Binary files /dev/null and b/fonts/quattrocentosans-bolditalic-webfont.ttf differ diff --git a/fonts/quattrocentosans-bolditalic-webfont.woff b/fonts/quattrocentosans-bolditalic-webfont.woff new file mode 100644 index 0000000..c436da0 Binary files /dev/null and b/fonts/quattrocentosans-bolditalic-webfont.woff differ diff --git a/fonts/quattrocentosans-italic-webfont.eot b/fonts/quattrocentosans-italic-webfont.eot new file mode 100644 index 0000000..379b383 Binary files /dev/null and b/fonts/quattrocentosans-italic-webfont.eot differ diff --git a/fonts/quattrocentosans-italic-webfont.svg b/fonts/quattrocentosans-italic-webfont.svg new file mode 100644 index 0000000..b613779 --- /dev/null +++ b/fonts/quattrocentosans-italic-webfont.svg @@ -0,0 +1,247 @@ + + + + +This is a custom SVG webfont generated by Font Squirrel. +Copyright : Copyright c 2011 Pablo Impallari wwwimpallaricomimpallarigmailcomCopyright c 2011 Igino Marini wwwikerncommailiginomarinicomCopyright c 2011 Brenda Gallo gbrenda1987gmailcomwith Reserved Font Name Quattrocento Sans +Designer : Pablo Impallari +Foundry : Pablo Impallari Igino Marini Brenda Gallo +Foundry URL : wwwimpallaricom + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/fonts/quattrocentosans-italic-webfont.ttf b/fonts/quattrocentosans-italic-webfont.ttf new file mode 100644 index 0000000..c7ba47a Binary files /dev/null and b/fonts/quattrocentosans-italic-webfont.ttf differ diff --git a/fonts/quattrocentosans-italic-webfont.woff b/fonts/quattrocentosans-italic-webfont.woff new file mode 100644 index 0000000..3798881 Binary files /dev/null and b/fonts/quattrocentosans-italic-webfont.woff differ diff --git a/fonts/quattrocentosans-regular-webfont.eot b/fonts/quattrocentosans-regular-webfont.eot new file mode 100644 index 0000000..346db6f Binary files /dev/null and b/fonts/quattrocentosans-regular-webfont.eot differ diff --git a/fonts/quattrocentosans-regular-webfont.svg b/fonts/quattrocentosans-regular-webfont.svg new file mode 100644 index 0000000..3470924 --- /dev/null +++ b/fonts/quattrocentosans-regular-webfont.svg @@ -0,0 +1,247 @@ + + + + +This is a custom SVG webfont generated by Font Squirrel. +Copyright : Copyright c 2011 Pablo Impallari wwwimpallaricomimpallarigmailcomCopyright c 2011 Igino Marini wwwikerncommailiginomarinicomCopyright c 2011 Brenda Gallo gbrenda1987gmailcomwith Reserved Font Name Quattrocento Sans +Designer : Pablo Impallari +Foundry : Pablo Impallari Igino Marini Brenda Gallo +Foundry URL : wwwimpallaricom + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/fonts/quattrocentosans-regular-webfont.ttf b/fonts/quattrocentosans-regular-webfont.ttf new file mode 100644 index 0000000..e414670 Binary files /dev/null and b/fonts/quattrocentosans-regular-webfont.ttf differ diff --git a/fonts/quattrocentosans-regular-webfont.woff b/fonts/quattrocentosans-regular-webfont.woff new file mode 100644 index 0000000..09ed324 Binary files /dev/null and b/fonts/quattrocentosans-regular-webfont.woff differ diff --git a/images/background.png b/images/background.png new file mode 100644 index 0000000..e57dd78 Binary files /dev/null and b/images/background.png differ diff --git a/images/body-background.png b/images/body-background.png new file mode 100644 index 0000000..dbe1a77 Binary files /dev/null and b/images/body-background.png differ diff --git a/images/bullet.png b/images/bullet.png new file mode 100644 index 0000000..732fa2f Binary files /dev/null and b/images/bullet.png differ diff --git a/images/hr.gif b/images/hr.gif new file mode 100644 index 0000000..a64b56c Binary files /dev/null and b/images/hr.gif differ diff --git a/images/octocat-logo.png b/images/octocat-logo.png new file mode 100644 index 0000000..8a2dd2a Binary files /dev/null and b/images/octocat-logo.png differ diff --git a/index.html b/index.html new file mode 100644 index 0000000..94e3c21 --- /dev/null +++ b/index.html @@ -0,0 +1,679 @@ + + + + + + IoT Security Wiki + + + + + + + + + + + +
+

IoT Security Wiki

+

One Stop for IoT Security Resources

+
+ + + +
+ +
+

+Welcome to IoT Security Wiki.

+ +

It is an intiative to help developers and security researchers to get all security resource related to IoT devices. Although listing out all resources related to IoT is very difficult, but i have tried my best to list out Major technical material available.

+ +

As IoT is broadly based on four components: Embedded Systems, Cloud, Network, Mobile. We will have resource related to first three in this wiki and for Mobile we already have MobileSecurityWiki which is also my project.

+ +

If you find anything missing or have some resource to add, please add through contribute section.

+ +

Follow IoT Security Wiki on Twitter to get latest updates about IoT Security

+ +

Thanks!

+ +

+Presentations

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PresentationConferenceYearAuthorLink
A Surface Area Approach to Pen-testing the IoTDefcon 232015Daniel Miessler +Video Slide +
The Hand that Rocks the Cradle: Hacking IoT Baby MonitorsDefcon232015Mark StanislavVideo
Security of Wireless Home Automation Systems - A World Beside TCP/IPDefon232015Tobias Zillner & Sebastian StroblSlide
Securing the IoT WorldDefcon 232015Aaron Guzman +Video Slide +
Yes, You Can Walk on Water: Application & Product Security on a Startup BudgetDefcon232015Brian KnopfVideo
Cameras, Thermostats, and Home Automation Controllers - Hacking 14 IoT DevicesDefcon232015Wesley Wineberg +Video Slide +
Smart Hone InvasionDefcon232015Craig Young +Video Slide +
Practical IoT Exploitation Workshop (MIPS/ARM)Defcon232015Lyon Yang +Video Slide +
Advanced SOHO Router ExploitationHITBGSEC2015Lyon Yang +Video Slide +
Pwning IoT with Hardware AttacksDefcon232015Chase SchultzSlide
SWEET SECURITY - Creating a Defensive Raspberry PiDefcon232015Travis SmithSlide
Securing the Internet of Things: Mapping Attack Surface Areas Using the OWASP IoT Top 10RSA Conference2015Daniel MiesslerLink
IoT SecurityBSides2015Justin C. Klein KeaneVideo
Securing the Internet of ThingsIoT Conference2015Paul FremantleVideo
The Internet of Fails - Where IoT Has Gone WrongDefcon222014Mark Stanislav & Zach LanierVideo
+ +

+WhitePapers

+ + + +

+Research Studies

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TitleOrganizationYearLink
The Internet of Things: Security Research StudyVeracode2015Link
Internet of Things Research StudyHewlett Packard2015Link
Insecurity in Internet Of ThingsSymantec2015Link
Securing the "Internet of Things" SurveySANS2014Link
+ +

+Research Papers

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TitleYearLink
Enhance Embedded System Security With Rust2016Link
Requirement of Security for IoT Application based on Gateway System2015Link
Threats Analysis, Requirements and Considerationsfor Secure Internet of Things2015Link
Hybrid Lightweight and Robust Encryption Design for Security in IoT2015Link
A Study on IP Exposure Notification System for IoT Devices Using IP Search Engine Shodan2015Link
Security Framework and Jamming Detection for Internet of Things2015Link
Personal Information Security and the IoT: The Changing Landscape of Data privacy2015Link
Design of the Secure Compiler for the IoT Services2015Link
On the design of lightweight link-layersecurity mechanisms in IoT systems2015Link
A Digital Door Lock System for the Internet of Things with Improved Security and Usability2015Link
Security Threats on National Defense ICT based on IoT2015Link
On the Security and Privacy of Internet of Things Architectures and Systems2015Link
Cyber Security for Intelligent World with Internet of Things and Machine to Machine Communication2015Link
Study on the Vulnerability Level of Physical Security AndApplication of the IP-Based Devices2015Link
ENERGY AWARE SECURITY ALGORITHM DECISION METHOD FOR INTERNET OF THINGS USING SSL/TLS FOR WIRELESS NETWORK2015Link
A Lightweight RFID Security Protocol Based on Elliptic Curve Cryptography2015Link
DTLS-HIMMO: Efficiently Securing a Post-Quantum World with a Fully-Collusion Resistant KPS2015Link
Study on a Secure Wireless Data Communication in Internet of Things Applications2015Link
IoT: The Internet of Threats and Static Program Analysis Defense2015Link
Event driven adaptive security in internet of things2014Link
Internet of Things: Architectural framework for eHealth security2014Link
Privacy and Security Issues for Healthcare System with Embedded RFID System on Internet of Things2014Link
An Approach for Cyber SecurityExperimentation Supporting Sensei/IoT forSmart Grid2014Link
Toward an Inverse-free Lightweight Encryption Scheme for IoT2014Link
Broadcast Based Registration Technique for Heterogeneous Nodes in the IoT2014Link
An Evaluation Scenario for Adaptive Security in eHealth2014Link
Security requirements of IoT-based smart buildings using RESTful Web Services2014Link
A survey on providing security to the wireless sensor networks integrated with IOT2014Link
IOT Secure Transmission Based on Integration of IBE and PKI/CA2013Link
An Empirical Research on InfoSec RiskManagement in IoT-based eHealth2013Link
Security and privacy challenge in data aggregation for the iot in smart cities2013Link
Designing a secure service manager for internet of things2013Link
Identity Authentication and Capability Based Access Control (IACAC) for the Internetof Things2013Link
Security Architecture of the Internet of Things Oriented to PerceptualLayer2013Link
Towards a Light Weight Internet of ThingsPlatform Architecture2013Link
A bi-direction authentication protocol for RFID based on the variable update in IOT2013Link
Novel Threshold Cryptography-based Group Authentication (TCGA)Scheme for the Internet of Things (IoT)2013Link
A Survey on Security Issues of M2M Communications in Cyber-Physical Systems.2012Link
Making Devices Trustworthy: Security and Trust Feedbackin the Internet of Things2012Link
A bi-directional security authentication architecture for the internet of vehicles2012Link
Security for Practical CoAP Applications:Issues and Solution Approaches2011Link
A Security Protocol Adaptation Layer for theIP-based Internet of Things2011Link
Security in the Internet of Things2011Link
Assessing the Security of Internet ConnectedCritical Infrastructures2010Link
+ +

+OWASP Resources

+ + + +

+Case Studies

+ + + +

+Articles

+ + + +

+Firmware Analysis

+ + + +

+IoT Development Tools

+ + + +

+IoT Hardware Platforms

+ + + +

+Home Automation Software

+ + + +

+Middleware

+ + + +

+Operating Systems

+ + + +

+IoT App Development Protocols

+ + + +

+Contribute

+ +

It is awesome to see that you want to contribute in this wiki, which would directly help the community. Please follow one of the ways from below to include tool/resource in this wiki-

+ + + +

Please let me know if you have any suggestions.

+ +

Below is the list of the awesome folks who contributed to this wiki-

+
+
+ + + + + + diff --git a/javascripts/main.js b/javascripts/main.js new file mode 100644 index 0000000..c57e54c --- /dev/null +++ b/javascripts/main.js @@ -0,0 +1,53 @@ +var sectionHeight = function() { + var total = $(window).height(), + $section = $('section').css('height','auto'); + + if ($section.outerHeight(true) < total) { + var margin = $section.outerHeight(true) - $section.height(); + $section.height(total - margin - 20); + } else { + $section.css('height','auto'); + } +} + +$(window).resize(sectionHeight); + +$(document).ready(function(){ + $("section h1, section h2").each(function(){ + $("nav ul").append("
  • " + $(this).text() + "
  • "); + $(this).attr("id",$(this).text().toLowerCase().replace(/ /g, '-').replace(/[^\w-]+/g,'')); + $("nav ul li:first-child a").parent().addClass("active"); + }); + + $("nav ul li").on("click", "a", function(event) { + var position = $($(this).attr("href")).offset().top - 190; + $("html, body").animate({scrollTop: position}, 400); + $("nav ul li a").parent().removeClass("active"); + $(this).parent().addClass("active"); + event.preventDefault(); + }); + + sectionHeight(); + + $('img').load(sectionHeight); +}); + +fixScale = function(doc) { + + var addEvent = 'addEventListener', + type = 'gesturestart', + qsa = 'querySelectorAll', + scales = [1, 1], + meta = qsa in doc ? doc[qsa]('meta[name=viewport]') : []; + + function fix() { + meta.content = 'width=device-width,minimum-scale=' + scales[0] + ',maximum-scale=' + scales[1]; + doc.removeEventListener(type, fix, true); + } + + if ((meta = meta[meta.length - 1]) && addEvent in doc) { + fix(); + scales = [.25, 1.6]; + doc[addEvent](type, fix, true); + } +}; \ No newline at end of file diff --git a/params.json b/params.json new file mode 100644 index 0000000..9c3ca7e --- /dev/null +++ b/params.json @@ -0,0 +1 @@ +{"name":"IoT Security Wiki","tagline":"One Stop for IoT Security Resources","body":"### Welcome to IoT Security Wiki Website.\r\n\r\nSo this website is an intiative to help developers and security researchers to get all security resource related to IoT Security. Although listing out all resources related to IoT is very difficult, but i have tried my best to list out Major technical material available. \r\n\r\nAs IoT is broadly based on four components: Embedded Systems, Cloud, Network, Mobile. We will have resource related to first three in this wiki and for Mobile we already have [MobileSecurityWiki](https://mobilesecuritywiki.com) which is also my project.\r\n\r\nIf you find anything missing or have some resource to add, please add through [contribute](#contribute) section.\r\n\r\nFollow IoT Security Wiki on [Twitter](https://twitter.com/IoTSecurityWiki) to get latest updates about IoT Security\r\n\r\nThanks!\r\n\r\n##Presentations \r\n\r\n| Presentation | Conference | Year | Author | Link |\r\n|------------------------------------------------------------------------------------------|----------------|------|-----------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\r\n| A Surface Area Approach to Pen-testing the IoT | Defcon 23 | 2015 | Daniel Miessler | [Video](https://www.youtube.com/watch?v=RhxHHD790nw) [Slide](https://www.iotvillage.org/slides_DC23/IoT-Attack-Surfaces-DEFCON-2015-2.pdf) |\r\n| The Hand that Rocks the Cradle: Hacking IoT Baby Monitors | Defcon23 | 2015 | Mark Stanislav | [Video](https://www.youtube.com/watch?v=2QU6OVkMg68) |\r\n| Security of Wireless Home Automation Systems - A World Beside TCP/IP | Defon23 | 2015 | Tobias Zillner & Sebastian Strobl | [Slide](https://www.iotvillage.org/slides_DC23/IOT-village-v2.pdf) |\r\n| Securing the IoT World | Defcon 23 | 2015 | Aaron Guzman | [Video](https://www.youtube.com/watch?v=VOvzsnIQPyA) [Slide](https://docs.google.com/presentation/d/1FfXGtqgPFXxA3zoqi8UAfnAsdlFbK0zDOhwp7MbJYko/mobilepresent?pli=1&slide=id.g63c7381c1_1_18) |\r\n| Yes, You Can Walk on Water: Application & Product Security on a Startup Budget | Defcon23 | 2015 | Brian Knopf | [Video](https://www.youtube.com/watch?v=aTirAI-B-dI) |\r\n| Cameras, Thermostats, and Home Automation Controllers - Hacking 14 IoT Devices | Defcon23 | 2015 | Wesley Wineberg | [Video](https://www.youtube.com/watch?v=majPZcqlVjI) [Slide](https://www.iotvillage.org/slides_DC23/IoT11-slides.pdf) |\r\n| Smart Hone Invasion | Defcon23 | 2015 | Craig Young | [Video](https://www.youtube.com/watch?v=VWEhaZdUVW8) Slide[](https://www.iotvillage.org/slides_DC23/CRAIG_YOUNG-IoT_Village-Smart_Home_Invasion.pdf) |\r\n| Practical IoT Exploitation Workshop (MIPS/ARM) | Defcon23 | 2015 | Lyon Yang | [Video]() [Slide](https://www.iotvillage.org/slides_DC23/DEFCON23_IoTVillage_Hackshop_v12.pptx) |\r\n| Advanced SOHO Router Exploitation | HITBGSEC | 2015 | Lyon Yang | [Video](https://www.youtube.com/watch?v=B_OYnpAVpd8) [Slide](http://www.slideshare.net/lyonyang3/advanced-soho-router-exploitation-xcon) |\r\n| Pwning IoT with Hardware Attacks | Defcon23 | 2015 | Chase Schultz | [Slide](http://www.slideshare.net/ChaseSchultz/pwning-iot-via-hardware-attacks-chase-schultz-iot-village-defcon-23) |\r\n| SWEET SECURITY - Creating a Defensive Raspberry Pi | Defcon23 | 2015 | Travis Smith | [Slide](https://www.iotvillage.org/slides_DC23/Sweet%20Security.pptx) |\r\n| Securing the Internet of Things: Mapping Attack Surface Areas Using the OWASP IoT Top 10 | RSA Conference | 2015 | Daniel Miessler | [Link](https://www.owasp.org/images/5/51/RSAC2015-OWASP-IoT-Miessler.pdf) |\r\n| IoT Security | BSides | 2015 | Justin C. Klein Keane | [Video](https://www.youtube.com/watch?v=s5AOkqyCvHg) |\r\n| Securing the Internet of Things | IoT Conference | 2015 | Paul Fremantle | [Video](https://www.youtube.com/watch?v=iEu1LFhnPWQ) |\r\n| The Internet of Fails - Where IoT Has Gone Wrong | Defcon22 | 2014 | Mark Stanislav & Zach Lanier | [Video](https://www.youtube.com/watch?v=WHdU4LutBGU) |\r\n## WhitePapers\r\n* [What the Internet of Things(IoT) needs to become a reality](http://www.mouser.fr/pdfdocs/INTOTHNGSWP.PDF)\r\n* [Security of Things: An Implementers’ Guide to Cyber-Security for Internet of Things Devices and Beyond](https://www.nccgroup.trust/globalassets/our-research/uk/whitepapers/2014-04-09_-_security_of_things_-_an_implementers_guide_to_cyber_security_for_internet_of_things_devices_and_beyond-2.pdf)\r\n* [Use case possibilities with Bluetooth low energy in IoT applications](http://www.spezial.de/sites/default/files/bluetoothlowenergy-iot-applications_whitepaper_ubx-14054580.pdf)\r\n\r\n##Research Studies\r\n\r\n| Title | Organization | Year | Link |\r\n|-------------------------------------------------|-----------------|------|-------------------------------------------------------------------------------------------------------------------|\r\n| The Internet of Things: Security Research Study | Veracode | 2015 | [Link](https://www.veracode.com/sites/default/files/Resources/Whitepapers/internet-of-things-whitepaper.pdf) |\r\n| Internet of Things Research Study | Hewlett Packard | 2015 | [Link](http://www8.hp.com/h20195/V2/GetPDF.aspx/4AA5-4759ENW.pdf) |\r\n| Insecurity in Internet Of Things | Symantec | 2015 | [Link](https://www.symantec.com/content/en/us/enterprise/iot/b-insecurity-in-the-internet-of-things_21349619.pdf) |\r\n| Securing the \"Internet of Things\" Survey\t\t\t| SANS\t\t\t| 2014\t| [Link](http://cybersec.orglearn.com/wp-content/uploads/2014/02/SecuringtheInternetofThingsSurvey.pdf)\r\n\r\n##Research Papers\r\n\r\n| Title | Year | Link |\r\n|-----------------------------------------------------------------------------------------------------------|------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\r\n| Enhance Embedded System Security With Rust | 2016 | [Link](http://www.getreu.net/public/downloads/doc/Enhance%20Embedded%20System%20Security%20With%20Rust/Enhance%20Embedded%20System%20Security%20With%20Rust--Example%20of%20Heartbleed.pdf) |\r\n| Requirement of Security for IoT Application based on Gateway System | 2015 | [Link](http://www.sersc.org/journals/IJSIA/vol9_no10_2015/18.pdf) |\r\n| Threats Analysis, Requirements and Considerationsfor Secure Internet of Things | 2015 | [Link](www.sersc.org/journals/IJSH/vol9_no12_2015/20.pdf) |\r\n| Hybrid Lightweight and Robust Encryption Design for Security in IoT | 2015 | [Link](http://www.sersc.org/journals/IJSIA/vol9_no12_2015/10.pdf) |\r\n| A Study on IP Exposure Notification System for IoT Devices Using IP Search Engine Shodan | 2015 | [Link](http://www.sersc.org/journals/IJMUE/vol10_no12_2015/7.pdf) |\r\n| Security Framework and Jamming Detection for Internet of Things | 2015 | [Link](http://vbn.aau.dk/files/208811916/Thesis_SECURITY_FRAMEWORK_AND_JAMMING_DETECTION_FOR_INTERNET_OF_THINGS.pdf) |\r\n| Personal Information Security and the IoT: The Changing Landscape of Data privacy | 2015 | [Link](http://www.bapress.ca/ccc/ccc2015_4/201511_2_15112162.pdf) |\r\n| Design of the Secure Compiler for the IoT Services | 2015 | [Link](http://onlinepresent.org/proceedings/vol110_2015/14.pdf) |\r\n| On the design of lightweight link-layersecurity mechanisms in IoT systems | 2015 | [Link](https://pdfs.semanticscholar.org/c937/29a471915721f3e85b6dc16adf6ac77cc34f.pdf) |\r\n| A Digital Door Lock System for the Internet of Things with Improved Security and Usability | 2015 | [Link](http://onlinepresent.org/proceedings/vol109_2015/8.pdf) |\r\n| Security Threats on National Defense ICT based on IoT | 2015 | [Link](http://modul.mercubuana.ac.id/files/openjournal/JournalOfArt/text/16_77.pdf) |\r\n| On the Security and Privacy of Internet of Things Architectures and Systems | 2015 | [Link](https://www.informatik.tu-darmstadt.de/fileadmin/user_upload/Group_TK/filesDownload/Published_Papers/SIoTpaper.pdf) |\r\n| Cyber Security for Intelligent World with Internet of Things and Machine to Machine Communication | 2015 | [Link](http://riverpublishers.com/journal/journal_articles/RP_Journal_2245-1439_412.pdf) |\r\n| Study on the Vulnerability Level of Physical Security AndApplication of the IP-Based Devices | 2015 | [Link](http://www.sersc.org/journals/IJSH/vol9_no10_2015/7.pdf) |\r\n| ENERGY AWARE SECURITY ALGORITHM DECISION METHOD FOR INTERNET OF THINGS USING SSL/TLS FOR WIRELESS NETWORK | 2015 | [Link](http://granthaalayah.com/Articles/Vol3Iss12/01_IJRG15_C12_72.pdf) |\r\n| A Lightweight RFID Security Protocol Based on Elliptic Curve Cryptography | 2015 | [Link](http://ijns.jalaxy.com.tw/contents/ijns-v18-n2/ijns-2016-v18-n2-p354-361.pdf) |\r\n| DTLS-HIMMO: Efficiently Securing a Post-Quantum World with a Fully-Collusion Resistant KPS | 2015 | [Link](http://csrc.nist.gov/groups/ST/post-quantum-2015/papers/session7-garciamorchon-paper.pdf) |\r\n| Study on a Secure Wireless Data Communication in Internet of Things Applications | 2015 | [Link](http://paper.ijcsns.org/07_book/201502/20150204.pdf) |\r\n| IoT: The Internet of Threats and Static Program Analysis Defense | 2015 | [Link](https://ssrg.nicta.com.au/publications/nictaabstracts/8517.pdf) |\r\n| Event driven adaptive security in internet of things | 2014 | [Link](https://www.researchgate.net/profile/Waqas_Aman/publication/265786485_Event_Driven_Adaptive_Security_in_Internet_of_things/links/54f6ca370cf2ca5efeff3f45.pdf) |\r\n| Internet of Things: Architectural framework for eHealth security | 2014 | [Link](http://riverpublishers.com/journal/journal_articles/RP_Journal_2245-800X_133.pdf) |\r\n| Privacy and Security Issues for Healthcare System with Embedded RFID System on Internet of Things | 2014 | [Link](onlinepresent.org/proceedings/vol72_2014/27.pdf) |\r\n| An Approach for Cyber SecurityExperimentation Supporting Sensei/IoT forSmart Grid | 2014 | [Link](www.ibs.ro/~bela/Papers/isdfs2014.pdf) |\r\n| Toward an Inverse-free Lightweight Encryption Scheme for IoT | 2014 | [Link](http://caislab.kaist.ac.kr/publication/paper_files/2014/FINAL_0089_HJ.pdf) |\r\n| Broadcast Based Registration Technique for Heterogeneous Nodes in the IoT | 2014 | [Link](https://www.researchgate.net/profile/Qazi_Ashraf/publication/270106094_Broadcast_Based_Registration_Technique_for_Heterogeneous_Nodes_in_the_IoT/links/54a0c3510cf257a636021b11.pdf) |\r\n| An Evaluation Scenario for Adaptive Security in eHealth | 2014 | [Link](https://www.researchgate.net/profile/Stefan_Poslad/publication/261989906_2014_PESARO-30_60033/links/00b49536202809c046000000.pdf) |\r\n| Security requirements of IoT-based smart buildings using RESTful Web Services | 2014 | [Link](http://www1.fh-dortmund.de/de/fb/3/institutionen/ikt/pub/103020100000386719.media/386720/paper_Kando-conference-.pdf) |\r\n| A survey on providing security to the wireless sensor networks integrated with IOT | 2014 | [Link](https://www.erpublication.org/admin/vol_issue1/upload%20Image/IJETR023021.pdf) |\r\n| IOT Secure Transmission Based on Integration of IBE and PKI/CA | 2013 | [Link](http://www.sersc.org/journals/IJCA/vol6_no2/23.pdf) |\r\n| An Empirical Research on InfoSec RiskManagement in IoT-based eHealth | 2013 | [Link](https://www.researchgate.net/profile/Waqas_Aman/publication/265786582_An_Empirical_Research_on_InfoSec_Risk_Management_in_IoT-based_eHealth/links/54f6c9cb0cf21d8b8a5d90bf.pdf) |\r\n| Security and privacy challenge in data aggregation for the iot in smart cities | 2013 | [Link](https://www.researchgate.net/profile/Patrick_Guillemin/publication/260712666_Internet_of_Things_Strategic_Research_and_Innovation_Agenda/links/00b49537c99302c081000000.pdf#page=240) |\r\n| Designing a secure service manager for internet of things | 2013 | [Link](http://onlinepresent.org/proceedings/vol43_2013/35.pdf) |\r\n| Identity Authentication and Capability Based Access Control (IACAC) for the Internetof Things | 2013 | [Link](http://vbn.aau.dk/ws/files/74574200/PNM_IACAC_River.pdf) |\r\n| Security Architecture of the Internet of Things Oriented to PerceptualLayer | 2013 | [Link](http://ij3c.ncuteecs.org/volume/paperfile/2-2/IJ3C_5.pdf) |\r\n| Towards a Light Weight Internet of ThingsPlatform Architecture | 2013 | [Link](http://riverpublishers.com/journal/journal_articles/RP_Journal_2245-800X_128.pdf) |\r\n| A bi-direction authentication protocol for RFID based on the variable update in IOT | 2013 | [Link](http://onlinepresent.org/proceedings/vol17_2013/6.pdf) |\r\n| Novel Threshold Cryptography-based Group Authentication (TCGA)Scheme for the Internet of Things (IoT) | 2013 | [Link](http://vbn.aau.dk/ws/files/107848036/D_TCGA_IEEE_ANTS_2013_PNM.pdf) |\r\n| A Survey on Security Issues of M2M Communications in Cyber-Physical Systems. | 2012 | [Link](https://www.researchgate.net/profile/Dong_Chen27/publication/263285993_A_Survey_on_Security_Issues_of_M2M_Communications_in_Cyber-Physical_Systems/links/55cd810d08ae1141f6b9f0b9.pdf) |\r\n| Making Devices Trustworthy: Security and Trust Feedbackin the Internet of Things | 2012 | [Link](http://www.medien.ifi.lmu.de/iwssi2012/papers/iwssi-spmu2012-hochleitner.pdf) |\r\n| A bi-directional security authentication architecture for the internet of vehicles | 2012 | [Link](http://amis.naturalspublishing.com/files/published/mh28xl118t4u15.pdf) |\r\n| Security for Practical CoAP Applications:Issues and Solution Approaches | 2011 | [Link](https://www.researchgate.net/profile/Michael_Kirsche/publication/265973615_Security_for_Practical_CoAP_Applications_Issues_and_Solution_Approaches/links/5583f51c08ae4738295c2028.pdf) |\r\n| A Security Protocol Adaptation Layer for theIP-based Internet of Things | 2011 | [Link](https://www.iab.org/wp-content/IAB-uploads/2011/03/Hummen.pdf) |\r\n| Security in the Internet of Things | 2011 | [Link](http://www.mhutter.org/papers/Gudymenko2011SecurityInThe.pdf) |\r\n| Assessing the Security of Internet ConnectedCritical Infrastructures | 2010 | [Link](https://www.researchgate.net/profile/Neeraj_Suri/publication/267942349_Assessing_the_Security_of_Internet_Connected_Critical_Infrastructures_(The_CoMiFin_Project_Approach)/links/54bcd6600cf29e0cb04c388a.pdf) |\r\n\r\n##OWASP Resources\r\n\r\n* [Top IoT Vulnerabilities](https://www.owasp.org/index.php/Top_IoT_Vulnerabilities)\r\n* [IoT Testing Guides](https://www.owasp.org/index.php/IoT_Testing_Guides)\r\n* [Manufacturer IoT Security Guidance](https://www.owasp.org/index.php/IoT_Security_Guidance#Manufacturer_IoT_Security_Guidance)\r\n* [Developer IoT Security Guidance](https://www.owasp.org/index.php/IoT_Security_Guidance#Developer_IoT_Security_Guidance)\r\n* [Consumer IoT Security Guidance](https://www.owasp.org/index.php/IoT_Security_Guidance#Consumer_IoT_Security_Guidance)\r\n* [Priciples of IoT Security](https://www.owasp.org/index.php/Principles_of_IoT_Security)\r\n* [IoT Framework Assessment](https://www.owasp.org/index.php/IoT_Framework_Assessment)\r\n\r\n##Case Studies\r\n\r\n* [HACKING IoT: A Case Study on Baby Monitor Exposures and Vulnerabilities](https://www.rapid7.com/docs/Hacking-IoT-A-Case-Study-on-Baby-Monitor-Exposures-and-Vulnerabilities.pdf)\r\n* [Your Fridge is Full of SPAM: Proof of An IoT-driven Attack](https://www.proofpoint.com/us/threat-insight/post/Your-Fridge-is-Full-of-SPAM)\r\n* [Refrigerator Vulnerabilities - Samsung Security Hack ](https://www.pentestpartners.com/blog/hacking-defcon-23s-iot-village-samsung-fridge/)\r\n\r\n##Articles\r\n\r\n* [Vulnerable Embedded Web Interfaces Plague IoT Devices: Study](http://www.securityweek.com/vulnerable-embedded-web-interfaces-plague-iot-devices-study)\r\n* [A Hacker's-Eye View of the Internet of Things](https://recode.net/2015/04/07/a-hackers-eye-view-of-the-internet-of-things/)\r\n* [Hackers Remotely Kill a Jeep on the Highway—With Me in It](http://www.wired.com/2015/07/hackers-remotely-kill-jeep-highway/)\r\n* [How hackers attacked Ukraine's power grid: Implications for Industrial IoT security](http://www.zdnet.com/article/how-hackers-attacked-ukraines-power-grid-implications-for-industrial-iot-security/)\r\n\r\n##Firmware Analysis\r\n\r\n* [Binwalk](https://github.com/devttys0/binwalk) - Binwalk is a fast, easy to use tool for analyzing, reverse engineering, and extracting firmware images.\r\n* [Reversing Firmware Part 1](http://resources.infosecinstitute.com/reversing-firmware-part-1/)\r\n* [Embedded Devices Security and Firmware Reverse Engineering](https://media.blackhat.com/us-13/US-13-Zaddach-Workshop-on-Embedded-Devices-Security-and-Firmware-Reverse-Engineering-WP.pdf)\r\n\r\n## IoT Development Tools\r\n\r\n* [Arduino](https://www.arduino.cc/) - Arduino is an open-source electronics platform based on easy-to-use hardware and software. It's intended for anyone making interactive projects.\r\n* [Eclipse IoT Project](http://iot.eclipse.org/) - IoT needs open source to be successful. Eclipse IoT simplifies IoT development.\r\n* [Kinoma](https://origin-www.marvell.com/kinoma/) - Kinoma’s platform is optimized for connected, high-performance consumer electronics and Internet of Things (IoT) products. Build rich consumer experiences that orchestrate connected devices, their companion apps, and cloud services.\r\n* [M2M Labs MainSpring](http://www.m2mlabs.com/framework) - M2MLabs Mainspring is an open source application framework for building machine to machine (M2M) applications such as remote monitoring, fleet management or smart grid.\r\n* [Node-RED](http://nodered.org/) - Node-RED is a tool for wiring together hardware devices, APIs and online services in new and interesting ways.\r\n* [Particle](https://www.particle.io) - Particle is a prototype-to-production platform for developing an Internet of Things product.\r\n* [PlatformIO](http://platformio.org/#!/) - PlatformIO IDE is the missing integrated development environment which provides comprehensive facilities for IoT development:\r\n* [ThingBox](http://thethingbox.io/#idea) - The ThingBox is a set of software already installed and configured.\r\nThe ThingBox allows anyone to graphically create new unlimited applications interacting with connected objects from a simple web-browser.\r\n\r\n##IoT Hardware Platforms\r\n\r\n* [Arduino](https://arduino.cc) - Arduino is an open-source electronics platform based on easy-to-use hardware and software. It's intended for anyone making interactive projects.\r\n * Arduino Nano]\r\n * Arduno Pro Mini\r\n * Arduino Uno\r\n * Arduino Yún\r\n* [Arietta G25](http://www.acmesystems.it/arietta) - Arietta G25 - Low cost Linux embedded module\r\n* [BeagleBoard](http://beagleboard.org/) - Get your hands in technology's guts and control your development destiny with these credit-card sized, low-power, open-hardware computers. Experiment with Linux, Android and Ubuntu and jump-start development in five minutes with the included USB cable.\r\n* [Flutter](http://flutterwireless.com/) - Flutter is a programmable processor core for electronics projects, designed for hobbysits, students, and engineers. Flutter features a fast ARM processor, powerful long-range wireless communication, built-in battery charging, and an onboard security chip, making Flutter an ideal choice for robotics, wireless sensor networks, consumer electronics, and educational platforms.\r\n* [Imuduino](http://femto.io/products/imuduino) - The smallest Arduino Leonardo compatible clone, feature packed with USB keyboard/mouse emulation, on-board Bluetooth LE, real-time orientation and motion sensing IMU, and 10V max voltage regulator. Works with Android and iOS devices\r\n* [Intel Edison](https://www-ssl.intel.com/content/www/us/en/do-it-yourself/support/maker/edison/edison-documents-and-guides.html) - The Intel Edison is a tiny computer offered by Intel as a development system for wearable devices and Internet Of Things.\r\n* [Intel Galileo](http://www.intel.in/content/www/in/en/embedded/products/galileo/galileo-overview.html) - The Intel® Galileo Gen 2 development board is a microcontroller board based on the Intel® Quark™ SoC X1000 application processor, a 32-bit Intel® Pentium® brand system on a chip (SoC). It is the first board based on Intel® architecture designed to be hardware and software pin-compatible with shields designed for the Arduino Uno R3.\r\n* [LightBlue Bean](https://punchthrough.com/bean) - With Bean, you can program wirelessly from any of your devices. No more unscrewing screws and ungluing glue.\r\n* [MicroDuino](https://www.microduino.cc) - Microduino presents the world’s smallest series of Arduino-compatible smart modules that are small, flexible, stackable and powerful, and can be used to create a limitless amount of DIY projects.\r\n\r\n##Home Automation Software\r\n* [Eclipse SmartHome](https://eclipse.org/smarthome/) - The framework is designed to run on embedded devices, such as a Raspberry Pi, a BeagleBone Black or an Intel Edison. It requires a Java 7 compliant JVM and an OSGi (4.2+) framework, such as Eclipse Equinox.\r\n* [Home Gateway Initiative](http://www.homegatewayinitiative.org/) - The HGI Open Platform 2.0 suite captures home gateway software modularity requirements and provides remote test tools that form a cornerstone of many of the operators’ and vendors’ home gateway strategy.\r\n* [Ninja Blocks](https://ninjablocks.com/) - Ninja Sphere is both a hardware and software platform designed to seamlessly bridge your smart devices together. By connecting to products from various brands, your home can start using them in new and exciting ways.\r\n* [openHAB](http://www.openhab.org/) - a vendor and technology agnostic open source automation software for your home. Build your smart home in no time!\r\n* [PrivateEyePi](http://projects.privateeyepi.com/) - This is a Raspberry Pi projects website aimed at the Raspberry Pi enthusiast wanting to build home security/automation systems and at the same time learn programming and electronics.\r\n* [RaZberry](http://razberry.z-wave.me/) - The Razberry platform adds all the components needed to turn a Raspberry PI board into a fully operational and inexpensive Z-Wave gateway.\r\n\r\n##Middleware\r\n* [IoTSyS](https://code.google.com/archive/p/iotsys/) - IoTSyS is an integration middleware for the Internet of Things. It provides a communication stack for embedded devices based on IPv6, Web services and oBIX to provide interoperable interfaces for smart objects. Using 6LoWPAN for constrained wireless networks and the Constrained Application Protocol together with Efficient XML Interchange an efficient stack is provided allowing using interoperable Web technologies in the field of sensor and actuator networks and systems while remaining nearly as efficient regarding transmission message sizes as existing automation systems.\r\n* [Kaa](http://www.kaaproject.org/) - Kaa IoT Platform — 100% open-source Internet of Things middleware platform for everyone.\r\n* [OpenIoT](https://github.com/OpenIotOrg/openiot) - The OpenIoT middleware infrastructure will support flexible configuration and deployment of algorithms for collection, and filtering information streams stemming from the internet-connected objects, while at the same time generating and processing important business/applications events.\r\n* [OpenRemote](http://www.openremote.org/display/HOME/OpenRemote) - OpenRemote is software integration platform for residential and commercial building automation. OpenRemote platform is automation protocol agnostic, operates on off-the-shelf hardware and is freely available under an Open Source license. OpenRemote's architecture enables fully autonomous and user-independent intelligent buildings. End-user control interfaces are available for iOS and Android devices, and for devices with modern web browsers. User interface design, installation management and configuration can be handled remotely with OpenRemote cloud-based design tools.\r\n\r\n##Operating Systems\r\n* [AllJoyn](https://allseenalliance.org/opportunities/developers) - The AllJoyn framework defines a common way for devices and apps to communicate with one another regardless of brands, categories, transports, and OSes. Developers write applications that discover nearby devices, and communicate with each other directly and through the cloud, unleashing new possibilities in the Internet of Things.\r\n* [Brillo](https://developers.google.com/brillo/?hl=en) - Brillo brings the simplicity and speed of software development to hardware for IoT with an embedded OS, core services, developer kit, and developer console.\r\n* [Contiki](http://www.contiki-os.org/) - Contiki is an open source operating system for the Internet of Things. Contiki connects tiny low-cost, low-power microcontrollers to the Internet.\r\n* [JaneOS](http://janeos.io) - JanOS is an operating system designed to run on the chipset of mobile phones. It runs without a screen, and allows you to access all phone functionality, from calling to the camera, through JavaScript APIs.\r\n* [OpenWSN](https://openwsn.atlassian.net/wiki/) - The Internet of Things enables great applications, such as energy-aware homes or real-time asset tracking. With these networks gaining maturity, standardization bodies have started to work on standardizing how these networks of tiny devices communicate.\r\n* [Rasbian](https://www.raspbian.org/) - Raspbian is a free operating system based on Debian optimized for the Raspberry Pi hardware. An operating system is the set of basic programs and utilities that make your Raspberry Pi run. However, Raspbian provides more than a pure OS: it comes with over 35,000 packages, pre-compiled software bundled in a nice format for easy installation on your Raspberry Pi.\r\n* [RIOT](http://www.riot-os.org/#home) - The friendly Operating System for the Internet of Things. Make your applications ready for the smaller things in the Internet with common system support.\r\n * 6LoWPAN, IPv6, RPL, and UDP\r\n * CoAP and CBOR\r\n * Static and dynamic memory allocation\r\n * High resolution and long-term timers\r\n * Tools and utilities (System shell, SHA-256, Bloom filters, ...)\r\n* [TinyOS](https://www.tinyos.net/) - TinyOS is an open source, BSD-licensed operating system designed for low-power wireless devices, such as those used in sensor networks, ubiquitous computing, personal area networks, smart buildings, and smart meters.\r\n* [Windows 10 IoT Core OS](https://dev.windows.com/en-us/iot) - Discover the features and functionality that Windows 10 IoT Core provides. It’s ease of Windows combined with the power of IoT.\r\n* [Zephyr](https://www.zephyrproject.org/) - Zephyr Project is a small, scalable real-time operating system for use on resource-constrained systems supporting multiple architectures. Developers are able to tailor their optimal solution. As a true open source project, the community can evolve the Zephyr Project to support new hardware, developer tools, sensor and device drivers. Advancements in security, device management capabilities, connectivity stacks and file systems can be easily implemented.\r\n\r\n\r\n##IoT App Development Protocols\r\n\r\n* [Advanced Message Queuing Protocol]()\r\n* [OASIS Message Queuing Telemetry Transport]() \r\n* [Very Simple Control Protocol]()\r\n* [Constrained Application Protocol]()\r\n* [Extensible Messaging and Presence Protocol]()\r\n\r\n#Contribute\r\n\r\nIt is awesome to see that you want to contribute in this wiki, which would directly help the community. Please follow one of the ways from below to include tool/resource in this wiki-\r\n\r\n* Tweet the resource to [@IoTSecurityWiki](https://twitter.com/IoTSecurityWiki) or [@exploitprotocol](https://twitter.com/exploitprotocol)\r\n* Send an email to [aditya@manifestsecurity.com](mailto:aditya@manifestsecurity.com)\r\n\r\nPlease let me know if you have any suggestions.\r\n\r\nBelow is the list of the awesome folks who contributed to this wiki- \r\n\r\n","google":"UA-74680533-1","note":"Don't delete this file! It's used internally to help with page regeneration."} \ No newline at end of file diff --git a/stylesheets/github-dark.css b/stylesheets/github-dark.css new file mode 100644 index 0000000..0c393bf --- /dev/null +++ b/stylesheets/github-dark.css @@ -0,0 +1,116 @@ +/* + Copyright 2014 GitHub Inc. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +*/ + +.pl-c /* comment */ { + color: #969896; +} + +.pl-c1 /* constant, markup.raw, meta.diff.header, meta.module-reference, meta.property-name, support, support.constant, support.variable, variable.other.constant */, +.pl-s .pl-v /* string variable */ { + color: #0099cd; +} + +.pl-e /* entity */, +.pl-en /* entity.name */ { + color: #9774cb; +} + +.pl-s .pl-s1 /* string source */, +.pl-smi /* storage.modifier.import, storage.modifier.package, storage.type.java, variable.other, variable.parameter.function */ { + color: #ddd; +} + +.pl-ent /* entity.name.tag */ { + color: #7bcc72; +} + +.pl-k /* keyword, storage, storage.type */ { + color: #cc2372; +} + +.pl-pds /* punctuation.definition.string, string.regexp.character-class */, +.pl-s /* string */, +.pl-s .pl-pse .pl-s1 /* string punctuation.section.embedded source */, +.pl-sr /* string.regexp */, +.pl-sr .pl-cce /* string.regexp constant.character.escape */, +.pl-sr .pl-sra /* string.regexp string.regexp.arbitrary-repitition */, +.pl-sr .pl-sre /* string.regexp source.ruby.embedded */ { + color: #3c66e2; +} + +.pl-v /* variable */ { + color: #fb8764; +} + +.pl-id /* invalid.deprecated */ { + color: #e63525; +} + +.pl-ii /* invalid.illegal */ { + background-color: #e63525; + color: #f8f8f8; +} + +.pl-sr .pl-cce /* string.regexp constant.character.escape */ { + color: #7bcc72; + font-weight: bold; +} + +.pl-ml /* markup.list */ { + color: #c26b2b; +} + +.pl-mh /* markup.heading */, +.pl-mh .pl-en /* markup.heading entity.name */, +.pl-ms /* meta.separator */ { + color: #264ec5; + font-weight: bold; +} + +.pl-mq /* markup.quote */ { + color: #00acac; +} + +.pl-mi /* markup.italic */ { + color: #ddd; + font-style: italic; +} + +.pl-mb /* markup.bold */ { + color: #ddd; + font-weight: bold; +} + +.pl-md /* markup.deleted, meta.diff.header.from-file */ { + background-color: #ffecec; + color: #bd2c00; +} + +.pl-mi1 /* markup.inserted, meta.diff.header.to-file */ { + background-color: #eaffea; + color: #55a532; +} + +.pl-mdr /* meta.diff.range */ { + color: #9774cb; + font-weight: bold; +} + +.pl-mo /* meta.output */ { + color: #264ec5; +} + diff --git a/stylesheets/normalize.css b/stylesheets/normalize.css new file mode 100644 index 0000000..16a1351 --- /dev/null +++ b/stylesheets/normalize.css @@ -0,0 +1,459 @@ +/* normalize.css 2012-02-07T12:37 UTC - https://github.com/necolas/normalize.css */ +/* ============================================================================= + HTML5 display definitions + ========================================================================== */ +/* + * Corrects block display not defined in IE6/7/8/9 & FF3 + */ +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +nav, +section, +summary { + display: block; +} + +/* + * Corrects inline-block display not defined in IE6/7/8/9 & FF3 + */ +audio, +canvas, +video { + display: inline-block; + *display: inline; + *zoom: 1; +} + +/* + * Prevents modern browsers from displaying 'audio' without controls + */ +audio:not([controls]) { + display: none; +} + +/* + * Addresses styling for 'hidden' attribute not present in IE7/8/9, FF3, S4 + * Known issue: no IE6 support + */ +[hidden] { + display: none; +} + +/* ============================================================================= + Base + ========================================================================== */ +/* + * 1. Corrects text resizing oddly in IE6/7 when body font-size is set using em units + * http://clagnut.com/blog/348/#c790 + * 2. Prevents iOS text size adjust after orientation change, without disabling user zoom + * www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/ + */ +html { + font-size: 100%; + /* 1 */ + -webkit-text-size-adjust: 100%; + /* 2 */ + -ms-text-size-adjust: 100%; + /* 2 */ +} + +/* + * Addresses font-family inconsistency between 'textarea' and other form elements. + */ +html, +button, +input, +select, +textarea { + font-family: sans-serif; +} + +/* + * Addresses margins handled incorrectly in IE6/7 + */ +body { + margin: 0; +} + +/* ============================================================================= + Links + ========================================================================== */ +/* + * Addresses outline displayed oddly in Chrome + */ +a:focus { + outline: thin dotted; +} + +/* + * Improves readability when focused and also mouse hovered in all browsers + * people.opera.com/patrickl/experiments/keyboard/test + */ +a:hover, +a:active { + outline: 0; +} + +/* ============================================================================= + Typography + ========================================================================== */ +/* + * Addresses font sizes and margins set differently in IE6/7 + * Addresses font sizes within 'section' and 'article' in FF4+, Chrome, S5 + */ +h1 { + font-size: 2em; + margin: 0.67em 0; +} + +h2 { + font-size: 1.5em; + margin: 0.83em 0; +} + +h3 { + font-size: 1.17em; + margin: 1em 0; +} + +h4 { + font-size: 1em; + margin: 1.33em 0; +} + +h5 { + font-size: 0.83em; + margin: 1.67em 0; +} + +h6 { + font-size: 0.75em; + margin: 2.33em 0; +} + +/* + * Addresses styling not present in IE7/8/9, S5, Chrome + */ +abbr[title] { + border-bottom: 1px dotted; +} + +/* + * Addresses style set to 'bolder' in FF3+, S4/5, Chrome +*/ +b, +strong { + font-weight: bold; +} + +blockquote { + margin: 1em 40px; +} + +/* + * Addresses styling not present in S5, Chrome + */ +dfn { + font-style: italic; +} + +/* + * Addresses styling not present in IE6/7/8/9 + */ +mark { + background: #ff0; + color: #000; +} + +/* + * Addresses margins set differently in IE6/7 + */ +p, +pre { + margin: 1em 0; +} + +/* + * Corrects font family set oddly in IE6, S4/5, Chrome + * en.wikipedia.org/wiki/User:Davidgothberg/Test59 + */ +pre, +code, +kbd, +samp { + font-family: monospace, serif; + _font-family: 'courier new', monospace; + font-size: 1em; +} + +/* + * 1. Addresses CSS quotes not supported in IE6/7 + * 2. Addresses quote property not supported in S4 + */ +/* 1 */ +q { + quotes: none; +} + +/* 2 */ +q:before, +q:after { + content: ''; + content: none; +} + +small { + font-size: 75%; +} + +/* + * Prevents sub and sup affecting line-height in all browsers + * gist.github.com/413930 + */ +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sup { + top: -0.5em; +} + +sub { + bottom: -0.25em; +} + +/* ============================================================================= + Lists + ========================================================================== */ +/* + * Addresses margins set differently in IE6/7 + */ +dl, +menu, +ol, +ul { + margin: 1em 0; +} + +dd { + margin: 0 0 0 40px; +} + +/* + * Addresses paddings set differently in IE6/7 + */ +menu, +ol, +ul { + padding: 0 0 0 40px; +} + +/* + * Corrects list images handled incorrectly in IE7 + */ +nav ul, +nav ol { + list-style: none; + list-style-image: none; +} + +/* ============================================================================= + Embedded content + ========================================================================== */ +/* + * 1. Removes border when inside 'a' element in IE6/7/8/9, FF3 + * 2. Improves image quality when scaled in IE7 + * code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/ + */ +img { + border: 0; + /* 1 */ + -ms-interpolation-mode: bicubic; + /* 2 */ +} + +/* + * Corrects overflow displayed oddly in IE9 + */ +svg:not(:root) { + overflow: hidden; +} + +/* ============================================================================= + Figures + ========================================================================== */ +/* + * Addresses margin not present in IE6/7/8/9, S5, O11 + */ +figure { + margin: 0; +} + +/* ============================================================================= + Forms + ========================================================================== */ +/* + * Corrects margin displayed oddly in IE6/7 + */ +form { + margin: 0; +} + +/* + * Define consistent border, margin, and padding + */ +fieldset { + border: 1px solid #c0c0c0; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; +} + +/* + * 1. Corrects color not being inherited in IE6/7/8/9 + * 2. Corrects text not wrapping in FF3 + * 3. Corrects alignment displayed oddly in IE6/7 + */ +legend { + border: 0; + /* 1 */ + padding: 0; + white-space: normal; + /* 2 */ + *margin-left: -7px; + /* 3 */ +} + +/* + * 1. Corrects font size not being inherited in all browsers + * 2. Addresses margins set differently in IE6/7, FF3+, S5, Chrome + * 3. Improves appearance and consistency in all browsers + */ +button, +input, +select, +textarea { + font-size: 100%; + /* 1 */ + margin: 0; + /* 2 */ + vertical-align: baseline; + /* 3 */ + *vertical-align: middle; + /* 3 */ +} + +/* + * Addresses FF3/4 setting line-height on 'input' using !important in the UA stylesheet + */ +button, +input { + line-height: normal; + /* 1 */ +} + +/* + * 1. Improves usability and consistency of cursor style between image-type 'input' and others + * 2. Corrects inability to style clickable 'input' types in iOS + * 3. Removes inner spacing in IE7 without affecting normal text inputs + * Known issue: inner spacing remains in IE6 + */ +button, +input[type="button"], +input[type="reset"], +input[type="submit"] { + cursor: pointer; + /* 1 */ + -webkit-appearance: button; + /* 2 */ + *overflow: visible; + /* 3 */ +} + +/* + * Re-set default cursor for disabled elements + */ +button[disabled], +input[disabled] { + cursor: default; +} + +/* + * 1. Addresses box sizing set to content-box in IE8/9 + * 2. Removes excess padding in IE8/9 + * 3. Removes excess padding in IE7 + Known issue: excess padding remains in IE6 + */ +input[type="checkbox"], +input[type="radio"] { + box-sizing: border-box; + /* 1 */ + padding: 0; + /* 2 */ + *height: 13px; + /* 3 */ + *width: 13px; + /* 3 */ +} + +/* + * 1. Addresses appearance set to searchfield in S5, Chrome + * 2. Addresses box-sizing set to border-box in S5, Chrome (include -moz to future-proof) + */ +input[type="search"] { + -webkit-appearance: textfield; + /* 1 */ + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; + /* 2 */ + box-sizing: content-box; +} + +/* + * Removes inner padding and search cancel button in S5, Chrome on OS X + */ +input[type="search"]::-webkit-search-decoration, +input[type="search"]::-webkit-search-cancel-button { + -webkit-appearance: none; +} + +/* + * Removes inner padding and border in FF3+ + * www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/ + */ +button::-moz-focus-inner, +input::-moz-focus-inner { + border: 0; + padding: 0; +} + +/* + * 1. Removes default vertical scrollbar in IE6/7/8/9 + * 2. Improves readability and alignment in all browsers + */ +textarea { + overflow: auto; + /* 1 */ + vertical-align: top; + /* 2 */ +} + +/* ============================================================================= + Tables + ========================================================================== */ +/* + * Remove most spacing between table cells + */ +table { + border-collapse: collapse; + border-spacing: 0; +} diff --git a/stylesheets/styles.css b/stylesheets/styles.css new file mode 100644 index 0000000..0f8faf3 --- /dev/null +++ b/stylesheets/styles.css @@ -0,0 +1,1010 @@ +/* +Leap Day for GitHub Pages +by Matt Graham +*/ +@font-face { + font-family: 'Quattrocento Sans'; + src: url("../fonts/quattrocentosans-bold-webfont.eot"); + src: url("../fonts/quattrocentosans-bold-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/quattrocentosans-bold-webfont.woff") format("woff"), url("../fonts/quattrocentosans-bold-webfont.ttf") format("truetype"), url("../fonts/quattrocentosans-bold-webfont.svg#QuattrocentoSansBold") format("svg"); + font-weight: bold; + font-style: normal; +} + +@font-face { + font-family: 'Quattrocento Sans'; + src: url("../fonts/quattrocentosans-bolditalic-webfont.eot"); + src: url("../fonts/quattrocentosans-bolditalic-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/quattrocentosans-bolditalic-webfont.woff") format("woff"), url("../fonts/quattrocentosans-bolditalic-webfont.ttf") format("truetype"), url("../fonts/quattrocentosans-bolditalic-webfont.svg#QuattrocentoSansBoldItalic") format("svg"); + font-weight: bold; + font-style: italic; +} + +@font-face { + font-family: 'Quattrocento Sans'; + src: url("../fonts/quattrocentosans-italic-webfont.eot"); + src: url("../fonts/quattrocentosans-italic-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/quattrocentosans-italic-webfont.woff") format("woff"), url("../fonts/quattrocentosans-italic-webfont.ttf") format("truetype"), url("../fonts/quattrocentosans-italic-webfont.svg#QuattrocentoSansItalic") format("svg"); + font-weight: normal; + font-style: italic; +} + +@font-face { + font-family: 'Quattrocento Sans'; + src: url("../fonts/quattrocentosans-regular-webfont.eot"); + src: url("../fonts/quattrocentosans-regular-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/quattrocentosans-regular-webfont.woff") format("woff"), url("../fonts/quattrocentosans-regular-webfont.ttf") format("truetype"), url("../fonts/quattrocentosans-regular-webfont.svg#QuattrocentoSansRegular") format("svg"); + font-weight: normal; + font-style: normal; +} + +@font-face { + font-family: 'Copse'; + src: url("../fonts/copse-regular-webfont.eot"); + src: url("../fonts/copse-regular-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/copse-regular-webfont.woff") format("woff"), url("../fonts/copse-regular-webfont.ttf") format("truetype"), url("../fonts/copse-regular-webfont.svg#CopseRegular") format("svg"); + font-weight: normal; + font-style: normal; +} + +/* normalize.css 2012-02-07T12:37 UTC - https://github.com/necolas/normalize.css */ +/* ============================================================================= + HTML5 display definitions + ========================================================================== */ +/* + * Corrects block display not defined in IE6/7/8/9 & FF3 + */ +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +nav, +section, +summary { + display: block; +} + +/* + * Corrects inline-block display not defined in IE6/7/8/9 & FF3 + */ +audio, +canvas, +video { + display: inline-block; + *display: inline; + *zoom: 1; +} + +/* + * Prevents modern browsers from displaying 'audio' without controls + */ +audio:not([controls]) { + display: none; +} + +/* + * Addresses styling for 'hidden' attribute not present in IE7/8/9, FF3, S4 + * Known issue: no IE6 support + */ +[hidden] { + display: none; +} + +/* ============================================================================= + Base + ========================================================================== */ +/* + * 1. Corrects text resizing oddly in IE6/7 when body font-size is set using em units + * http://clagnut.com/blog/348/#c790 + * 2. Prevents iOS text size adjust after orientation change, without disabling user zoom + * www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/ + */ +html { + font-size: 100%; + /* 1 */ + -webkit-text-size-adjust: 100%; + /* 2 */ + -ms-text-size-adjust: 100%; + /* 2 */ +} + +/* + * Addresses font-family inconsistency between 'textarea' and other form elements. + */ +html, +button, +input, +select, +textarea { + font-family: sans-serif; +} + +/* + * Addresses margins handled incorrectly in IE6/7 + */ +body { + margin: 0; +} + +/* ============================================================================= + Links + ========================================================================== */ +/* + * Addresses outline displayed oddly in Chrome + */ +a:focus { + outline: thin dotted; +} + +/* + * Improves readability when focused and also mouse hovered in all browsers + * people.opera.com/patrickl/experiments/keyboard/test + */ +a:hover, +a:active { + outline: 0; +} + +/* ============================================================================= + Typography + ========================================================================== */ +/* + * Addresses font sizes and margins set differently in IE6/7 + * Addresses font sizes within 'section' and 'article' in FF4+, Chrome, S5 + */ +h1 { + font-size: 2em; + margin: 0.67em 0; +} + +h2 { + font-size: 1.5em; + margin: 0.83em 0; +} + +h3 { + font-size: 1.17em; + margin: 1em 0; +} + +h4 { + font-size: 1em; + margin: 1.33em 0; +} + +h5 { + font-size: 0.83em; + margin: 1.67em 0; +} + +h6 { + font-size: 0.75em; + margin: 2.33em 0; +} + +/* + * Addresses styling not present in IE7/8/9, S5, Chrome + */ +abbr[title] { + border-bottom: 1px dotted; +} + +/* + * Addresses style set to 'bolder' in FF3+, S4/5, Chrome +*/ +b, +strong { + font-weight: bold; +} + +blockquote { + margin: 1em 40px; +} + +/* + * Addresses styling not present in S5, Chrome + */ +dfn { + font-style: italic; +} + +/* + * Addresses styling not present in IE6/7/8/9 + */ +mark { + background: #ff0; + color: #000; +} + +/* + * Addresses margins set differently in IE6/7 + */ +p, +pre { + margin: 1em 0; +} + +/* + * Corrects font family set oddly in IE6, S4/5, Chrome + * en.wikipedia.org/wiki/User:Davidgothberg/Test59 + */ +pre, +code, +kbd, +samp { + font-family: monospace, serif; + _font-family: 'courier new', monospace; + font-size: 1em; +} + +/* + * 1. Addresses CSS quotes not supported in IE6/7 + * 2. Addresses quote property not supported in S4 + */ +/* 1 */ +q { + quotes: none; +} + +/* 2 */ +q:before, +q:after { + content: ''; + content: none; +} + +small { + font-size: 75%; +} + +/* + * Prevents sub and sup affecting line-height in all browsers + * gist.github.com/413930 + */ +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sup { + top: -0.5em; +} + +sub { + bottom: -0.25em; +} + +/* ============================================================================= + Lists + ========================================================================== */ +/* + * Addresses margins set differently in IE6/7 + */ +dl, +menu, +ol, +ul { + margin: 1em 0; +} + +dd { + margin: 0 0 0 40px; +} + +/* + * Addresses paddings set differently in IE6/7 + */ +menu, +ol, +ul { + padding: 0 0 0 40px; +} + +/* + * Corrects list images handled incorrectly in IE7 + */ +nav ul, +nav ol { + list-style: none; + list-style-image: none; +} + +/* ============================================================================= + Embedded content + ========================================================================== */ +/* + * 1. Removes border when inside 'a' element in IE6/7/8/9, FF3 + * 2. Improves image quality when scaled in IE7 + * code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/ + */ +img { + border: 0; + /* 1 */ + -ms-interpolation-mode: bicubic; + /* 2 */ +} + +/* + * Corrects overflow displayed oddly in IE9 + */ +svg:not(:root) { + overflow: hidden; +} + +/* ============================================================================= + Figures + ========================================================================== */ +/* + * Addresses margin not present in IE6/7/8/9, S5, O11 + */ +figure { + margin: 0; +} + +/* ============================================================================= + Forms + ========================================================================== */ +/* + * Corrects margin displayed oddly in IE6/7 + */ +form { + margin: 0; +} + +/* + * Define consistent border, margin, and padding + */ +fieldset { + border: 1px solid #c0c0c0; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; +} + +/* + * 1. Corrects color not being inherited in IE6/7/8/9 + * 2. Corrects text not wrapping in FF3 + * 3. Corrects alignment displayed oddly in IE6/7 + */ +legend { + border: 0; + /* 1 */ + padding: 0; + white-space: normal; + /* 2 */ + *margin-left: -7px; + /* 3 */ +} + +/* + * 1. Corrects font size not being inherited in all browsers + * 2. Addresses margins set differently in IE6/7, FF3+, S5, Chrome + * 3. Improves appearance and consistency in all browsers + */ +button, +input, +select, +textarea { + font-size: 100%; + /* 1 */ + margin: 0; + /* 2 */ + vertical-align: baseline; + /* 3 */ + *vertical-align: middle; + /* 3 */ +} + +/* + * Addresses FF3/4 setting line-height on 'input' using !important in the UA stylesheet + */ +button, +input { + line-height: normal; + /* 1 */ +} + +/* + * 1. Improves usability and consistency of cursor style between image-type 'input' and others + * 2. Corrects inability to style clickable 'input' types in iOS + * 3. Removes inner spacing in IE7 without affecting normal text inputs + * Known issue: inner spacing remains in IE6 + */ +button, +input[type="button"], +input[type="reset"], +input[type="submit"] { + cursor: pointer; + /* 1 */ + -webkit-appearance: button; + /* 2 */ + *overflow: visible; + /* 3 */ +} + +/* + * Re-set default cursor for disabled elements + */ +button[disabled], +input[disabled] { + cursor: default; +} + +/* + * 1. Addresses box sizing set to content-box in IE8/9 + * 2. Removes excess padding in IE8/9 + * 3. Removes excess padding in IE7 + Known issue: excess padding remains in IE6 + */ +input[type="checkbox"], +input[type="radio"] { + box-sizing: border-box; + /* 1 */ + padding: 0; + /* 2 */ + *height: 13px; + /* 3 */ + *width: 13px; + /* 3 */ +} + +/* + * 1. Addresses appearance set to searchfield in S5, Chrome + * 2. Addresses box-sizing set to border-box in S5, Chrome (include -moz to future-proof) + */ +input[type="search"] { + -webkit-appearance: textfield; + /* 1 */ + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; + /* 2 */ + box-sizing: content-box; +} + +/* + * Removes inner padding and search cancel button in S5, Chrome on OS X + */ +input[type="search"]::-webkit-search-decoration, +input[type="search"]::-webkit-search-cancel-button { + -webkit-appearance: none; +} + +/* + * Removes inner padding and border in FF3+ + * www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/ + */ +button::-moz-focus-inner, +input::-moz-focus-inner { + border: 0; + padding: 0; +} + +/* + * 1. Removes default vertical scrollbar in IE6/7/8/9 + * 2. Improves readability and alignment in all browsers + */ +textarea { + overflow: auto; + /* 1 */ + vertical-align: top; + /* 2 */ +} + +/* ============================================================================= + Tables + ========================================================================== */ +/* + * Remove most spacing between table cells + */ +table { + border-collapse: collapse; + border-spacing: 0; +} + +body { + font: 14px/22px "Quattrocento Sans", "Helvetica Neue", Helvetica, Arial, sans-serif; + color: #666; + font-weight: 300; + margin: 0px; + padding: 0px 0 20px 0px; + background: url(../images/body-background.png) #eae6d1; +} + +h1, h2, h3, h4, h5, h6 { + color: #333; + margin: 0 0 10px; +} + +p, ul, ol, table, pre, dl { + margin: 0 0 20px; +} + +h1, h2, h3 { + line-height: 1.1; +} + +h1 { + font-size: 28px; +} + +h2 { + font-size: 24px; + color: #393939; +} + +h3, h4, h5, h6 { + color: #666666; +} + +h3 { + font-size: 18px; + line-height: 24px; +} + +a { + color: #3399cc; + font-weight: 400; + text-decoration: none; +} + +a small { + font-size: 11px; + color: #666; + margin-top: -0.6em; + display: block; +} + +ul { + list-style-image: url("../images/bullet.png"); +} + +strong { + font-weight: bold; + color: #333; +} + +.wrapper { + width: 650px; + margin: 0 auto; + position: relative; +} + +section img { + max-width: 100%; +} + +blockquote { + border-left: 1px solid #ffcc00; + margin: 0; + padding: 0 0 0 20px; + font-style: italic; +} + +code { + font-family: "Lucida Sans", Monaco, Bitstream Vera Sans Mono, Lucida Console, Terminal; + font-size: 13px; + color: #efefef; + text-shadow: 0px 1px 0px #000; + margin: 0 4px; + padding: 2px 6px; + background: #333; + -moz-border-radius: 2px; + -webkit-border-radius: 2px; + -o-border-radius: 2px; + -ms-border-radius: 2px; + -khtml-border-radius: 2px; + border-radius: 2px; +} + +pre { + padding: 8px 15px; + background: #333333; + -moz-border-radius: 3px; + -webkit-border-radius: 3px; + -o-border-radius: 3px; + -ms-border-radius: 3px; + -khtml-border-radius: 3px; + border-radius: 3px; + border: 1px solid #c7c7c7; + overflow: auto; + overflow-y: hidden; +} +pre code { + margin: 0px; + padding: 0px; +} + +table { + width: 100%; + border-collapse: collapse; +} + +th { + text-align: left; + padding: 5px 10px; + border-bottom: 1px solid #e5e5e5; + color: #444; +} + +td { + text-align: left; + padding: 5px 10px; + border-bottom: 1px solid #e5e5e5; + border-right: 1px solid #ffcc00; +} +td:first-child { + border-left: 1px solid #ffcc00; +} + +hr { + border: 0; + outline: none; + height: 11px; + background: transparent url("../images/hr.gif") center center repeat-x; + margin: 0 0 20px; +} + +dt { + color: #444; + font-weight: 700; +} + +header { + padding: 25px 20px 40px 20px; + margin: 0; + position: fixed; + top: 0; + left: 0; + right: 0; + width: 100%; + text-align: center; + background: url(../images/background.png) #4276b6; + -moz-box-shadow: 1px 0px 2px rgba(0, 0, 0, 0.75); + -webkit-box-shadow: 1px 0px 2px rgba(0, 0, 0, 0.75); + -o-box-shadow: 1px 0px 2px rgba(0, 0, 0, 0.75); + box-shadow: 1px 0px 2px rgba(0, 0, 0, 0.75); + z-index: 99; + -webkit-font-smoothing: antialiased; + min-height: 76px; +} +header h1 { + font: 40px/48px "Copse", "Helvetica Neue", Helvetica, Arial, sans-serif; + color: #f3f3f3; + text-shadow: 0px 2px 0px #235796; + margin: 0px; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; + -ms-text-overflow: ellipsis; +} +header p { + color: #d8d8d8; + text-shadow: rgba(0, 0, 0, 0.2) 0 1px 0; + font-size: 18px; + margin: 0px; +} + +#banner { + z-index: 100; + left: 0; + right: 50%; + height: 50px; + margin-right: -382px; + position: fixed; + top: 115px; + background: #ffcc00; + border: 1px solid #f0b500; + -moz-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.25); + -webkit-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.25); + -o-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.25); + box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.25); + -moz-border-radius: 0px 2px 2px 0px; + -webkit-border-radius: 0px 2px 2px 0px; + -o-border-radius: 0px 2px 2px 0px; + -ms-border-radius: 0px 2px 2px 0px; + -khtml-border-radius: 0px 2px 2px 0px; + border-radius: 0px 2px 2px 0px; + padding-right: 10px; +} +#banner .button { + border: 1px solid #dba500; + background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffe788), color-stop(100%, #ffce38)); + background: -webkit-linear-gradient(#ffe788, #ffce38); + background: -moz-linear-gradient(#ffe788, #ffce38); + background: -o-linear-gradient(#ffe788, #ffce38); + background: -ms-linear-gradient(#ffe788, #ffce38); + background: linear-gradient(#ffe788, #ffce38); + -moz-border-radius: 2px; + -webkit-border-radius: 2px; + -o-border-radius: 2px; + -ms-border-radius: 2px; + -khtml-border-radius: 2px; + border-radius: 2px; + -moz-box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.4), 0px 1px 1px rgba(0, 0, 0, 0.1); + -webkit-box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.4), 0px 1px 1px rgba(0, 0, 0, 0.1); + -o-box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.4), 0px 1px 1px rgba(0, 0, 0, 0.1); + box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.4), 0px 1px 1px rgba(0, 0, 0, 0.1); + background-color: #FFE788; + margin-left: 5px; + padding: 10px 12px; + margin-top: 6px; + line-height: 14px; + font-size: 14px; + color: #333; + font-weight: bold; + display: inline-block; + text-align: center; +} +#banner .button:hover { + background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffe788), color-stop(100%, #ffe788)); + background: -webkit-linear-gradient(#ffe788, #ffe788); + background: -moz-linear-gradient(#ffe788, #ffe788); + background: -o-linear-gradient(#ffe788, #ffe788); + background: -ms-linear-gradient(#ffe788, #ffe788); + background: linear-gradient(#ffe788, #ffe788); + background-color: #ffeca0; +} +#banner .fork { + position: fixed; + left: 50%; + margin-left: -325px; + padding: 10px 12px; + margin-top: 6px; + line-height: 14px; + font-size: 14px; + background-color: #FFE788; +} +#banner .downloads { + float: left; + margin: 0 55px 0 0; +} +#banner .downloads span { + float: left; + line-height: 52px; + font-size: 90%; + color: #9d7f0d; + text-transform: uppercase; + text-shadow: rgba(255, 255, 255, 0.2) 0 1px 0; +} +#banner ul { + list-style: none; + height: 40px; + padding: 0; + float: left; + margin-left: 10px; +} +#banner ul li { + display: inline; +} +#banner ul li a.button { + background-color: #FFE788; +} +#banner #logo { + position: absolute; + height: 36px; + width: 36px; + right: 7px; + top: 7px; + display: block; + background: url(../images/octocat-logo.png); +} + +section { + width: 590px; + padding: 30px 30px 50px 30px; + margin: 20px 0; + margin-top: 190px; + position: relative; + background: #fbfbfb; + -moz-border-radius: 3px; + -webkit-border-radius: 3px; + -o-border-radius: 3px; + -ms-border-radius: 3px; + -khtml-border-radius: 3px; + border-radius: 3px; + border: 1px solid #cbcbcb; + -moz-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.09), inset 0px 0px 2px 2px rgba(255, 255, 255, 0.5), inset 0 0 5px 5px rgba(255, 255, 255, 0.4); + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.09), inset 0px 0px 2px 2px rgba(255, 255, 255, 0.5), inset 0 0 5px 5px rgba(255, 255, 255, 0.4); + -o-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.09), inset 0px 0px 2px 2px rgba(255, 255, 255, 0.5), inset 0 0 5px 5px rgba(255, 255, 255, 0.4); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.09), inset 0px 0px 2px 2px rgba(255, 255, 255, 0.5), inset 0 0 5px 5px rgba(255, 255, 255, 0.4); +} + +small { + font-size: 12px; +} + +nav { + width: 230px; + position: fixed; + top: 220px; + left: 50%; + margin-left: -580px; + text-align: right; +} +nav ul { + list-style: none; + list-style-image: none; + font-size: 14px; + line-height: 24px; +} +nav ul li { + padding: 5px 0px; + line-height: 16px; +} +nav ul li.tag-h1 { + font-size: 1.2em; +} +nav ul li.tag-h1 a { + font-weight: bold; + color: #333; +} +nav ul li.tag-h2 + .tag-h1 { + margin-top: 10px; +} +nav ul a { + color: #666; +} +nav ul a:hover { + color: #999; +} + +footer { + width: 180px; + position: fixed; + left: 50%; + margin-left: -530px; + bottom: 20px; + text-align: right; + line-height: 16px; +} + +@media print, screen and (max-width: 1060px) { + div.wrapper { + width: auto; + margin: 0; + } + + nav { + display: none; + } + + header, section, footer { + float: none; + } + header h1, section h1, footer h1 { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; + -ms-text-overflow: ellipsis; + } + + #banner { + width: 100%; + } + #banner .downloads { + margin-right: 50px; + } + #banner #logo { + margin-right: 15px; + } + + section { + border: 1px solid #e5e5e5; + border-width: 1px 0; + padding: 20px auto; + margin: 190px auto 20px; + max-width: 600px; + } + + footer { + text-align: center; + margin: 20px auto; + position: relative; + left: auto; + bottom: auto; + width: auto; + } +} +@media print, screen and (max-width: 720px) { + body { + word-wrap: break-word; + } + + header { + padding: 20px 20px; + margin: 0; + } + header h1 { + font-size: 32px; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; + -ms-text-overflow: ellipsis; + } + header p { + display: none; + } + + #banner { + top: 80px; + } + #banner .fork { + float: left; + display: inline-block; + margin-left: 0px; + position: fixed; + left: 20px; + } + + section { + margin-top: 130px; + margin-bottom: 0px; + width: auto; + } + + header ul, header p.view { + position: static; + } +} +@media print, screen and (max-width: 480px) { + header { + position: relative; + padding: 5px 0px; + min-height: 0px; + } + header h1 { + font-size: 24px; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; + -ms-text-overflow: ellipsis; + } + + section { + margin-top: 5px; + } + + #banner { + display: none; + } + + header ul { + display: none; + } +} +@media print { + body { + padding: 0.4in; + font-size: 12pt; + color: #444; + } +} +@media print, screen and (max-height: 680px) { + footer { + text-align: center; + margin: 20px auto; + position: relative; + left: auto; + bottom: auto; + width: auto; + } +} +@media print, screen and (max-height: 480px) { + nav { + display: none; + } + + footer { + text-align: center; + margin: 20px auto; + position: relative; + left: auto; + bottom: auto; + width: auto; + } +}