白话物联网安全(二):物联网的安全检测

第一章《什么是物联网的信息安全》,我们讲了什么物联网,包含了哪几方面的东西,物联网的信息安全会涉及到什么,第二章我们从一个IOT漏洞自动化利用工具AutoSploit讲起,讲到我们该如何检测我们常见的物联网存在的安全问题。

我们这次说安全检测,从业务层先开始,然后降到感知层,然后提到网络层的授权和安全策略,所以先介绍下工具AutoSploit,AutoSploit基于 Python2.7的脚本,使用 Shodan.io API 自动收集目标,Metasploit模块有助于实施远程代码执行,并获得逆向 TCP/Shells 或者Metasploit 对话(官方介绍,实际上用Shodan的API免费的只有那几页)。

GitHub地址:https://github.com/NullArray/AutoSploit

我们先安装一下,搞一个测试:

安装环境:kail2.0、Python 2.7

安装步骤:

1:下载文件 git clone https://github.com/NullArray/AutoSploit.git

2:执行install.sh 安装

3:因为AutoSploit安装需要python的库文件支持,该文件已经写好了,在目录下的requirentx.txt文件,直接pip安装即可。

4:安装完了我们直接执行 python autosploit.py。

5:开始做选择题,一般直接选第一个。

6:选择收集主机,选择自己需要的关键词。

7:然后收集一会,选择6,利用MSF模块进行收集信息。

上面就是这个工具安装和使用方法,为什么我们要把这个工具AutoSploit单独拉出来说,是因为他把常见的IOT的漏洞从MSF中拉了出来,提供了285常见的容易利用的插件,咱们来说说IOT的安全检测,最基础要检查什么东西。

AutoSploit的285个MSF插件包括259个exp,26个辅助插件,其中259个exp包括了61个windows插件,61个Linux插件,96个multi插件,37个unix插件,4个其他类型插件。从分类上来讲,主要集中在业务系统产生漏洞(中间件,应用本身,数据库),主要产生在http/https协议上。

那么我们整理清楚了,对业务层来说,容易利用并且能构成重大危害的安全问题,又回归到我们常说的业务系统安全问题(主要依据2017年CNVD收录IOT设备漏洞权限绕过、拒绝服务、信息泄露、跨站、命令执行、缓冲区溢出、SQL注入、弱口令、设计缺陷等漏洞),对这一层次来说,扫描器,监控预警等等利用测试方法解决常见的直接利用的安全问题的方法都已经很成熟了,商用扫描器,开源扫描器一般都能检查测试,同理可推,我们作为安全运维的大致内容如下,我找了张思维导图:

那么对于物联网来说,仅仅检测了业务层的东西是远远不够的,那么我们还要对网络层和感知层进行安全检测,这时候就不得提及一下物联网的安全架构,宏观角度(涉及范围广,涵盖全部物联网体系)上来说,分为了四个大块:

  • 认证 (Authentication):提供验证物联网实体的标识信息并用于验证。
  • 授权 (Authorization):控制设备在整个网络结构中的访问授权。
  • 强制性的安全策略 (Network Enforced Policy):包括在基础架构上安全地route并传输端点流量的所有元素,无论是控制层面、管理层面还是实际数据流量中的,再次基础上运用合适的安全策略。
  • 安全分析:可见性与可控性 (Secure Analytics: Visibility and Control):安全分析层确定了所有元素(端点和网络基础设施,包括数据中心)可能参与的服务,提供遥感勘测,实现可见性并最终控制物联网生态系统。

我们现在是从外向里看,现阶段在应用层解决的问题,其实是属于在微观角度上解决了IOT在业务层部分安全分析的事情,现在要说清楚感知层和网络层安全检测,首先要做的,就是检测认证,因为物联网的末端设备认证更多依靠射频识别(RFID)、共享密钥、X.509证书、端点的MAC地址或某种类型的基于不可变硬件的可信root,加上极少数的人为认证(如用户名、密码、令牌或生物特征),我们在做检测的时候,先确定末端设备的身份信息是否在单一授权的情况下可以进行访问,是否开放身份信息,身份信息是否可以伪造,身份信息是否足够强壮。 感知层除了单一设备认证面临的问题,感知层还有一个很头疼的特点:数量巨大,并且普遍存在移动性。这就导致了一个大问题,资产梳理(资产追踪和管理)成为了卡在对感知层安全检测的第一道门槛。

那我们做一个简单的设计,根据物联网接入设备的要求,先梳理资产(公网的直接找指纹用AutoSploit去跑),在对资产进行管理。

那么IOT感知层的如何整理资产和检测,我们用一个简单的流程图完成了思路,核心的IOT漏洞的规则库,海康威视IP摄像机权限绕过CVE2017-7921,CVE-2017-7923为例,代码文件如下:

  1. if (description) 
  2.   script_oid("1.3.6.1.4.1.25623.1.0.140373"); 
  3.   script_version("$Revision: 7182 $"); 
  4.   script_tag(name: "last_modification", value: "$Date: 2017-09-19 07:44:15 +0200 (Tue, 19 Sep 2017) $"); 
  5.   script_tag(name: "creation_date", value: "2017-09-18 11:41:11 +0700 (Mon, 18 Sep 2017)"); 
  6.   script_tag(name: "cvss_base", value: "7.5"); 
  7.   script_tag(name: "cvss_base_vector", value: "AV:N/AC:L/Au:N/C:P/I:P/A:P"); 
  8.  
  9.   script_cve_id("CVE-2017-7921", "CVE-2017-7923"); 
  10.  
  11.   script_tag(name: "qod_type", value: "exploit"); 
  12.  
  13.   script_tag(name: "solution_type", value: "VendorFix"); 
  14.  
  15.   script_name("Hikvision IP Cameras Multiple Vulnerabilities"); 
  16.  
  17.   script_category(ACT_GATHER_INFO); 
  18.  
  19.   script_copyright("This script is Copyright (C) 2017 Greenbone Networks GmbH"); 
  20.   script_family("Web application abuses"); 
  21.   script_dependencies("gb_get_http_banner.nasl"); 
  22.   script_mandatory_keys("App-webs/banner"); 
  23.   script_require_ports("Services/www", 443); 
  24.  
  25.   script_tag(name: "summary", value: "Multiple Hikvision IP cameras are prone to multiple vulnerabilities."); 
  26.  
  27.   script_tag(name: "vuldetect", value: "Sends a crafted HTTP GET request and checks the response."); 
  28.  
  29.   script_tag(name: "insight", value: "Multiple Hikvision IP cameras are prone to multiple vulnerabilities: 
  30.  
  31. - Improper authentication vulnerability (CVE-2017-7921) 
  32.  
  33. - Password in configuration file (CVE-2017-7923)"); 
  34.  
  35.   script_tag(name: "impact", value: "Successful exploitation of these vulnerabilities could lead to a malicious 
  36. attacker escalating his or her privileges or assuming the identity of an authenticated user and obtaining 
  37. sensitive data."); 
  38.  
  39.   script_tag(name: "affected", value: "Hikvision reports that the following cameras and versions are affected: 
  40.  
  41. - DS-2CD2xx2F-I Series: V5.2.0 build 140721 to V5.4.0 build 160530 
  42.  
  43. - DS-2CD2xx0F-I Series: V5.2.0 build 140721 to V5.4.0 Build 160401 
  44.  
  45. - DS-2CD2xx2FWD Series: V5.3.1 build 150410 to V5.4.4 Build 161125 
  46.  
  47. - DS-2CD4x2xFWD Series: V5.2.0 build 140721 to V5.4.0 Build 160414 
  48.  
  49. - DS-2CD4xx5 Series: V5.2.0 build 140721 to V5.4.0 Build 160421 
  50.  
  51. - DS-2DFx Series: V5.2.0 build 140805 to V5.4.5 Build 160928 
  52.  
  53. - DS-2CD63xx Series: V5.0.9 build 140305 to V5.3.5 Build 160106"); 
  54.  
  55.   script_tag(name: "solution", value: "See the referenced advisory for a solution."); 
  56.  
  57.   script_xref(name: "URL", value: "https://ics-cert.us-cert.gov/advisories/ICSA-17-124-01"); 
  58.   script_xref(name: "URL", value: "http://www.hikvision.com/us/about_10807.html"); 
  59.   script_xref(name: "URL", value: "http://seclists.org/fulldisclosure/2017/Sep/23"); 
  60.  
  61.   exit(0); 
  62.  
  63. include("http_func.inc"); 
  64. include("http_keepalive.inc"); 
  65.  
  66. port = get_http_port(default: 443); 
  67.  
  68. url = '/Security/users?auth=YWRtaW46MTEK'
  69.  
  70. if (http_vuln_check(port: port, url: url, pattern: "<UserList version", check_header: TRUE, 
  71.                     extra_check: "<userName>")) { 
  72.   report = "It was possible to obtain a list of device users at: " + 
  73.            report_vuln_url(port: port, url: url, url_only: TRUE); 
  74.   security_message(port: port, data: report); 
  75.   exit(0); 
  76.  
  77. exit(99); 

一个简单的漏洞检测的规则文件就这样成型了。

那么继续进行检测,接下来检测网络层,网络层在安全设计里面牵扯到授权和强制性的安全策略,也就是我们在网络层的面临的核心安全问题是没有一个授权标准,没有通用的通信协议,安不安全就靠厂商的良心了。

网络层我们要检测的主要是网络设备本身的安全性,传输过程中的信任链及安全策略。

网络设备本身安全性这个现阶段扫描器很多,买一个或者网上找一个破解版的扫描器都能够满足需求。

传输过程中的信任链及安全策略只能一条一条去查了,没有好的工具,不同级别和层次的要求不同,这里就一一列举了。

现阶段市面上我暂时没找到针对IoT设备的自动化安全测试工具(成熟的各种功能都有的扫描器)结合我对检测的理解写了白话物联网第二篇文章,白话三我们谈谈基于现状,我们怎么构架我们的物联网防御体系。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/122811.html<

(0)
运维的头像运维
上一篇2025-02-22 12:40
下一篇 2025-02-22 12:41

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注