高清无码男男同同性,久久久久日韩AV无码一区,自拍 另类 综合 欧美小说,尤物网址在线观看

0371-63319761
您的當前位置:主頁 > 安全研究 > 安全研究 >

IoT安全測試指北

時間:2020-09-09


物聯(lián)網(wǎng)(The Internet of Things,簡稱IOT)是指通過 各種信息傳感器、射頻識別技術、全球定位系統(tǒng)、紅外感應器、激光掃描器等各種裝置與技術,實時采集任何需要監(jiān)控、 連接、互動的物體或過程,采集其聲、光、熱、電、力學、化 學、生物、位置等各種需要的信息,通過各類可能的網(wǎng)絡接入,實現(xiàn)物與物、物與人的泛在連接,實現(xiàn)對物品和過程的智能化感知、識別和管理。
 
關于IoT安全測試的方法,網(wǎng)上也有一些資料,但感覺有用的分享并不多,且雜。關于IoT要學的東西也還有很多,肯定不是本文這些內(nèi)容就能說完的,本文就個人已知的知識部分結合經(jīng)驗簡單總結一下IoT如何進行安全測試。
 
IOT體系結構
 
作為安全人員,需要對測試目標進行充分了解后才能去思考目標可能會存在的問題,也是本質(zhì)上的從信息收集開始做起。
 
首先需要清楚當前測試的目標的體系結構,此處引用前人總結過的分類。
 
執(zhí)行器:通過物理過程控制事物,如空調(diào)機組,門鎖,窗簾
網(wǎng)關:用于收集傳感器信息和控制中心
傳感器:用于檢測環(huán)境,例如光,運動,溫度,濕度,水/電量
云:Web界面或API托管用于收集數(shù)據(jù)的云端web應用和大型數(shù)據(jù)集分析。一般來說,就是用來做信息與其他方資源共享
移動(app):移動設備大多使用的,在設備上的應用程序,以實現(xiàn)手機端控制IoT環(huán)境來進行互動
 
IOT攻擊面及測試思路
 
綜合上文,筆者認為可以進行安全測試的攻擊面有如下部分:

 1  協(xié)議
 
IoT目前所用到的協(xié)議有很多種,本文列舉本人遇到的過的較為常見的幾種,包括HTTP、TLS/SSL、S7Comm-plus、websocket、MQTT
 
HTTP
 
HTTP協(xié)議大概是安全人員最熟悉的協(xié)議之一了,在IoT情景中,簡單分為兩種情況,有web應用和沒有web應用的。
 
先對有web應用的情景進行分析,常見的IoT設備有路由設備(TP-Link、D-Link等)、視頻監(jiān)控(??低暋⒏鞣NDVR等)、門禁考勤系統(tǒng)(Linear eMerge E3-Series)、智能網(wǎng)關(GPON Home Gateway)等。


 
這種其實不需要多作贅述,基本都是常規(guī)的web滲透一把梭,常見的問題有默認密碼、弱口令、越權、RCE等。
 
對沒有web應用的情景進行分析,這類設備就太多了,離生活較近的有打印機、智能烤箱和電飯煲、智能咖啡機、智能語音助手等。這一類設備大部分功能其實還是使用其他協(xié)議完成,但是總要一部分功能會需要用到HTTP協(xié)議,舉個栗子,筆者家里有個智能電烤箱,能綁定后通過某語音助手來進行命令下發(fā)(開關機和設定烤箱溫度時間等),需要掃描產(chǎn)品上方的二維碼進行綁定,類似下圖:
 

 
而二維碼其實解析出來是一段URLhttp://target.com/xx/?sid=xxx
 
經(jīng)過測試sid為烤箱編號,能夠進行遍歷修改,也可以對烤箱進行解綁操作,不過自己家用的那款利用起來比較麻煩,綁定過程需要輸入附近的WIFI密碼使烤箱聯(lián)網(wǎng),因此并未達到直接綁定操作任意其他烤箱,但可以引為思路。
 
以上其實還是偏向于web安全測試,但是也有部分IoT設備能提供特別的環(huán)境,局域網(wǎng)。比如某智能音箱,通過wireshark等軟件的抓包可以發(fā)現(xiàn)音樂點歌的功能是使用了HTTP請求的,那么這一點就存在三個可測試方案,一個是中間人攻擊,在非安全的網(wǎng)絡環(huán)境中,通過中間人的方式替換請求就能使音箱播放指定歌曲,比如無論用戶點什么歌,最后播放的都是《今天是個好日子》,可能會對用戶造成精神污染最后導致退貨和投訴,對廠商還是有一定危害和影響的;再一個就是如果某些特定操作是通過HTTP請求來進行實現(xiàn),例如智能咖啡機的咖啡制作功能(當然,大部分咖啡機都沒有使用HTTP,此處只是舉例)是通過一條HTTP請求完成,那么通過抓取數(shù)據(jù)包后進行重放攻擊,就能不斷獲取新的咖啡,一杯給領導,一杯給女神,還有一杯自己喝;最后再舉一個栗子,智能門禁系統(tǒng),如果使用HTTP協(xié)議,將用戶刷卡信息上傳到服務器中,我們在內(nèi)網(wǎng)可以通過嗅探等方式捕獲這些數(shù)據(jù),導致敏感信息泄露的問題。
 
簡單總結下這一段,對沒有web應用的設備進行安全測試,需要盡量找到設備的HTTP請求,在該請求的基礎上,嘗試中間人攻擊、重放攻擊、敏感數(shù)據(jù)獲取。(除此之外其實也可以按照web滲透的方法進行測試,權限繞過、SQL注入等,畢竟各種IoT環(huán)境實在太多,本段只是舉了三個個人認為比較通用一點的面。)
 
TLS/SSL
 
加密后的流量雖然可以被抓包工具捕獲,但是一般都無法獲取有效信息,因此針對使用了TLS協(xié)議的設備,首先需要將流量解密,關于解密方法,一種是通過該協(xié)議本身的漏洞進行解密,但這一塊本人沒有太多的研究,不進行深入,另一種是通過對設備固件進行分析,獲取解密方法,這一塊涉及逆向和二進制等方面,也無法進行過多深入。當然流量解密后,測試方法就參考上文所寫HTTP協(xié)議部分即可。
 
S7Comm-plus
 
了解的不多,但是貌似用的不少,可以參考另一篇文章《西門子S7comm-plus通信過程及重放攻擊分析》
 
Websocket
 
websocket用的最多的地方還是即時通信,通常在工業(yè)互聯(lián)網(wǎng)中用的畢竟多,比如需要實時監(jiān)控某些信息的設備。
 
一般通過抓包可以看到
 
 
測試方法并不局限,就本人測試過的而言,主要問題是沒有鑒權,很多時候直接請求接口就完事了,服 務器正常接收并執(zhí)行,這一點還是很危險的,不過使用websocket大部分還是用于實時數(shù)據(jù)傳輸,但是通過未鑒權的接口,我們除了能越權進行某些操作之外,其實還容易導致大量的敏感信息泄露。因此,對于websocket,測試接口鑒權和是否存在信息泄露。
 
MQTT
 
MQTT是一種機器對機器(M2M)的協(xié)議,它被廣泛地用于IoT 。其在1999年由IBM發(fā)明,當時是為了創(chuàng)建一個協(xié)議,用于通過衛(wèi)星連接連接石油管道的最小電池損耗和最小帶寬。因為它的耗能非常低,所以被IoT生態(tài)系統(tǒng)廣泛采用。目前幾乎所有的IoT 云平臺都支持通過MQTT 與幾種不同實現(xiàn)的IoT 智能設備發(fā)送接收數(shù)據(jù)。
 
對此協(xié)議的測試其實還是感謝上一段在某車企的工作經(jīng)歷,因為車機中會使用較多的MQTT協(xié)議,而其實MQTT在物聯(lián)網(wǎng)設備的應用場景十分之廣:
 
智能家居
溫度濕度傳感器
健身器材
血壓測量儀
位置服務
醫(yī)療設備

 
先了解一下該協(xié)議,MQTT基于TCP協(xié)議默認端口為1883,主要功能就兩個,發(fā)布(Publish)和訂閱(Subscribe)。
 
關于MQTT的攻擊面,個人覺得較為好用的是MITM、口令問題、權限問題。
 
1. MIMT
 
MQTT和HTTP一樣都非常容易受到中間人攻擊,具體思路參考上文。
 
2. 口令問題
 
此部分也分為空口令、弱口令和暴力破解。
 
網(wǎng)上很多開放MQTT的設備均為空口令,使用mqtt連接工具可以直接連上
 
 
同樣,對于安全方面的忽視,也存在不少弱口令,并且對于暴力破解沒有很好的防御方式,因此口令問題是MQTT協(xié)議非常需要注意的方面。附暴力破解腳本https://github.com/zombiesam/joffrey

3. 權限問題
 
MQTT 主題(Topic) 支持’+’, ‘#’的通配符,’+’通配一個層級,’#’通配多個層級(必須在末尾)。
也就是說如果我們的有兩個個Topic分別為CMD/123/456 CMD/789/666那么我們可以訂閱CMD/#來獲取其CMD下的全部消息。在攻擊中我們首先就可以利用其來監(jiān)聽所有不以$開頭的Topic。對于以$開頭的Topic我們可以使用$SYS/#來訂閱
(詳見:https://github.com/mqtt/mqtt.github.io/wiki/SYS-Topics)
 
如下為沒有權限控制的MQTT消息服務器,直接查看所有Topics
 

 
 2  固件
 
設備固件分析的前提是需要獲取到固件,提取固件的方法可以參考看雪大佬的文章https://bbs.pediy.com/thread-230095.htm
 
對于web出身的安全人員(也就是本人),較為實在的方法就是從官網(wǎng)尋找,或者聯(lián)系產(chǎn)品售后獲取,也可以通過軟件升級抓包得到固件下載地址。
 
如下圖,從官網(wǎng)直接搜索下載到指定版本固件。



 
在提取固件后需要對固件進行分析,但是在此之前需要先判斷固件是否被加密,通常使用binwalk先進行分析查看,此時如果出現(xiàn)如下圖,那么該固件可能為加密固件
 

 
參考如何分析和解密已加密的路由器固件進行解密

未加密的固件通常如下圖
 
 
可以通過命令
 
1 binwalk -e 固件名
2 br
 
來進行提取
 
提取后可以看到squashfs文件系統(tǒng),然后在對其源碼進行分析即可
 

 
 3  云端
 
云對于IoT也是非常重要的一個環(huán)境,畢竟只有things能連接到Internet才算是IoT。
 
在實際測試中,獲取云端地址是尤為重要的一個環(huán)節(jié),通常來說使用wireshark等抓包工具就能直接看到設備云端地址,在簡略的獲取云端地址后,首先一定是對該云服務器進行一次常規(guī)完整的滲透,這部分主要是信息收集居多;然后根據(jù)實際情況進行測試,我遇到過的場景有,在針對一次車機系統(tǒng)的測試中,后端web管理端可以直接通過一條HTTP請求對車機下發(fā)命令,如軟件升級更新、消息推送等,此時可以進行更改對應車機VIN碼或未授權漏洞的嘗試等;最后可以嘗試對固件進行分析,篩選提取一些隱藏的接口,看是否存在可利用的點。

 4  APP&C/S
 
APP和C/S客戶端也是經(jīng)常容易受到攻擊的點,不考慮上文已經(jīng)提過的攻擊面,對于APP我們可以進行脫殼分析,除了常規(guī)的APP本身的問題如重打包、組件安全問題之外,最需要關注的點應該是信息泄露部分,如一些敏感的接口地址(測試越權和有無更深一層的信息泄露)以及某些功能服務的賬號密鑰(如oss服務器的secretkey、telnet或ftp服務的賬號密碼)等。
 

 
對于C/S客戶端架構的安全測試,首先肯定是分析所用協(xié)議,常規(guī)抓包工具就能搞定,然后按照上文的根據(jù)協(xié)議的攻擊面去進行測試,除此之外,客戶端還可以測試逆向信息收集、DLL劫持等,這個測試的并不多,奉上大佬們的文章
 
CS-checklist
 
某云pc客戶端命令執(zhí)行挖掘過程
 
實戰(zhàn)介紹Windows下的PC客戶端常見漏洞挖掘
 
 5  RFID
 
生活中用到RFID的地方其實還是很多的,最常見的有門禁刷卡、地鐵公交刷卡、智能打印機刷卡打印等。
 
比較常見的利用場景有復制小區(qū)的門禁卡,修改學校水卡余額,以及修改電梯卡可刷樓層等。
 
這一類利用方式也比較簡單,淘寶買個NFC設備基本都附送操作教程,復制操作就是一個解密然后重新寫入的操作,不多贅述。修改余額和電梯樓層的操作可以參考文章
https://blog.csdn.net/TymonPaul/article/details/80425617
 
比對hex后推測出規(guī)律和需要修改的點,使用winhex等工具進行修改即可
 
 
那么除此之外,由于一次偶然的機會,我又有了一些新的思路。比如我司的智能打印機,需要先刷卡進行身份認證,然后才能打印你上傳的文檔。首先看一下正常第一次使用工卡刷卡,打印機給的反饋如下:
 
 
然后我又拿我的小區(qū)門禁卡刷了一下,想不到也可以,反饋如下
 
 
那么測試思路就很明顯了,通過比對分析,得到該打印機讀取的數(shù)據(jù)段,然后進行修改,反向推斷出其他同事的工號(當然其實可以直接借一個過來刷),然后修改成心儀女神的工號,這樣就能看到女神天天在打印啥東西..了?(所以其實并沒有太大的用處嗎)
 
當然能做的也不止于此,假設讀取的數(shù)據(jù)會進入數(shù)據(jù)庫,是不是也可能存在SQL注入的問題,畢竟參數(shù)可控,假如能知道管理員的序號,是不是能直接刷卡成為打印機管理員,諸如此類。
 
思路說了這些,你問我為什么沒有實踐一下的話,因為筆者就買了個PN532再玩,買不起PM3和更高級的讀卡器,而PN532能讀取的卡類實在太少,所以總結沒實踐的原因,窮。
 
另外,藍牙其實也算是RFID的一類,用到藍牙的地方生活中其實也有很多,耳機、音箱、共享單車等。藍牙協(xié)議是真的挺難研究學習的,但是也不妨礙提出一點小小的想法,一種是中間人攻擊,通過中間人的方式修改或截取信息,參考文章[翻譯]藍牙中間人攻擊代理工具,還有一種就是重放攻擊,可以嘗試用到共享單車的開鎖,參考文章藍牙抓包重放實例。
 
 6  硬件

硬件層面的東西,畢竟不在專門研究IoT的部門,沒有經(jīng)費研究,自己花錢肯定要被親愛的老婆大人詢問花唄的用途,只能截取一些網(wǎng)上的文章分享一下。
 
自助終端機的常見入侵方式
《基于CAN 總線操作汽車儀表盤模擬器實用指南》
獨角獸暑期訓練營| 某網(wǎng)紅打印機安全分析(上)
 
關于硬件的東西還有很多,也并不局限于此,如有其它好文希望師傅們多多推薦。
 
小結

IoT涉及面實在太過廣泛,也不是一篇文章能陳述完的,真正的實戰(zhàn)中肯定需要更多更全面的能力,本文只是提出個人的見解看法,以及總結思考后的一些經(jīng)驗,有不足之處還請指正,希望能幫助到各位。
 
參考:
http://rui0.cn/archives/975
https://blog.csdn.net/guangyinglanshan/article/details/78583926
 
原文來源:FreeBuf
 

Copyright © 2017-2024 河南中瀚安全技術有限公司 版權所有 豫ICP備18011434號-1 豫公網(wǎng)安備 41019702002746號