初試HackCube

由於自己對於無線電方面的信息安全的熱愛。在中秋放假之前自己按照 360無線電無線電研究院的帖子 DIY了一個hack cube。這個hack cube我只使用了其中的一部分,很多部分我都沒有DIY。主要還是不是很感興趣。包括裏面的NFC,2.Gh我都沒有,我只爲了研究1Ghz以下的頻段。

在接下來的文章中,我將會從開始電路焊的連接,程序燒寫,測試運行。

首先說一下電路的連接的問題:

雖然在原帖上已經有了電路的連接方式,但是在這裏我還是將連接方式圖全部貼了出來,這方便大家查看。

由於我在這裏之使用了CC1101的設備,其他的我都沒有DIY,我在這裏也就不多做敘述。

這裏我先附上我自己做的小設備吧,雖然很醜,但是在後面的測試中一點問題也沒有。我準備把我製作的設備放到一個的藍牙耳機充電盒子裏面。這個盒子有兩個漏在外面的usb_A,mircousb的接口。這也方便使用HID攻擊,同時也很小巧。

電路連接

在電路連接的時候我發現了兩個問題,第一就是供電問題,其次就是我買的CC1101的芯片不是帖子裏面的同一款,所以在連接的時候,接線錯誤,導致了我報廢了一塊CC1101的芯片。

首先說一下電源問題吧,在起初的調試過程中我每個模塊都是獨立供電的。arduino我使用數據線接在我的筆記本上,esp8266我鏈接上了另外一臺電腦,而CC1101模塊,我使用我的一根串口線進行供電。不要問我爲什麼使用串口線進行供電,你去查看一下CC1101的數據手冊就知道了。這裏給出的是CC1100的,但是他和CC1101的工作條件是一樣的。

算了還是貼上來吧,不能超過3.6V。起初我爲了方便我直接上了5V電壓,結構最後完工的時候一直不能出現正確的結果,我就一步步的排查,最後發現CC1101竟然沒有工作,而且發熱。我一拍腦門纔想起來。希望大家在自己製作的過程中不要出現我一樣的錯誤。我在這裏已經給大家上了一課了。當然瞭如果按照我那樣的連接方式會使得電源供電很複雜,所以我使用ESP8266作爲電源適配器,有些人會問爲什麼不使用arduino呢。那樣的話HID功能就受限制了啊。ESP8266模塊上面搭載了一塊AMS1117 3.3的穩壓設備,這恰好給CC1101供電。直接使用數據線給ESP8266供電,之後上面的穩壓管提供3.3V給CC1101,同時還可以給ARDUINO供電。這樣ARDUINO的USB口就空了出來,方便使用HID攻擊。

程序燒寫

這裏就是對arduino和esp8266進行燒寫了,按照帖子上面的方法,esp8266也是使用arduino的IDE進行燒寫。由於有專門的ESP8266的燒寫工具,我就沒有使用arduino的IDE進行燒寫了。

在這裏我會解決幾個我在燒寫過程中遇到的問題。

第一個無法在Arduino下安裝esp8266的板子。

按照網上的要求,只要在開發板管理器裏面添加上esp8266的網址就可以了,可是我在電腦上死活搜不到那個板子,最後只好放棄,找到了esp8266的燒寫工具NODEMCU

這個工具還是很方便的,不需要做過多的選擇,起初我並沒有想起來使用這款工具,我想到的是使用串口線直接寫固件,發現要RST重置,我試了好幾次才成功,回來想到使用專用的燒寫工具,沒一會就燒錄好了固件,完成只好我使用手機連接上了HACK CUBE*****的WiFi熱點,登陸192.168.5.1進入後臺,正常之後我纔給arduino燒錄程序。再給arduino燒錄程序的時候還是很方便的。

直接選擇就好了。然後打開從GitHub上down下來的源碼,編譯上傳。可能大家自己在編譯的過程中會遇到一些頭文件包含問題,大家只要安裝相應的庫文件就好了,由於平時喜歡搗鼓各種小東西,所以該有的都有,所以在這一步沒有遇到什麼問題。

在上傳的時候大家一定要選擇對應的端口啊,由於我電腦上插了兩根串口線,加上自己沒有注意,導致了我燒錄了很久也沒有成功。最後才發現自己ESP8266的串口線還插在電腦上,索性給拔了。這才把arduino程序成功燒錄進去。

如果大家經常燒錄程序的話,燒錄程序應該不會難道你。

測試運行

由於我只安裝了CC1101,所以我的目標也只是我的遙控器。玩一玩重放攻擊什麼的。HackCube的效果大家應該都知道,我的也沒什麼問題,就是有時候攔截不到,最後發現問題就是頻率必須精確一點,比如我有個遙控器是430.794mhz,我填寫了430死活沒反應,最後把頻率填寫精確之後纔能有效果。

試了一下暴力破解效果也不錯

玩了一晚上之後發現了個問題就是CC1101發射出來的頻率和我填寫的頻率不一致。我在對我的SDR校準之後重新進行了實驗還是不對,我就產生了興趣,開始研究了一下。比如說我干擾900mhz但是sdr上面顯示CC1101發射出來的頻率是899.919mhz。如果這要是在實戰過程中是會出問題的,爲了具體的找出頻率之間的關係我測試了很多組,最後發現實際頻率也就是SDR測試出來的頻率和我想發射出來的頻率之間關係,使用了高中學習的最小二乘法找到了其之間的關係。

隨着測試頻率增高,誤差也越來越大。爲了解決這個問題我索性寫了一個C語言的小程序。

這裏只能人工修正,最近正在研究hackcube裏面的代碼,尤其在CC1101那塊真的複雜。對寄存器的配置還是有點問題。希望能通過修改hack cube裏面的代碼最後可以之間發射出我們想要的頻率。這樣在實戰的時候就不要人工修正了。

最後我收集了一些CC1101的資料,裏面有arduino,51,stm32 的測試代碼,還有一些中文資料,如果大家需要的話,大家在下面留言評論,我會發出來的。

由於我拍攝的照片尺寸太大了,所以我一張也沒有上傳上來,加上最近學業緊張。沒有過多的時間花費在其他上面,我還得繼續爲我的六級英語做準備。最近買了一本《無線電安全攻防大揭祕》準備閒暇時光來翻翻,結果一直放在書架上還沒動過。

如果大家還有上面問題的話,也可以在下面留言評論。我也是個小白,但是我很希望能一起研究問題,最好能解決問題。

結束語

最後貼上網址,裏面有很多優質的帖子,大家可以到論壇裏面多交流。

https://unicorn.360.com/hackcube/

*本文原創作者:LEdge1,本文屬於FreeBuf原創獎勵計劃,未經許可禁止轉載

相關文章