Windows XP SP2と SP3の crypt32.dllの違いの解析
拡張カーネル v24cで XP用の CRYPT32.DLLを改造して放り込んであるのですが、不具合がタスクスケジューラーで発生してるので、 XP SP2 と SP3の crypt32.DLLの違いを解析してみました
1. CryptQueryObject のバッファーオーバーフロー対策の有無
関数内で Null pointer のチェックが SP3 では余計に入っていました。
Windows 2000の関数の仕様をチェックしてみたところ、 SP3 と同じ仕様になっていました。
2.sha256RSA/sha384RSA/sha512RSA/sha256NoSign/sha384NoSign/sha512NoSign/sha256/sha384/sha512 対応
XP SP2だと見れないサイトがあるのはこれのせいですね・ω・
ちょっとコードが複雑だったので解析ここまでしかできてません ・ω・;
MsTask.DLLのエラー箇所の特定
SUB_L693832D6: lea eax,[esp+04h] push eax push L693818B8 push L693817B0 call jmp_RPCRT4.dll!NdrClientCall2 add esp,0000000Ch retn 0010h |
Windows 2000 版時>No account information could be found in the Task Scheduler security database for the task indicated.(0x8004130f)
XP版時>The RPC Server is unavailable. (Exception from HRESULT: 0x800706BA)
・ω・ crypt32.dllとは関係なさそうなんですけどね(悩)
Comments