Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> Linux系統教程 >> Linux教程 >> 如何偽裝Linux系統 給黑客設置系統假象

如何偽裝Linux系統 給黑客設置系統假象

日期:2017/2/7 9:24:47      編輯:Linux教程

網絡上的計算機很容易被黑客利用工具或其它手段進行掃描,以尋找系統中的漏洞,然後再針對漏洞進行攻擊。

  通過偽裝Linux系統,給黑客設置系統假象,可以加大黑客對系統的分析難度,引誘他們步入歧途,從而進一步提高計算機系統的安全性。下面以Red Hat Linux為例,針對幾種黑客常用的途徑介紹一些常用的Linux系統偽裝的方法。

  針對HTTP服務

  通過分析Web服務器的類型,大致可以推測出操作系統的類型,比如,Windows使用IIS來提供HTTP服務,而Linux中最常見的是Apache。

  默認的Apache配置裡沒有任何信息保護機制,並且允許目錄浏覽。通過目錄浏覽,通常可以獲得類似“Apache/1.3.27 Server at apache.linuxforum.net Port 80”或“Apache/2.0.49 (Unix) PHP/4.3.8”的信息。

  通過修改配置文件中的ServerTokens參數,可以將Apache的相關信息隱藏起來。但是,Red Hat Linux運行的Apache是編譯好的程序,提示信息被編譯在程序裡,要隱藏這些信息需要修改Apache的源代碼,然後,重新編譯安裝程序,以實現替 換裡面的提示內容。

  以Apache 2.0.50為例,編輯ap_release.h文件,修改“#define AP_SERVER_BASEPRODUCT \"Apache\"”為“#define AP_SERVER_BASEPRODUCT \"Microsoft-IIS/5.0\"”。編輯os/unix/os.h文件,修改“#define PLATFORM \"Unix\"”為“#define PLATFORM \"Win32\"”。修改完畢後,重新編譯、安裝Apache。

  Apache安裝完成後,修改httpd.conf配置文件,將“ServerTokens Full”改為“ServerTokens Prod”;將“ServerSignature On”改為“ServerSignature Off”,然後存盤退出。重新啟動Apache後,用工具進行掃描,發現提示信息中已經顯示操作系統為Windows。

  針對FTP服務

  通過FTP服務,也可以推測操作系統的類型,比如,Windows下的FTP服務多是Serv-U,而Linux下常用vsftpd、proftpd和pureftpd等軟件。

  以proftpd為例,修改配置文件proftpd.conf,添加如下內容:

 

以下是代碼片段:
ServerIdent on \"Serv-U FTP Server v5.0 for WinSock ready...\"

 

  存盤退出後,重新啟動proftpd服務,登錄到修改了提示信息的FTP服務器進行測試:

 

以下是代碼片段:
   C:\\>ftp 192.168.0.1
  Connected to 192.168.0.1.
  220 Serv-U FTP Server v5.0 for WinSock ready...
  User (192.168.0.1:(none)):
  331 Password required for (none).
  Password:
  530 Login incorrect.
  Login failed.
  ftp > quit
  221 Goodbye

 

  這樣從表面上看,服務器就是一個運行著Serv-U的Windows了。

  針對TTL返回值

  可以用ping命令去探測一個主機,根據TTL基數可以推測操作系統的類型。對於一個沒有經過任何網關和路由的網絡,直接ping對方系統得到的TTL 值,被叫做“TTL基數”。網絡中,數據包每經過一個路由器,TTL就會減1,當TTL為0時,這個數據包就會被丟棄。

  通常情況下,Windows的TTL的基數是128,而早期的Red Hat Linux和Solaris的TTL基數是255,FreeBSD和新版本的Red Hat Linux的TTL基數是64。比如,ping一個Red Hat系統,顯示如下:

 

以下是代碼片段:
    Pinging 192.168.0.1 with 32 bytes of data:
  Reply from 192.168.0.1: bytes=32 time <10ms TTL=64
  Reply from 192.168.0.1: bytes=32 time <10ms TTL=64
  Reply from 192.168.0.1: bytes=32 time <10ms TTL=64
  Reply from 192.168.0.1: bytes=32 time <10ms TTL=64
  Ping statistics for 192.168.0.1:
  Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
  Approximate round trip times in milli-seconds:
  Minimum = 0ms, Maximum = 0ms, Average = 0ms

 用以下命令修改Red Hat Linux的TTL基數為128(本來為64):

 

 

以下是代碼片段:
# echo 128 > /proc/sys/net/ipv4/ip_default_ttl

 

  若想使設置永久生效,可以修改/etc/sysctl.conf配置文件,添加如下一行:

 

 

以下是代碼片段:
net.ipv4.ip_default_ttl = 128

 

  保存退出後,再ping 192.168.0.1,TTL基數就變為128了。

 

 

以下是代碼片段:
#iptables -I INPUT -s ! xx.xx.xx.xx -p tcp --dport 22 -j DROP

 

  針對3389端口和22端口

  有時通過掃描3389端口和22端口,也可以推測操作系統的類型。Windows下一般利用TCP協議的3389端口進行遠程控制,而Linux可能會用TCP協議的22端口,提供帶有加密傳輸的SSH服務。

  為了安全,可以利用iptables來限制22端口的SSH登錄,讓非授權的IP掃描不到TCP 22端口的存在:

 

 

以下是代碼片段:
#iptables -I INPUT -s ! xx.xx.xx.xx -p tcp --dport 22 -j DROP

 

  利用iptables,將本機的TCP 3389端口轉移到其它開有3389端口的計算機上,給Linux系統偽裝出一個提供服務的TCP 3389端口。命令如下:

 

 

以下是代碼片段:
    #echo 1 > /proc/sys/net/ipv4/ip_forward
  #iptables -t nat -I PREROUTING -p tcp --dport 3389 -j DNAT --to xx.xx.xx.xx
  #iptables -t nat -I POSTROUTING -p tcp --dport 3389 -j MASQUERADE

 

  第一條命令表示允許數據包轉發;第二條命令表示轉發TCP 3389到xx.xx.xx.xx;第三條命令表示使轉發數據包實現“雙向通路”,給數據包設置一個正確的返回通道。若想使轉發永久生效,可以把以上命令添加到/etc/rc.local文件中。

  這樣,當黑客掃描服務器所開端口的時候,就找不到22號端口,而是看到一個偽裝的3389端口,從而不能正確判斷出操作系統的類型。

  針對netcraft

  netcraft是一個很厲害的掃描引擎,它通過簡單的TCP 80,就可以知道所測服務器的操作系統、Web服務程序和服務器開機時間(Uptime)等信息。

  上面介紹的幾種方法對netcraft來說,均不奏效。針對netcraft,可利用iptables進行系統偽裝,使netcraft錯誤判斷操作系統:

 

 

以下是代碼片段:
    #iptables -t nat -I PREROUTING -s 195.92.95.0/24 -p tcp --dport 80 -j DNAT --to xx.xx.xx.xx
  #iptables -t nat -I POSTROUTING -s 195.92.95.0/24 -p tcp --dport 80 -j MASQUERADE

 

  由於通過抓包發現,netcraft的服務器不止一台,所以需要對它所在網段進行轉發欺騙處理。

  小結

  以上方法只能從某種角度上防止和阻撓黑客對系統漏洞的分析,在一定程度上可減少計算機被攻擊的可能性,但仍然是“防君子,不防小人”,僅是給大家提供一個活學活用的新思路。

Copyright © Windows教程網 All Rights Reserved