• 【原创】Windows 所有程序崩溃漏洞


    /**************************************
    /* 作者:半斤八兩
    /* 博客:http://cnblogs.com/bjblcracked
    /* 日期:2013-05-06  01:11
    /**************************************



    只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!


    受影响平台x86: xp win7 其它平台没测试
    中枪控件: Edit ThunderRT6TextBox ThunderRT6FormDC Chrome_OmniboxView 等

    我只重点拿notepad.exe 的 edit 控件做测试.
    分析发现 comctl32.dll 这个模块造成的崩溃.

    全部都是GDI操作的.


    comctl32.dll

    ----------------------------------------------
    771DE49A  |.  E8 DFD4FFFF   call COMCTL32.771DB97E
    771DE49F  |.  E9 C8030000   jmp COMCTL32.771DE86C
    771DE4A4  |>  F646 62 40    test byte ptr ds:[esi+62], 40            ;  Case BD (EM_GETHANDLE) of switch 771DE460
    771DE4A8  |.  56            push esi
    771DE4A9  |.  74 0E         je short COMCTL32.771DE4B9
    771DE4AB  |.  E8 DE36FCFF   call COMCTL32.771A1B8E
    771DE4B0  |.  8B4E 0C       mov ecx, dword ptr ds:[esi+C]
    771DE4B3  |.  C60408 00     mov byte ptr ds:[eax+ecx], 0
    771DE4B7  |.  EB 0D         jmp short COMCTL32.771DE4C6
    771DE4B9  |>  E8 D036FCFF   call COMCTL32.771A1B8E
    771DE4BE  |.  8B4E 0C       mov ecx, dword ptr ds:[esi+C]
    771DE4C1  |.  66:832448 00  and word ptr ds:[eax+ecx*2], 0           ;  // error, eax=0  and ecx = 0  其中EAX是wparn
    771DE4C6  |>  56            push esi
    771DE4C7  |.  E8 2F37FCFF   call COMCTL32.771A1BFB
    771DE4CC  |.  8B06          mov eax, dword ptr ds:[esi]
    771DE4CE  |.  E9 99030000   jmp COMCTL32.771DE86C
    771DE4D3  |>  53            push ebx                                 ;  Case BB (EM_LINEINDEX) of switch 771DE460
    771DE4D4  |.  56            push esi
    771DE4D5  |.  E8 0ECDFFFF   call COMCTL32.771DB1E8
    771DE4DA  |.  E9 8D030000   jmp COMCTL32.771DE86C
    771DE4DF  |>  53            push ebx                                 ;  Case C1 (EM_LINELENGTH) of switch 771DE460
    ------------------------------------------------------------------------------------

    试了一天没有找到利用方法.不过感觉应该是可以利用的. 
    最近时间太忙了,等有时间再继续看看. 
    本来是分析360程序的,发现了系统的这个BUG.
    起初一直以为是360程序的BUG.
    用windbg调试,发现,是系统造成的.
    再没有安装360的电脑上测试,一样中枪.

    剩下的大家看代码吧.

    上个DEMO图.

     中招条件:
    1. 程序有窗口.
    2. 程序有使用 edit 一类的控件.(至于哪些控件中枪,得自测了.)
    3. 即使程序有加载驱动,只要没有HOOK 消息,一样有效果.(如 XueTr Kernel Detective 360 Taskmgr 等.)

    源码和BIN下载地址:

    看雪学院

  • 相关阅读:
    POJ 2891 Strange Way to Express Integers 中国剩余定理 模板 数论
    HDU 6185 Covering 矩阵快速幂 递推
    hdoj2796
    hdoj2795【未完待续】
    hdoj【1006】【未完待续】
    hdoj1007【几何】【未完待续】
    位运算【C++学习(计蒜客)】
    poj1664【DFS】
    退出ACM?
    C4-总结
  • 原文地址:https://www.cnblogs.com/BjblCracked/p/3061999.html
Copyright © 2020-2023  润新知