前言:前幾天有個瓜娃子說我寫的水文不太親民,大部分復現有一些難度,所以決定這段時間寫一些非web的科普文(web是不可能寫web的一輩子都不可能水web的文章)。
1.釣魚郵件的製作
因爲說了是科普文所以用最原始的宏病毒,爲了方便演示用Cobalt Strike演示。
1.1Cobalt Strike生成宏代碼
圖1.Cobalt Strike生成宏代碼
1.2打開office,創建可以啓用宏的word(如doc,docm等),視圖→宏→查看宏→創建宏,把之前複製的宏腳本粘帖進去,然後保存。
圖2.插入宏代碼
就這樣一封超級簡單的釣魚郵件就製作完成了。只要用戶點擊宏就能觸發回連了
圖3.未命名
2.宏免殺/靜態查殺(EvilClippy的使用)
2.1爲什麼釣魚附件進不了收件箱
隨着類似msf,Cobalt Strike工具的出現,釣魚郵件的製作成本大大降低了。但隨之的問題也出現了,因爲工具一般是寫死的,無法定製化惡意執行代碼,導致惡意代碼的特徵值很容易被抓取,會被髮件服務器,收件郵件網關,本地殺毒等一系列防護設備或措施攔截。所以爲了郵件能進收件箱,要搞清楚我們的釣魚郵件在哪一個步驟掛掉了。一般常見的郵件流程如下:
郵件→郵件服務器→防毒→防垃圾→收件箱
2.2如何進行免殺
上文說到要搞清楚我們的附件在什麼環節被殺了,首先科普一下當下殺軟的三種查殺方式:1.靜態查殺 2.雲查殺 3.行爲查殺。郵件服務器爲了可用性和隱私性一般只有靜態查殺。所以我們只需要規避特徵值繞過靜態查殺就可以讓釣魚附件進入收件箱了。如何規避靜態查殺?最好的辦法當然是自己寫惡意代碼,但大部分雲黑客都是腳本小子,這也沒關係,現在gayhub上也有很多免殺開源的腳本。這裏以EvilClippy作爲演示
地址:https://github.com/outflanknl/EvilClippy/releases
2.3EvilClippy的使用
下載EvilClippy腳本,並運行,這裏我們用-s參數
圖4.EvilClippy菜單頁面
-s參數是通過假的vba代碼插入到模塊中,用以混淆殺毒程序,這裏我們需要寫一個正常無毒的vba腳本。
圖5.hello.vba
我們瞎雞兒寫一個vba腳本,並保存爲hello.vba。然後我們運行EvilClippy。
命令:EvilClippy.exe -s hello.vba diaoyu.doc
圖6.EvilClippy進行混淆
把生成的doc扔到在線查殺,結果如圖7,查殺率不算太高,但是過靜態查殺應該綽綽有餘
圖7.在線查殺
點擊釣魚文檔,啓用宏,成功上線
圖8.回連上線
寫在最後:
因爲郵件網關爲了隱私性不可能開啓雲查殺,爲了性能更不可能開啓行爲查殺,所以靜態查殺還是挺好繞過的,再配合我之前的文章:釣魚發件人僞造,效果更佳。
釣魚郵件的本質就是不停地跟郵服防禦措施進行對抗,通過不同的CVE進行組合更改,繞過。說到安全策略這一塊做得OK不得不提gmail的反釣魚策略,真的是強的一批,策略更新的也非常的快。