LNK善意利用

lnk

  lnk在Windows平臺下是快捷方式,能夠指向其餘目錄下的文件,而且能夠傳遞參數。如今有些惡意活動會惡意利用lnk,執行惡意代碼。shell

  關於lnk的格式,能夠使用010 editor的模板功能,快速識別。code

  若是鼠標右鍵建立快捷方式,能夠在目標中輸入執行的命令,可是字符串最長爲260字節。blog

  能夠將過長的命令放在其餘位置去執行,也能夠對lnk自己進行修改,從而去除字符數限制。字符串

  如今的lnk啓動命令很容易被攔截,不過能夠了解一下。it

  能夠簡單粗暴地右鍵建立一個lnk文件,拖進010 editor,用模板跑一下。io

  能夠看到實際上COMMAND_LINE_ARGUMENTS的長度能夠支持到16-bit大小(0xffff),修改爲大於260的值,以後插入增大字節數量的2倍(由於支持的是Unicode格式字符)空白空間,在其中寫入命令。模板

  也能夠在中間加大量空格,最後末尾加上惡意命令,這樣限於圖形窗口中的260顯示大小,能夠必定程度上隱藏自身。程序

關於圖標

  假如不修改圖標的話,快捷方式的圖標將顯示爲指向的可執行程序的圖標,能夠在右鍵菜單中經過"更改圖標"。im

  能夠選擇系統dll中攜帶的文件圖標,好比說%systemroot%\\system32\\shell32.dllimg

  在lnk文件中的變化主要體如今ShellLinkHeaderLinkFlags結構體中的HasIconLocation標誌位置爲1;IconIndex爲使用的icon在目標中的下標;最後是緊接在COMMAND_LINE_ARGUMENTS後的ICON_LOCATION字段,lnk使用的icon所在的文件,本文中是「%systemroot%\system32\shell32.dll」。

相關文章
相關標籤/搜索