回り道または同様の手法で、SQL Server の予期しない動作可能性があります。

重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。

英語版 KB:920925
概要
マイクロソフトのサポートには、Microsoft SQL Server に追加機能を提供する時に回り道を使用する多くのサード ・ パーティ製品が発生しました。これら監査、機能が通常です。マイクロソフト アプリケーション用のサード ・ パーティ製回り道の証明プロセスはありません。したがって、一般的には、強くお勧め回り道を使用します。

回り道または同様の手法を使用して SQL Server の動作を変更する機能は、次の問題にあります。
  • パフォーマンス上の問題
  • 誤った結果
  • ディスクとメモリの破損
  • SQL Server の応答が失われる
  • 予期しないプロセスの終了
  • Fn_get_sql関数、 DBCC INPUTBUFFERコマンドなどの標準的な診断を使用することができません。
  • 100% の CPU 使用率とデータベースの回復時間が長く SQL Server でメモリ内の OLTP テーブルを使用する場合
リンクされたサーバー、拡張プロシージャは、SQL Server プロセス内の COM オブジェクトなどの Microsoft 以外のソフトウェアを使用しているときにこれらの同じ問題が発生する可能性があります。は、DBA ビューから非表示にします。回り道を明らかにするために依存している「関連情報」セクションで説明されている手法を使用してください。リンク サーバー、COM オブジェクト、および拡張プロシージャ明示的に登録があり、インタ フェースを定義します。

<b>回り道の非表示の性質、公開されているインターフェイスがないのため、マイクロソフトは回り道または同様の手法を使用するサード パーティの機能のサポート サービスを提供していません。サード ・ パーティは、独自のリンク サーバーを管理すること、またはその他の制裁措置と同じように独自のコードのサポートを担当する展開します。

するように要求する不要なジョブを無効にして無効にするまたはサードパーティ製のコンポーネントと同様、他の手法を削除するには、マイクロソフト サポート サービスのトラブルシューティングの一般的なコースでの一般的な方法です。マイクロソフトは、常に問題を特定することは、中に、問題の設置面積を削減しようとします。として、問題を特定した後、ジョブまたはサード ・ パーティ製品に関係のない、これらのジョブまたはサード ・ パーティ製品が導入され生産にします。

回り道を明らかにし、サポートする SQL Server のインスタンスを検討してください、という意図ではありません。マイクロソフトでは、いくつかの実装は必要であることを確認します。ただし、Microsoft には、回り道のサポート状況を確認する必要があります。回り道、信頼できる、信頼できる会社から確実とは異なるウイルスで使用されている予期しない回り道です。マイクロソフトは保証またはこれらのサード ・ パーティ製品またはサード ・ パーティ製品がマイクロソフトの製品およびサービスとどのようにやり取りする方法を証明しません。代わりに、サード パーティ ベンダーは、id およびその製品とサービスの信頼性を担当します。サード ・ パーティ製品とサービスに関するご質問があれば、してください接触適用可能なサード ・ パーティにします。マイクロソフトは、サード ・ パーティ製品または SQL Server に関連してサービスの使用によって発生するあらゆる問題の責任ではありません。
詳細
回り道では、機能を強化し、リスクとメリットのバランスを提供します。通常、回り道が SQL Server に実装されると、サードパーティ製のコードはプロセス領域に挿入されます。このアクティビティでは、SQL Server の動作を変更可能性があります。

いくつかの例のような場合と可能な副作用を次に示します。
  • 着信ネットワーク トラフィック (TDS) パケットがスキャンされ、変更されます。回り道は net_readdata ネットワークのプロセスのスレッドの重要な場所に追加されます。この場所で 100 個までの CPU サイクルは、バッチ レートのスループットを大幅に減らすことがあります。

    TDS データを実際に変更は、メモリ scribblers する可能性があります。さまざまな SQL Server の安定性の問題をこの問題が発生しましたし、データが破損します。問題が原因で、部分的に変更して、SQL Server にガベージを再生するのには TDS パケットがあります。ログ記録機能がこのレベルで失う可能性がありますパスワードなどの機密データを SQL Server のトレースが非表示にして保護に役立つよう設計されています。
  • SQL Server の解析ルーチンは、動作を変更するのには detoured です。可能な副作用を次に示します。
    • 実行プランでは、実際のクエリ テキストが一致しません。
    • コマンドが 1 回だけ、クライアントから送信されます。ただし、コマンドを複数回実行します。
    • トレース出力は、変更後のクエリではなく元のコマンドを示しています。
    • DBCC INPUTBUFFER コマンドは、変更後のクエリではなく元のコマンドを示しています。
    • Fn_get_sql関数は、正しくないデータを示しています。さらに、 fn_get_sql関数は、例外にし、誤った結果に影響を受けやすい。Fn_get_sql関数は、多くの監視ソリューションで使用され、監視ソリューションで問題が発生する可能性があります。
    • 全体的なユーザー モード スケジューラ (UMS) および SQL Server オペレーティング システム (SQLOS) のスケジュールが中断される可能性があります。これにより、SQL Server の応答が失われる、パフォーマンスの変化、および停止します。
  • 強化されたセキュリティ機能を提供する Win32 Api が detoured します。実装によってこのレベルでログ記録機能はパスワードなどの機密データを公開でした。全体的な UMS とスケジューリング SQLOS は中断されます。これにより、SQL Server の応答が失われると停止します。
  • 関数テーブルを変更して、中心的な SQL Server の機能、または Windows API をリダイレクトすることは、SQL Server プロセス内ではサポートされていません。SQL Server の機能が不安定になると予期しない動作この可能性があります。
次の例をkernel32!GetQueuedCompletionStatus関数が detoured されています。
MyDLL!MyGetQueuedCompletionStatusssnetlib!ConnectionReadAsyncWait
GetQueuedCompletionStatus関数の場合、アセンブリ内の最初の命令はジャンプ命令で交換済み。
0:038> u kernel32!GetQueuedCompletionStatuskernel32!GetQueuedCompletionStatus 77e660f1 e90a9f00aa      jmp     21e70000   ß  This points to an address that does not appear in the loaded module list (lm). It is injected code.77e660f6 83ec10          sub     esp,10h
挿入されたコードのアセンブリでは、detoured の活動と、MyDLL ファイルへの呼び出しを示します。
0:038> u 21e70000  21e70000 55              push    ebp21e70001 8bec            mov     ebp,esp21e70003 51              push    ecx21e70004 8b4518          mov     eax,dword ptr [ebp+18h]21e70007 50              push    eax21e70008 8b4d14          mov     ecx,dword ptr [ebp+14h]21e7000b 51              push    ecx21e7000c 8b5510          mov     edx,dword ptr [ebp+10h]21e7000f 52              push    edx21e70010 8b450c          mov     eax,dword ptr [ebp+0Ch]21e70013 50              push    eax21e70014 8b4d08          mov     ecx,dword ptr [ebp+8]21e70017 51              push    ecx21e70018 e8234d19ee      call   MyDLL+0x4d40 (10004d40)   <- Call to the MyDLL file.21e7001d 8945fc          mov     dword ptr [ebp-4],eax21e70020 8b55fc          mov     edx,dword ptr [ebp-4]

Windows 用デバッグ ツールを使用すると、回り道を使用しているかどうかを決定します。そのためには、以下の手順を実行します。

<b>常に実稼働環境で行う前に、このメソッドをテストします。Windows 用デバッグ ツールを使用して、コマンドを実行すると、プロセスがフリーズします。この現象には、運用サーバーに悪影響を与える可能性があります。
  1. SQL Server では、Windows 用デバッグ ツールに添付または完全なユーザー ダンプ ファイルをロードします。
  2. 次のデバッガー コマンドを発行します。このコマンドでは、時に回り道に挿入されているかどうかを判断するのにはディスク上のイメージに対しては、各イメージを検査します。
    !for_each_module "!chkimg -v @#Base -d"
  3. デバッガーをデタッチします。
Windows 用デバッグ ツールを入手するには、次のマイクロソフト web サイトに移動します。 メモリ内のイメージが変更された場合、出力可能性があります、次のようになります。
Comparison image path: c:\program files\microsoft sql server\mssql\binn\ssnetlib.dll\ssnetlib.dllScanning section:    .textSize: 56488Range to scan: 0c261000-0c26eca80c263710-0c26371a  11 bytes - ssnetlib!ConnectionClose           	[ 8b ff 55 8b ec 83 ec 10:68 00 00 00 00 e9 27 8a ]0c2641e0-0c2641ea  11 bytes - ssnetlib!ConnectionReadAsync (+0xad0)	[ 8b ff 55 8b ec 83 ec 38:68 00 00 00 00 e9 00 7e ]0c265160-0c26516a  11 bytes - ssnetlib!ConnectionWriteAsync (+0xf80)	[ 8b ff 55 8b ec 83 ec 28:68 00 00 00 00 e9 ba 70 ]Total bytes compared: 56488(100%)Number of errors: 3333 errors : 0c260000 (0c263710-0c26516a)
さらに詳しく問題を次のようにアセンブリを確認できます。
0:038> u ssnetlib!ConnectionClosessnetlib!ConnectionClose]:0c263710 6800000000      push    00c263715 e9278ada03      jmp     MyDLL!MyGetQueuedCompletionStatus  <- A detour has been installed.

SQL インジェクション攻撃を追跡するウイルス対策プログラムは、SQL Server コードを detour ことができます。このシナリオでは、出力で、! for_each_module」! chkimg v @# Base-d"を SQL Server の機能yyparseex_raise2が変更されて拡張子が表示ことがあります。

Comparison image path: <symbol file path>\sqlservr.exeRange to scan: c81000-3de7d48    ed71a8-ed71ad  6 bytes - sqlservr!yyparse [ ff f5 41 54 41 55:e9 c7 95 5c 76 90 ]1202820-1202824  5 bytes - sqlservr!ex_raise2 (+0x32b678) [ ff f3 57 41 54:e9 20 e0 29 76 ]Total bytes compared: 51801416(17%)Number of errors: 11

回り道を SQL Server で使用する方法の詳細については、回り道のような技術のプロバイダーに問い合わせることをお勧めします。回り道と同様の手法の詳細については、次のマイクロソフトの研究センターの web サイトを参照してください。

警告: この記事は自動翻訳されています

Properti

ID Artikel: 920925 - Tinjauan Terakhir: 11/29/2016 18:04:00 - Revisi: 11.0

Microsoft SQL Server 2005 Express Edition, Microsoft SQL Server 2005 Express Edition with Advanced Services, Microsoft SQL Server 2005 Standard Edition, Microsoft SQL Server 2005 Workgroup Edition, Microsoft SQL Server 2005 Developer Edition, Microsoft SQL Server 2005 Enterprise Edition, Microsoft SQL Server 2005 Standard X64 Edition, Microsoft SQL Server 2005 Enterprise X64 Edition, Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems, Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems, Microsoft SQL Server 2000 Personal Edition, Microsoft SQL Server 2000 Standard Edition, Microsoft SQL Server 2000 Workgroup Edition, Microsoft SQL Server 2000 Developer Edition, Microsoft SQL Server 2000 Enterprise Edition, Microsoft SQL Server 2008 Developer, Microsoft SQL Server 2008 Enterprise, Microsoft SQL Server 2008 Express, Microsoft SQL Server 2008 R2 Datacenter, Microsoft SQL Server 2008 R2 Developer, Microsoft SQL Server 2008 R2 Enterprise, Microsoft SQL Server 2008 R2 Express, Microsoft SQL Server 2008 R2 Standard, Microsoft SQL Server 2008 R2 Web, Microsoft SQL Server 2008 R2 Workgroup, Microsoft SQL Server 2008 Web, Microsoft SQL Server 2008 Workgroup, Microsoft SQL Server 2012 Developer, Microsoft SQL Server 2012 Enterprise, Microsoft SQL Server 2012 Express, Microsoft SQL Server 2012 Standard, Microsoft SQL Server 2012 Web, Microsoft SQL Server 2012 Enterprise Core, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Express, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2014 Web

  • kbtshoot kbexpertiseadvanced kbinfo kbmt KB920925 KbMtja
Tanggapan