近日,昊天實驗室對先前洩露的FlexiSpy源碼進行了分析,發現FlexiSPY由於缺少有效的身份認證機制,導致其他攻擊者,同樣可通過該埠直接遠程發送控制指令……
背景介紹
官網的資訊顯示,FlexiSPY能够監控的範圍包括“所有電腦&Mac用戶的活動”,設備涵蓋“安卓、蘋果,iPad,PC和Mac”。不過小編詢問客服後瞭解到,FlexiSPY支持的windows系統包括Windows 7、Windows 8,8.1和Windows 10。並且對Windows Mobile尚無支持。
4月22日,駭客FlexiDie公佈了大量來自監控軟體廠商FlexiSPY的檔案,洩露的檔案包括源碼和一些內部檔案。
這家監控公司其實是一家總部位於泰國(一說位於香港)的小公司,官網顯示其主要的目標客戶包括希望監控員工的老闆、想要監控孩子手機的父母,還有想要監控伴侶的夫妻,第三類客戶顯然是最多的。《福布斯》今年2月曾對這類監控軟體進行過報導,報導指出,在2015年婦女援助組織對693名婦女的調查中,有29%的受訪者表示,他們的手機或電腦上曾被伴侶或者前任安裝間諜軟體或GPS定位器。
但FlexiSPY的客戶可不止官網上文宣的這些。此次遭洩密的檔案還顯示,旗下的監控軟體還出售給了土耳其、沙烏地阿拉伯和巴林政府。
FlexiSPY還與其他監控軟體廠商存在一定的聯系,FlexiSPY軟件可能還被用在了另一款由Gamma公司開發的軟件中,這家公司是英德監控公司。
根據洩露的檔案,FlexiSPY的工作人員曾協助Gamma工作人員安裝軟件“Cyclops”,這款軟件被用在Gamma自己的監控程序FinSpy上。
詳情請見:http://www.freebuf.com/news/133037.html
漏洞說明
FlexiSpy安卓版在目標手機安裝成功後會主動監聽12512埠,該埠是用戶端與服務端的通信埠,由於缺少有效的身份認證機制攻擊者可通過該埠,遠程發送控制指令。
漏洞詳情
FlexiSPY啟動時調用
啟動CoreService後,CoreService會調用startEngine()
之後FlexiSPY會開始監聽12512埠。
TcpSocketCmdServer等待TcpSocketCmd(Client)連接並調用readObject()獲取TcpSocketCmd,作為Command,調用TcpSocketCmdProcessor.processCommand(Command)流程如下:
Client
Server
該Server(com.vvt.rmtctrl.server)的Processor為RemoteControlHandler。
該Processor支持的指令如下:
漏洞證明
通過構造TcpSocketCmd並發送給TcpSocketCmdServer可遠程調用該Processor支持的指令。
1.發送短信
2.更新FlexiSPY二進位檔案
3.更新服務端URL
更新服務端URL之後,可將FlexiSPY發送給服務端的數據轉到指定的服務器上。
4.卸載FlexiSPY
其他功能不一一演示。
POC
傳送門:https://github.com/gnehsoah/FlexiSpyPOC