zoukankan      html  css  js  c++  java
  • LNK善意利用

    lnk

      lnk在Windows平台下是快捷方式,可以指向其他目录下的文件,并且可以传递参数。现在有些恶意活动会恶意利用lnk,执行恶意代码。

      关于lnk的格式,可以使用010 editor的模板功能,快速识别。

      如果鼠标右键创建快捷方式,可以在目标中输入执行的命令,但是字符串最长为260字节。

      可以将过长的命令放在其他位置去执行,也可以对lnk本身进行修改,从而去除字符数限制。

      现在的lnk启动命令很容易被拦截,不过可以了解一下。

      可以简单粗暴地右键创建一个lnk文件,拖进010 editor,用模板跑一下。

      可以看到实际上COMMAND_LINE_ARGUMENTS的长度可以支持到16-bit大小(0xffff),修改成大于260的值,之后插入增大字节数量的2倍(因为支持的是Unicode格式字符)空白空间,在其中写入命令。

      也可以在中间加大量空格,最后末尾加上恶意命令,这样限于图形窗口中的260显示大小,可以一定程度上隐藏自身。

    关于图标

      假如不修改图标的话,快捷方式的图标将显示为指向的可执行程序的图标,可以在右键菜单中通过"更改图标"。

      可以选择系统dll中携带的文件图标,比如说%systemroot%\system32\shell32.dll

      在lnk文件中的变化主要体现在ShellLinkHeaderLinkFlags结构体中的HasIconLocation标志位置为1;IconIndex为使用的icon在目标中的下标;最后是紧接在COMMAND_LINE_ARGUMENTS后的ICON_LOCATION字段,lnk使用的icon所在的文件,本文中是“%systemroot%system32shell32.dll”。

    关于工作目录

      要使得修改lnk指向的应用程序工作在指定目录,可以在WORKING_DIR字段进行修改,如果要去除该字段,可以设置sLinkInfo字段中的HasWorkingDir为0,并删除WORKING_DIR字段,则lnk启动的程序工作目录将在当前窗口。

  • 相关阅读:
    单元测试之NUnit一
    第一个基于ArcGIS的Android应用
    NuGet的安装和使用
    PIE调用Python获得彩色直方图
    PIE调用Python返回得到直方图矩阵数组
    PIE属性表多字段的文本绘制
    微信公众号配置和使用客服消息
    python多线程爬取斗图啦数据
    微信小微商户获取申请状态
    微信小微商户申请入驻
  • 原文地址:https://www.cnblogs.com/zUotTe0/p/13532385.html
Copyright © 2011-2022 走看看