每天拿出一分鐘來學習,你的生命會更加精彩。

兩天前完成的免殺加密壓縮殼

發布:洪雨2019-6-11 11:13分類: 編程相關 標簽: 易語言 編程

    對近在眼前寫的工具猜想后,我進行了實驗。

    方法和原理是可行的,但是最后的運行方式,讓我很糾結。一直想不寫出文件就能運行。用內存運行的方法是可行的,但是這樣windows就無法識別程序,需要系統cmd套殼運行。

    其實這種方法也ok,不過程序運行時總是有dos命令窗口閃現,很是煩人。因為用的模塊命令,所以也沒有辦法限制dos窗口隱藏……

    還有一個不好的地方,就是如果原文件加了殼,這個殼如果壓縮或者加密了內存,那么很大程度上就會運行失敗。

    所以這個想法,直接讓我放棄了。

    問題是人家寫的就不會出現這種問題,理論上應該還是寫出的。后來翻遍全網,看到一種捆綁寫法,也是有文件頭的,而且有文件頭的源碼。

    我研究了一下,發現他是用線程控制,但是換湯不換藥,還是要寫出……洪雨覺得,可能所有捆綁機要么寫出運行,要么套cmd殼運行,用命令隱藏dos窗口,這兩種方法。

    頭文件寫法有兩種,一種是有窗口,在窗口下運行指令,一種是直接運行程序。如果沒有窗口,那么就要dos窗口閃現。

    最后洪雨決定不倒騰了,直接窗口下運行,隱藏窗口就是了。

    看別人的源碼還是有收獲的,學會了一種寫法。以前我是,寫出文件人后運行,就不管了。可問題來了,如果多個壓縮文件同時運行,就會出現沖突。所以運行完再刪除比較保險。想著隨機文件名,然后刪除,這樣又比較容易被發現。

    看了別人的源碼,學會了一種寫法,申請一個臨時文件,然后將軟件寫入,刪除的時候,再刪除這個臨時文件即可。

    好了,總結一下流程。首先寫一個頭文件,這個頭文件寫法是,創建一個窗口,設置為隱藏屬性,在啟動窗口創建完畢下寫命令,命令就是根據文件大小剝離文件,然后該解密解密,該壓縮壓縮。最后申請臨時文件,將解密壓縮后的寫到這個臨時文件中,然后運行。重點來了,運行參數是否等待運行完畢為真,然后刪除臨時文件,結束。

    生成工具很簡單,將原文件加密壓縮,然后告訴頭文件原文件處理后的大小,最后對接到頭文件上即可。

    最終重點,易語言生成的文件都很大,如果互相對接,可能比原文件還大,有什么臉說是壓縮殼?

    所以,研究易語言瘦身也花費了一番功夫,從斬月到現在的黑月,從白月到凌月……一個都沒弄明白……所幸頭文件命令少,不需要支持庫,直接編譯出來即可,不到10k,加個圖標,十幾k,還是能接受的。

    無意中發現殺毒很愛殺支持庫,沒有支持庫的頭文件就不會被殺,怪不得c生成的工具誤報很少。

    到此,洪雨這個業余易語言愛好者加密壓縮殼算是完成了。經過處理的文件也不會報毒。因為根本沒什么可報的,頭文件不報就不會報。運行的時候報不報另當別論,反正能過主動防御。

溫馨提示如有轉載或引用以上內容之必要,敬請將本文鏈接作為出處標注,謝謝合作!

WRITTEN BY

avatar

已有 0/46 人參與

歡迎使用手機掃描訪問本站,還可以關注微信哦~

深圳风采开奖结果规则