MS14-068 for Windows 2000 Server の修正内容

 L6B719B41:
          lea    eax,[ebp-04h]
          push    eax
          push    [ebp+10h]
          call    jmp_cryptdll.dll!CDLocateCheckSum
          mov    ebx,eax
          test    ebx,ebx
          jl     L6B719BBA
          mov    eax,[ebp-04h]
          cmp    dword ptr [eax+04h],00000014h
          jbe    L6B719B63
          mov    ebx,C000000Dh
          jmp    L6B719BBA
 L6B719B63:
          lea    ecx,[ebp-08h]
          push    ecx
          push    00000011h
          push    [esi+04h]
          push    [esi+08h]
          call    [eax+1Ch]
          mov    ebx,eax
          test    ebx,ebx
          jl     L6B719BBA

修正前1

 L6B719B41:
          lea    eax,[ebp-04h]
          push    eax
          push    [ebp+10h]
          call    jmp_cryptdll.dll!CDLocateCheckSum
          mov    ebx,eax
          test    ebx,ebx
          jl     L6B719BBA
          mov    eax,[ebp-04h]
          cmp    dword ptr [eax],FFFFFF76h
          jz     L6B719B65
 L6B719B5E:
          mov    ebx,80080342h
          jmp    L6B719BBA
 L6B719B65:
          cmp    dword ptr [eax+04h],00000014h
          jbe    L6B732480
          mov    ebx,C000000Dh
          jmp    L6B719BBA

 L6B732480:
          test    dword ptr [eax+08h],00000002h
          jz     L6B719B5E
          mov    eax,[eax+1Ch]
          test    eax,eax
          jz     L6B719B5E
          lea    ecx,[ebp-08h]
          push    ecx
          push    00000011h
          push    [esi+04h]
          push    [esi+08h]
          call    [eax+1Ch]
          mov    ebx,eax
          test    ebx,ebx
          jmp    L6B719B76

 L6B719B76:
          jl     L6B719BBA

修正後1

          call    jmp_cryptdll.dll!CDLocateCheckSum
          test    eax,eax
          jl     L6B719878
          mov    ecx,[ebp-04h]
          cmp    dword ptr [ecx+04h],00000014h
          ja     L6B7198E5
          lea    eax,[ebp-0Ch]
          push    eax
          mov    eax,[ebp+08h]
          push    00000011h
          push    [eax+04h]
          push    [eax+08h]
          call    [ecx+1Ch]

変更前2

          call    jmp_cryptdll.dll!CDLocateCheckSum
          test    eax,eax
          jmp    L6B7324B0

 L6B7324B0:
          jl     L6B719878
          mov    ecx,[ebp-04h]
          cmp    dword ptr [ecx],FFFFFF76h
          jz     L6B7197C1
          jmp    L6B7198E5

 L6B7197C1:
          cmp    dword ptr [ecx+04h],00000014h
          ja     L6B7198E5
          lea    eax,[ebp-0Ch]
          push    eax
          mov    eax,[ebp+08h]
          push    00000011h
          push    [eax+04h]
          push    [eax+08h]
          call    [ecx+1Ch]

変更後2

          test    byte ptr [ebp-32h],01h
          jz     L6B714A8E
          mov    dword ptr [ebp-6Ch],00000010h
          jmp    L6B714A9A
 L6B714A8E:
          lea    eax,[ebp-64h]
          push    eax
          push&
nbsp;   [ebp-2Ch]
          call    SUB_L6B7147E1

修正前3

          test    byte ptr [ebp-32h],01h
          jz     L6B714A8E
          mov    dword ptr [ebp-6Ch],00000010h
          jmp    L6B714A8E
 L6B714A8E:
          lea    eax,[ebp-64h]
          push    eax
          push    [ebp-2Ch]
          call    SUB_L6B7147E1

修正後3

 L6B719881:
          lea    eax,[ebp-0Ch]
          push    eax
          mov    eax,[ebp-04h]
          push    00000011h
          push    [esi+04h]
          push    [esi+08h]
          call    [eax+1Ch]
          test    eax,eax
          jl     L6B7198E5

修正前4

 L6B719881:
          lea    eax,[ebp-0Ch]
          push    eax
          jmp    L6B7324CA
 L6B71988A:
          push    [esi+04h]
          push    [esi+08h]
          call    [eax+1Ch]
          test    eax,eax
          jl     L6B7198E5

 L6B7324CA:
          lea    eax,[ebp-04h]
          cmp    dword ptr [eax],FFFFFF76h
          jnz    L6B7198E5
          push    00000011h
          jmp    L6B71988A

修正後4

一応公開しましたが、チェックできてないので、ご注意ください

おすすめ

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です