供稿|于博菲
基于物聯(lián)網(wǎng)技術(shù)的搜索引擎與設(shè)備安全
供稿|于博菲
內(nèi)容導(dǎo)讀
隨著“物聯(lián)網(wǎng)”概念的出現(xiàn)和興起,越來越多的物聯(lián)網(wǎng)應(yīng)用如雨后春筍一般涌現(xiàn)。2009年,有“暗黑谷歌”之稱的Shodan搜索引擎突然闖入人們的視線。文章根據(jù)于博菲女士獨(dú)立完成的“基于物聯(lián)網(wǎng)技術(shù)的搜索引擎與設(shè)備安全防護(hù)”課題,從物聯(lián)網(wǎng)技術(shù)的角度出發(fā),主要闡述了Shodan搜索引擎與物聯(lián)網(wǎng)技術(shù)間的關(guān)系,該引擎發(fā)展過程與現(xiàn)狀,引擎運(yùn)作的關(guān)鍵技術(shù),聯(lián)網(wǎng)設(shè)備的安全,改進(jìn)思路及可行性。
在20世紀(jì)末的荷蘭,流行這樣一種放牛的方式:在牛的脖子上掛一臺(tái)BB機(jī),并且從牛出生開始就訓(xùn)練它一旦聽到BB機(jī)響,牛就自己往回走。其實(shí)從某種角度上來講,這也可以被歸并為是一種物聯(lián)網(wǎng)的方式。也就是說,物聯(lián)網(wǎng)雖然是一個(gè)比較新潮的概念,但人們對(duì)它的探索和應(yīng)用實(shí)際上很久以前就開始了。
物聯(lián)網(wǎng)到現(xiàn)在為止還是一個(gè)尚在探索開發(fā)中的領(lǐng)域。較為準(zhǔn)確的物聯(lián)網(wǎng)定義為:通過二維碼識(shí)讀設(shè)備、射頻識(shí)別(RFID) 裝置、紅外感應(yīng)器、全球定位系統(tǒng)和激光掃描器等信息傳感設(shè)備,按約定的協(xié)議,把任何物品與互聯(lián)網(wǎng)相連接,進(jìn)行信息交換和通信,以實(shí)現(xiàn)智能化識(shí)別、定位、跟蹤、監(jiān)控和管理的一種網(wǎng)絡(luò)概念。
乍一看之下總覺得這個(gè)概念難以讀懂。舉一個(gè)生活當(dāng)中每個(gè)人都能接觸到的例子,如二維碼,我們?cè)趻叨S碼的時(shí)候?qū)嶋H上就是實(shí)現(xiàn)了一次物聯(lián)網(wǎng)的應(yīng)用。二維碼存在的意義在于它能夠使設(shè)備在短時(shí)間內(nèi)獲得大量信息,而且不受氣候、光線等因素的影響。
物聯(lián)網(wǎng)已經(jīng)運(yùn)用在生活中的很多方面,如智能交通、智能家居、智能醫(yī)療等。我國也正在大力促進(jìn)物聯(lián)網(wǎng)相關(guān)產(chǎn)業(yè)的發(fā)展。
Shodan搜索引擎問世于2009,創(chuàng)建者是一名來自美國的學(xué)生,John Matherly,他花費(fèi)了近10年的時(shí)間建立了Shodan搜索引擎。在虛擬世界當(dāng)中,用戶可以通過Google或者Bing這樣的搜索引擎尋找到互聯(lián)網(wǎng)的每一個(gè)角落,但Shodan不同于它們,這個(gè)搜索引擎能夠?qū)⒂|角伸到現(xiàn)實(shí)生活當(dāng)中——用戶可以用它搜索到隔壁家的電冰箱、公司的打印機(jī),甚至是遠(yuǎn)在千里之外的粒子加速器或核電站控制設(shè)備。它搜索的對(duì)象不是與某個(gè)字段相關(guān)聯(lián)的內(nèi)容,而是各種各樣,完全不同的 IP 地址。通過這個(gè)網(wǎng)站,用戶可以找到世界上任何一個(gè)角落的聯(lián)網(wǎng)設(shè)備的地址,再根據(jù)驗(yàn)證信息即可操控該聯(lián)網(wǎng)設(shè)備或從中獲取信息。
通過研究Shodan這個(gè)搜索引擎,可以了解到物聯(lián)網(wǎng)在實(shí)際中是如何應(yīng)用的,還可以通過這種方式來粗淺地理解物聯(lián)網(wǎng)的概念和實(shí)質(zhì)。對(duì)于物聯(lián)網(wǎng)來說,這個(gè)搜索引擎具有很重要的存在意義。因?yàn)镾hodan不同于其他的物聯(lián)網(wǎng)應(yīng)用,它是真正將全球的聯(lián)網(wǎng)設(shè)備連接到了一起,而非一個(gè)局域網(wǎng)或者一個(gè)小團(tuán)體。
CNN Money的一篇文章寫道,雖然目前人們都認(rèn)為谷歌是最強(qiáng)勁的搜索引擎,但Shodan才是互聯(lián)網(wǎng)上最可怕的搜索引擎。通過使用一個(gè)將24臺(tái)電腦嵌入到世界各地的服務(wù)器構(gòu)成的網(wǎng)絡(luò),Shodan可以成功探查到地球上的各種機(jī)器,并了解到這些機(jī)器究竟能做什么。在創(chuàng)始之初,John Matherly只是購買了一臺(tái)老款Dell Vostro在他的柜櫥里運(yùn)行著Shodan搜索引擎。如今,Shodan的運(yùn)行操作已經(jīng)變得更加復(fù)雜,在圣迭戈的服務(wù)器中儲(chǔ)存了通過網(wǎng)絡(luò)獲得的12億裝置的核心信息,而每個(gè)月都會(huì)有2至4億的裝置數(shù)據(jù)得到更新,注冊(cè)用戶量也在瘋狂地增長(zhǎng)。但值得注意的是,盡管Shodan已經(jīng)十分火爆,但它仍然只由John Matherly一個(gè)人維護(hù)運(yùn)行。
這個(gè)網(wǎng)站的用戶一般都是對(duì)計(jì)算機(jī)網(wǎng)絡(luò)方面極其感興趣的人,或者是一些提供網(wǎng)絡(luò)安全咨詢等相關(guān)行業(yè)的自由職業(yè)者。那么這個(gè)網(wǎng)站和普通人的關(guān)系在哪里?要知道盡管不精通計(jì)算機(jī)的人不會(huì)使用這個(gè)網(wǎng)站去攻擊別人,但這不代表不會(huì)有黑客來攻擊普通人家中的設(shè)備——尤其是那些完全沒有防護(hù)的設(shè)備,所以說,即使是普通用戶也有必要對(duì)這種搜索方式進(jìn)行一定的了解。
為了盈利和安全保護(hù),John Matherly對(duì)搜索數(shù)量進(jìn)行了限制,比如沒有賬戶的用戶最多提供10個(gè)搜索結(jié)果,而有賬戶的用戶則可以享受50個(gè)搜索結(jié)果。如果用戶想要Shodan提供的所有信息,那John Matherly會(huì)就搜索的內(nèi)容,要求用戶提供更多的信息且付費(fèi),約每個(gè)月19美元。
容易發(fā)現(xiàn),通過Shodan這個(gè)搜索引擎,一旦注冊(cè)了一個(gè)賬號(hào),不論身處世界上的任意一個(gè)角落,都可以非常簡(jiǎn)單地定位一些機(jī)密設(shè)備。Shodan網(wǎng)站的研究者在測(cè)試時(shí)就曾經(jīng)用這個(gè)網(wǎng)站成功定位到了核電站的指揮和控制系統(tǒng)及一個(gè)粒子回旋加速器??梢院苊黠@地看出,這個(gè)發(fā)現(xiàn)結(jié)果在一定程度上對(duì)整個(gè)國家的安全造成了威脅??梢哉f從這個(gè)角度上來看,Shodan網(wǎng)站如果不被有效地管理和限制,將會(huì)引發(fā)極大的安全隱患。
在寫這篇論文之前,本文作者曾以用戶的身份登錄到Shodan網(wǎng)站進(jìn)行了一系列操作。在查看網(wǎng)上教程之前,完全不知道該網(wǎng)站的使用方式——最重要的是這個(gè)網(wǎng)站和Google的搜索方式有所不同,它主要是通過以下這幾個(gè)關(guān)鍵詞來篩選設(shè)備的:country(國家地區(qū))、hostname(特定域名或者主機(jī)名)、net(IP地址)、os(系統(tǒng))、port(端口),而不是像想象的那樣輸入關(guān)鍵詞“china wifi”就可以搜到一系列在中國的路由器地址。嘗試搜索“default password”可以得到搜索結(jié)果,而輸入“china wifi”則無法找到任何信息。
Shodan搜索最主要的技術(shù)就是IP地址的查詢和利用。該引擎的搜索技術(shù)本身并不深?yuàn)W,但其最值得關(guān)注的創(chuàng)新點(diǎn)在于和物聯(lián)網(wǎng)概念的結(jié)合。因而本課題確定研究的目標(biāo)為:基于IP地址查找設(shè)備,實(shí)現(xiàn)物聯(lián)網(wǎng)概念;利用Shodan搜索技術(shù)幫助跟蹤罪犯的行蹤、定位;防止利用IP地址非法鏈接到設(shè)備或防止非法入侵設(shè)備。以下內(nèi)容有助于讀者了解有關(guān)于IP地址的搜索技術(shù)以及針對(duì)現(xiàn)有網(wǎng)站功能的提高和保護(hù)。
什么是IP
在正式定義之前,我們不妨做一個(gè)實(shí)驗(yàn)來形象地了解IP地址。打開電腦cmd(運(yùn)行命令行),輸入“ping www.google.com”即查找google的IP,如圖1。
圖1 運(yùn)行命令“ping www.google.com”的顯示結(jié)果
輸入ipconfig,就是在查找本機(jī)有關(guān)于IP地址的一系列信息,如圖2所示。最長(zhǎng)的就是MAC地址,“IPv4”為IP地址,子網(wǎng)掩碼是為了尋找相近的設(shè)備,默認(rèn)網(wǎng)關(guān)是連接的路由器地址。
IP的規(guī)范定義:IP(Internet Protocol,網(wǎng)絡(luò)之間互連的協(xié)議)就是為計(jì)算機(jī)網(wǎng)絡(luò)相互連接進(jìn)行通信而設(shè)計(jì)的協(xié)議。只有通過IP地址,用戶才能實(shí)現(xiàn)和互聯(lián)網(wǎng)的鏈接。
圖2 運(yùn)行命令“ipconfig”的顯示結(jié)果
網(wǎng)絡(luò)的概念往往比較抽象而不容易理解,我們不如打一個(gè)形象的比喻來介紹有關(guān)于IP的相關(guān)概念。如果將整個(gè)互聯(lián)網(wǎng)比作一個(gè)大賓館,那么每臺(tái)計(jì)算機(jī)就是住在這個(gè)賓館里的住戶,IP就像是每個(gè)房間的門牌號(hào),常見的IP地址,比如192.168.10.2,這就是一個(gè)典型的IP地址。但是對(duì)于大多數(shù)普通用戶來說這個(gè)門牌號(hào)是不一定的,因?yàn)槊恳粋€(gè)固定門牌號(hào)的價(jià)格都在100美元,價(jià)格比較昂貴。那么是誰給了我們IP地址?答案是運(yùn)營(yíng)商。比如聯(lián)通,它有足夠的資金來購買很多IP地址,我們作為聯(lián)通的用戶,提供資金來租借IP地址,但是每次聯(lián)通分配給我們的IP地址是不一定的,這個(gè)就像隨機(jī)分配賓館房間一樣。所以普通人一般是無法找到對(duì)方準(zhǔn)確的IP地址的。作為一些大公司,比如百度就可以比作大客戶,他也有足夠的資金來購買很多IP地址,也就是有一層房間都固定是他的,當(dāng)來自全世界的若干用戶訪問的時(shí)候,我們只是找到了百度所在的那個(gè)樓層,之后具體訪問到了哪個(gè)房間并不由我們決定。比較小的網(wǎng)站則簡(jiǎn)單一些,一般有一兩個(gè)長(zhǎng)期固定租用的IP地址。
除了IP地址之外,還有一個(gè)非常重要的概念叫做MAC(Media Access Control)地址。如果說IP是門牌號(hào),那么MAC就是身份證,不論IP地址怎樣改變,MAC地址是不會(huì)發(fā)生變化的。這也是查找網(wǎng)絡(luò)犯罪罪犯的有效方法。
由本機(jī)的IP地址發(fā)送請(qǐng)求之后,有兩種方法可以使用戶接收到數(shù)據(jù),即TCP和UDP。TCP (Transmission Control Protocol,傳輸控制協(xié)議),是指發(fā)送數(shù)據(jù)的雙方建立一對(duì)一的連接來傳送數(shù)據(jù)的方式。這個(gè)過程一般分為三個(gè)步驟,形象地描述這個(gè)過程如下:
主機(jī)A向主機(jī)B發(fā)出連接請(qǐng)求數(shù)據(jù)包:“我想給你發(fā)送數(shù)據(jù),可以嗎?”這是第一次對(duì)話;
主機(jī)B向主機(jī)A發(fā)送同意連接和要求同步(同步就是兩臺(tái)主機(jī)一個(gè)在發(fā)送,一個(gè)在接收,協(xié)調(diào)工作)的數(shù)據(jù)包:“可以,你什么時(shí)候發(fā)送?”這是第二次對(duì)話;
主機(jī)A再發(fā)出一個(gè)數(shù)據(jù)包確認(rèn)主機(jī)B的要求同步:“我現(xiàn)在就發(fā)送,你接收吧!”這是第三次對(duì)話。三次“對(duì)話”的目的是使數(shù)據(jù)包的發(fā)送和接收同步,經(jīng)過三次“對(duì)話”之后,主機(jī)A才向主機(jī)B正式發(fā)送數(shù)據(jù)。
而UDP(User Data Protocol,用戶數(shù)據(jù)報(bào)協(xié)議)則與TCP不同,它并不與對(duì)方建立聯(lián)系,而是直接發(fā)送數(shù)據(jù)包,如果不是發(fā)送給這臺(tái)計(jì)算機(jī)的,會(huì)立刻被刪除。
相比來說TCP要比UDP更加穩(wěn)定可靠,但是由于UDP省略了建立連接的過程,反而會(huì)具有更快的速度。
如何查找IP
查找IP地址運(yùn)用到了WHOIS協(xié)議(讀作“Who is”,查詢域名的IP以及所有者等信息的傳輸協(xié)議)。其基本內(nèi)容是,先向服務(wù)器的TCP端口建立一個(gè)連接,發(fā)送查詢關(guān)鍵字并加上回車換行,然后接收服務(wù)器的查詢結(jié)果。
世界上各級(jí)Internet管理機(jī)構(gòu)秉承公開、公正、共享的原則,設(shè)立了可以查知IP地址和域名所有者登記資料的WHOIS服務(wù)器,以便所有Internet的使用者排除故障、打擊網(wǎng)上非法活動(dòng)。全世界國際區(qū)域性的IP地址管理機(jī)構(gòu)有四個(gè):ARIN、RIPE、APNIC、LACNIC,他們分別負(fù)責(zé)不同的IP地址地理區(qū)域。
圖3中大概展示了本機(jī)查找某個(gè)IP的WHOIS信息。域名的查詢主要是基于RFC 954提供的WHOIS協(xié)議。在上述過程中,用戶實(shí)際上是訪問了InterNIC站點(diǎn)的WHOIS服務(wù)器,服務(wù)器再從WHOIS數(shù)據(jù)庫中查詢用戶所需要的內(nèi)容。
圖3 IP地址查詢遍歷圖
Shodan網(wǎng)站的安全問題主要可以由用戶本身進(jìn)行較為安全的防護(hù),即斷開不需要聯(lián)網(wǎng)的設(shè)備如打印機(jī)等,再將聯(lián)網(wǎng)設(shè)備的用戶名密碼進(jìn)行更改,即可在很大程度上防止黑客的入侵。
對(duì)于Shodan存在的另一個(gè)問題,如果應(yīng)用了MAC碼或許就能解決。因?yàn)镸AC碼可以惟一地確定一臺(tái)設(shè)備,而且可以辨別出該設(shè)備的類型。在讀取類型之后,一些機(jī)密設(shè)施,如核電站等就可以被略去,以免發(fā)生意外。但是從某種角度來說,這種暴露MAC碼的方式本身就很不安全,就好像有一個(gè)網(wǎng)站,可以根據(jù)“王強(qiáng)”這個(gè)名字搜索到所有叫這個(gè)名字的公民的身份證號(hào)碼一樣,或許我們只能嘗試暴露出一部分MAC碼的方法來保證用戶安全。這個(gè)問題如何解決還尚在摸索之中。
通過研究Shodan搜索引擎,可以輕松地了解到物聯(lián)網(wǎng)的實(shí)質(zhì)。經(jīng)過一系列的介紹和比對(duì),Shodan搜索在安全和操控方面還有很多可以發(fā)展的空間。隨著物聯(lián)網(wǎng)產(chǎn)業(yè)在全球的發(fā)展,在更好地改善以貼合普通非專業(yè)用戶使用習(xí)慣之后,Shodan搜索將會(huì)被越來越多的人熟知和應(yīng)用,物聯(lián)網(wǎng)的時(shí)代也將如期而至。
[1] 李瑋.“暗世界”搜索Shodan:能搜核電站控制系統(tǒng).http://tech. sina.com.cn/ i/csj/2013-04-10/09368225606.shtml,2013-4-10.
[2] 二十一世紀(jì)商業(yè)評(píng)論.黑暗系“谷歌” Shodan另一種方式的搜索. http://www.chinaz.com/news/2013/0730/311534.shtml,2013-7-30.
[3] 中國信息產(chǎn)業(yè)網(wǎng). 基于物聯(lián)網(wǎng)的搜索引擎產(chǎn)業(yè)如何發(fā)展.http:// www.d1net.com/ iot/market/227570.html.2013-7-23.
Search Engine Safety and Equipment Protection Security Based on Internet of Things Technology
/ YU Bo-fei
10.3969/j.issn.1000–6826.2015.01.13
于博菲(1993—),女,就讀于北京郵電大學(xué)國際學(xué)院物聯(lián)網(wǎng)工程專業(yè),主要研究智能化識(shí)別、定位、跟蹤、監(jiān)控和管理的一種網(wǎng)絡(luò)。E-mail: ybf@bupt.edu.cn
北京郵電大學(xué)國際學(xué)院 ,北京 102209