zoukankan      html  css  js  c++  java
  • Worm.Win32.DownLoader.ns病毒主进程新式输入法注入分析(IME Inject)

    1.病毒会在system32目录生成一个以tmp结尾的随机数命名的文件。

    2.然后挂钩HOOK本进程空间的imm32.dll导出的ImmLoadLayout函数和ntdll.dll导出的ZwQueryValueKey。

    3.被挂钩的ZwQueryValueKey的处理流程是:若查询的键值是“Ime File”,则把之前生成的tmp文件名拷贝到输入缓冲区中返回给调用者,其它情况恢复原来流程执行。

    4.显式调用user32的函数LoadKeyboardLayoutA来加载新的键盘布局,该函数经过win32k的处理后最终调用ntdll的ZwQueryValueKey,所以病毒生成的tmp文件被返回给系统。

    5.通过FindWindow(0, “Program Manager”); 找到explorer.exe的窗口句柄,并调用PostMessage向该窗口发送WM_INPUTLANGCHANGEREQUEST消息。

    6.这样Explorer.exe就将病毒动态库加载起来了。

     

    现在病毒就达到目的了,病毒dll被explorer.exe加载 

    在dll被加载之前,Microsoft 调用ApphelpCheckIME 去检查dll的合法性,但它并没有去检查该dll是否导出了IME functions。

    发送一个language change消息将导致explorer去加载任意的dll,尽管dll没有导出任何的IME functions,这是很危险的!

    现在imm32.dll的很多函数依旧没有被整理成文档 并且病毒作者 正越来越看好这些函数。 这种病毒 并未终结,我们应该防范新的IME 输入法注入方式。

  • 相关阅读:
    在intent-filter中的配置
    利用asynchttpclient开源项目来把数据提交给服务器
    URL的应用
    ScrollView在布局中的作用
    android中传统的创建数据库
    for (Sms sms : smsLists){}
    Android中对文件的读写进行操作
    android中的5大布局
    android复制包需要修改的几个地方
    【Unity Tips】备忘录(扫盲篇)
  • 原文地址:https://www.cnblogs.com/x-poior/p/4866909.html
Copyright © 2011-2022 走看看