通過QEMU模擬的ASA運行ASDM

通過QEMU模擬的ASA運行ASDM 之前大家也曾經嘗試過使用ASDM來連接QEMU運行的ASA,但大體都是ASDM不支持該版本,主要原因就是因爲ASDM在檢測QEMU模擬ASA時,不能得到其硬件版本(5505,5510,5520,etc),其實ASDM檢查QEMU模擬的ASA的時候利用的就是HTTPS協議,介紹一個軟件Fiddler,一個HTTP debugging proxy,其2.0版本支持https協議,並且這個工具可以截獲本機發送的HTTP或者HTTPS流量進行重寫,那麼我們就有機會將ASDM與QEMU模擬的ASA中間的HTTPS流量進行重寫,將硬件版本號寫進HTTPS,騙取ASDM來識別.
1.需要的軟件
   QEMU模擬的ASA(論壇已經有了)
   Fiddler ([url=http://www.fiddler2.com/dl/Fiddler2BetaSetup.exe]http://www.fiddler2.com/dl/Fiddler2BetaSetup.exe[/url])
   ASDM(QEMU模擬的FLASH中需包含它)
   JAVA(最新版本)
2.Howto
  >首先,安裝JAVA,Fiddler.
  >運行並啓動QEMU模擬的ASA(基本配置端口IP,http enable,username ,導入ASDM文件到ASA,等等)
  >然後運行fiddler,注意定義下圖幾個地方:
  點擊Tools->Fiddler option->Https
  [attach]7815[/attach]
勾選Decrypt HTTPS traffic
>點擊Rules->Customize rules
搜索找到函數[code]  static function OnBeforeRequest(oSession: Session)[/code]在該函數中加入一條if語句[code] if ((oSession.url.EndsWith("/admin/asdm_handler")) || (oSession.url.EndsWith("/admin/pdm.sgz")))
         {
                 oSession.bBufferResponse = false;
                }[/code]搜索找到函數[code]  static function OnBeforeResponse(oSession: Session)[/code]在該函數中加入一條if語句[code]  if (oSession.url.Contains("/show+version"))
      {
           oSession.utilDecodeResponse();
           oSession.utilReplaceInResponse('Hardware:   ,','Hardware:   ASA5520,');
      }
  [/code]注意('Hardware:   ,','Hardware:   ASA5520,'); 中的空格保留(3個空格,請完全複製)
點擊文件->保存(如果語法正確將聽到提示聲音,並無任何提示框,假如語法錯誤或者將會提出提示框)
>點擊 開始->控制面板->JAVA->常規->網絡設置
  使用代理服務器,地址爲localhost 端口爲8888(fiddler的服務端口)
  點擊高級,對所有協議使用同一個代理服務器
>運行ASDM
  [attach]7816[/attach]
  [attach]7817[/attach]
成功登陸到ASDM以後注意取消JAVA代理服務器設置.
備註:所需文件看附件, 說明看33樓
[url=http://netemu.cn/bbs/thread-9955-2-1.html]http://netemu.cn/bbs/thread-9955-2-1.html[/url] 33樓
高速下載請至FTP [url]ftp://down.netemu.cn[/url]
username:down password:netemu.cn
目錄:/down/NetEmu.cn 專用/qemu/Qemu_asa_asdm/asa802_asdm.7z
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章