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

你所不知道的滲透測試:應用虛擬化的攻防

  Web滲透測試大家都耳熟能詳,但是針對應用虛擬化的滲透測試或許大家比較少接觸,而且網上也沒有相關的資料。作為前沿攻防團隊,本期技術專題將結合過往的項目經驗,針對應用虛擬化技術給大家介紹一下相關的攻防技術。

  首先介紹一下什么是應用虛擬化,其實應用虛擬化是指應用/服務器計算A/S架構,采用類似虛擬終端的技術,把應用程序的人機交互邏輯(應用程序界面、鍵盤及鼠標的操作等)與計算邏輯隔離開來,服務器端為用戶開設獨立的會話空間,應用程序的計算邏輯在這個會話空間中運行,把變化后的人機交互邏輯傳送給客戶端,并且在客戶端相應設備展示出來,通俗的說法為“瘦終端”。

  目前,主流的廠家有Ctrix,VMWare等,下圖為Ctrix的應用虛擬化樣例:

  通過這種應用虛擬化技術,對于企業來說,能夠提高員工辦公的效率,增加效益,對于辦公人員來說,則可以在實現隨時隨地的辦公,提高了便捷型,可謂是雙方得益,然而越便捷的東西,就意味著他的脆弱性越高,而且在部署這類型應用虛擬化的產品時,大部分的工程人員并無安全經驗,很多細節的安全問題并未得到重視,TRT在項目過程中遇到的這類型系統基本都是輕而易舉的入侵成功。

  攻防是一個持續過程,在滲透測試的過程中,我們必須知己知彼才能百戰百勝,了解應用系統是很關鍵的,所以我們還是得簡單介紹一下應用虛擬化的工作模式,以Ctrix的XenApp作為例子:

  客戶端通過訪問CtrixWeb Interface 并選擇所需要打開的應用,如下圖,那么Ctrix Web Interface就會調用數據中心的應用服務器打開該應用,同時通過特殊的協議,如Citrix ICA,將應用服務器所打開的應用映射到用戶的客戶端。應用的所有操作均在數據中心完成,用戶即使不安裝該應用也能使用該應用。

  那么問題來了,既然打開的應用是在數據中心,那就意味著,使用者是直接操作數據中心的服務器,如果應用的訪問控制沒有做好,那么就意味著,攻擊者能夠利用訪問控制的缺失訪問非授權的資源,甚至直接控制服務器。

  一般情況下,管理員在部署應用虛擬化時都會禁止用戶直接調用CMD、任務管理器、組策略、控制面板、注冊表、瀏覽C盤目錄、寫入文件等,但總會有一些疏忽之處,TRT團隊總結出了不少逃逸的技巧,挑選幾項給大家分享一下:

  調用BAT、VBS執行代碼

  場景1:如果通過管理員禁止調用任務管理器、注冊表、組策略等,同時也禁止了用戶瀏覽C盤目錄,限制了用戶執行cmd.exe的權限,無法通過調用CMD執行命令。

  突破方式:

  一般情況下,管理員禁止了用戶瀏覽C盤目錄,但禁止不了用戶正常瀏覽用戶桌面(在windows 2008系統C:USER登錄用戶名的文件夾下,也同樣可以正常瀏覽),攻擊者只需要調出瀏覽用戶桌面即可,如IE,Word都具備打開本地文件的功能,以IE為例,可以使用IE的“查看下載”—>“選項”—>“瀏覽”,打開資源管理器:

  1、盡管多個地方做了瀏覽及寫入限制,但在默認情況下,如WINDWOS 2008系統的C:USER登錄用戶名的文件夾或桌面文件夾是具備訪問和寫入權限的,我們可以通過寫入VBS、BAT命令遠程執行代碼,然后將執行的結果輸出到C:USER登錄用戶名的文件夾下,成功執行遠程代碼。

  2、調用宏命令執行代碼:

  場景2:在場景1的前提下,如果管理員禁止了目錄的執行權限,導致C:USER登錄用戶名的文件夾的目錄無法執行命令時。

  突破方式:

  由于用戶進行了執行的限制,那我們可以利用“應用”為我們執行命令。利用上述的方式打開資源管理器,通過Ctrix的遠程掛載客戶端硬盤的功能,在本地的磁盤打開一個新建的Excel,新建一個宏,利用宏命令的shell()函數(該函數能夠通過宏直接調用cmd命令),如下圖

  Shell “cmd  /c ipconfig >> c:Userxxx文件名.txt”

  如果存在word、Microsoft Access、PowerPoint應用的話,同樣也通過新建一個宏,利用宏命令的shell()函數(該函數能夠通過宏直接調用cmd命令),如下圖

  Word:

  Access:

  Powerpoint:

  使用X-shell執行系統代碼

  場景3:在場景1的前提下,如果管理員禁止了目錄的執行權限,導致C:USER登錄用戶名的文件夾的目錄無法執行命令時。

  突破方式:

  瀏覽云主機的文件夾時,曾發現部分管理員會為了方便管理,安裝X-SHELL,這時就可以用利用X-SHELL執行系統命令。

  默認情況下,X-SHELL能夠執行的系統命令特別有限:

  直接運行一些系統命令時,提示command not found

  但是可以通過類似管道符的方式,如ipconfig | net user形式執行系統命令:

  通過以上方式,可以達到執行系統命令的效果。

  開發者模式執行代碼

  場景4:在場景1和場景2的前提下,如果用戶只發布了IE,也對C盤目錄做了限制,甚至猥瑣到你禁止跳轉到任何目錄上,但依然有辦法突破。

  突破方式:

  由于打開的是當前目標服務器的IE,可以通過IE的開發者工具的調試功能,通過Javascript調用命令行的方式打開目標服務器的命令行,執行命令。下圖為通過IE打開命令行的方法截圖:

  上述是我們在不同項目過程中,發現的部分應用虛擬化所存在的安全問題,有攻才有防,在攻防的過程中,我們更重視防御的方法,針對部署應用虛擬化我們建議除了做禁止用戶直接調用CMD、任務管理器、組策略、控制面板、注冊表、瀏覽C盤目錄及寫入文件、目錄的執行權限等之外,還需要做以下的防護:

  1、限制用戶使用快捷鍵方式打開資源管理器。

  2、除了對cmd.exe進行限制外,還需要對system32下面的應用進行限制,通過策略禁止普通用戶執行該目錄下的應用,如systeminfo、ipconfig、netstat、net,net1,copy,xcopy等。

  3、若office應用軟件必須,建議通過策略禁止使用宏命令的使用。

  4、若開發者工具非必須,建議通過策略禁止IE的開發者工具。

  5、建議刪除不必要的第三方應用。

  6、系統服務器及時更新補丁。

  本文版權屬于TRT團隊,由團隊成員121、Sampro、短信炸彈編寫。如果你覺得這篇文章有用,可以分享給自己的朋友,同樣希望更多的人也關注我們的微信公眾號trt917,我們會定期分享一些信息安全相關知識,希望能夠對大家有所幫助。

 

上一篇:智能無懼挑戰 山石網科轟動RSA2015

下一篇:??低暎℉ikvision)安防監控錄像機曝遠程代碼執行漏