Abyss0729
V2EX  ›  C#

求助,如何正確劫持系統 DLL 調用

  •  
  •   Abyss0729 · May 10, 2024 · 3377 views
    This topic created in 756 days ago, the information mentioned may be changed or developed.

    背景:公司電腦中有個使用 C#編寫的電腦監控軟件,其中有一個功能就是檢查正在運行的進程,並獲取所有進程的 EXE 的資源信息(產品名稱,公司等等),依此來確定是否是違禁軟件。 經過反編譯得知它使用的是 System.Diagnostics.FileVersionInfo.GetVersionInfo 來獲取的信息。 請問如何讓這個功能無效。 我嘗試修改了 System.Diagnostics.FileVersionInfo.dll 並放到 EXE 文件目錄內但是沒有效果。 自己沒學過 C#,請各位賜教!

    3 replies    2024-05-30 21:37:54 +08:00
    czyt
        1
    czyt  
       May 16, 2024
    在逻辑判断的地方,直接返回 true 就行了。
    Abyss0729
        2
    Abyss0729  
    OP
       May 16, 2024
    我的想法是不更改程序本身,這樣更改很容易,但是以後更新了還要再改
    forgottencoast
        3
    forgottencoast  
       May 30, 2024
    @Abyss0729
    你是怎么改的?这些 dll 都有强签名的,随便改是不会起作用的。而且它应该不会从文件目录内读取的。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1083 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 23:27 · PVG 07:27 · LAX 16:27 · JFK 19:27
    ♥ Do have faith in what you're doing.