展開
湖北國聯(lián)計算機科技有限公司
  • 首頁HOME
  • 公司簡介INTRODUCTION
  • 安全防御DEFENSE
  • 軟件開發(fā)SOFTWARE
  • 物聯(lián)網(wǎng)IOT
  • 運行維護SRE
  • 成功案例CASE
  • 聯(lián)系我們CONTACT
  • IndustryEvents |業(yè)界動態(tài)

    如何禁用軟件DLL劫持(Disable DLL Hijacking)
    來源:吾愛破解論壇 時間:2021-10-16

    前言

    越來越多的木馬使用DLL劫持功能進行加載,大家也經(jīng)常做補丁使用DLL劫持功能進行破解,有沒有想過如何進行防護了?本文介紹通過修改文件manifest屬性進行定向位置加載和動態(tài)加載簽名校驗來解決劫持問題,給開發(fā)者提供一些防護思路,加強軟件保護,防止被劫持利用。

    介紹

    木馬:如早期的犇牛木馬,使用偽裝LPK.DLL、USP10.DLL系統(tǒng)DLL進行劫持加載傳播感染,到如今各種流氓軟件和APT組織使用DLL劫持正常軟件繞過安全軟件攔截,如使用偽裝chrome.dll劫持Chrome.exe來實現(xiàn)加載,其中比較知名APT組織海蓮花(OceanLotus)最為擅長。

    破解補?。?/span>Windows平臺加密殼發(fā)展到如今階段,脫殼成本提升和自校驗的加強,已經(jīng)很少有直接通過文件Patch進行補丁破解了,基本都開始使用內(nèi)存修改的方式進行補丁,相對于傳統(tǒng)的啟動進程再修改內(nèi)存的方式,DLL劫持修改內(nèi)存更為方便,DLL劫持補丁已經(jīng)成為主流的破解補丁存在方式了。為什么可以進行DLL劫持了,本文不再贅述,可以參看微軟官方的介紹:https://docs.microsoft.com/en-us/windows/win32/dlls/dynamic-link-library-search-order。

    防護方法

    1、對于系統(tǒng)DLL,不通過修改本機KnownDLLs進行單機防護,而是通過修改文件manifest屬性進行定向加載DLL來解決通用系統(tǒng)DLL劫持問題,開發(fā)者可以看微軟的manifest介紹:

    >https://docs.microsoft.com/en-us/windows/win32/sbscs/application-manifests。

    比如我們給程序添加以下代碼

    復(fù)制代碼 隱藏代碼

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <assemblymanifestVersion="1.0"xmlns="urn:schemas-microsoft-com:asm.v1">
    <filename="winmm.dll"loadFrom="%SystemRoot%\system32\winmm.dll" />
    <filename="lpk.dll"loadFrom="%SystemRoot%\system32\lpk.dll" />
    <filename="version.dll"loadFrom="%SystemRoot%\system32\version.dll" />
    </assembly>

    編譯成功后再進行winmm.dll、lpk.dll和version.dll劫持,就會無效了,這里只添加了部分DLL,可以根據(jù)自己程序所需,把對應(yīng)所有的導(dǎo)入表中的系統(tǒng)DLL都加入即可。對于二次開發(fā)的程序沒有源代碼如何進行修改了?我們可以使用ResEdit等資源工具進行修改,如圖所示:


    2、對于非系統(tǒng)第三方DLL,上面的方法就不太適用了,可以使用動態(tài)加載方式,不要使用靜態(tài)導(dǎo)入方式加載,通過動態(tài)加載對文件進行校驗,如數(shù)字簽名校驗通過后再進行加載,來保證程序的安全性。

    結(jié)語

    未知攻焉知防,充分了解攻擊手段才才可以做出更好的防御。



    荊州地區(qū)政府網(wǎng)站建設(shè) 解決方案 專業(yè)團隊 騰訊第三方平臺 地址:湖北省荊州市沙市區(qū)荊沙大道楚天都市佳園一期C區(qū)29棟112       地址:湖北省松滋市新江口街道才知文化廣場1幢1146-1151室     郵編:434200 聯(lián)系電話:0716-6666211     網(wǎng)站編輯部郵箱:business@gl-ns.com 鄂公網(wǎng)安備 42100202000212號 備案號:鄂ICP備2021015094號-1     企業(yè)名稱:湖北國菱計算機科技有限公司