アップデート一覧に戻る
New releaseAug 14, 2026

TABPE v2026.8

サイバーセキュリティ研究者向けの月次Windows PEベースラインデータセット

共有

TABPE

TABPEとは?

TABPETABriz + PE の組み合わせ。タブリーズは私の故郷であり、この街への愛情からこのプロジェクトを名付けました)は、クリーンで完全に更新されたWindows 10 ProおよびWindows 11 Pro上のすべてのPEファイル(.exe、.dll、.sysなどを含むWindows実行可能ファイル)に関する情報を含む、オープンで構造化されたデータセットです。

私のワークフローは次のとおりです:

  • Windowsをインストールし、毎月Microsoftがセキュリティ更新プログラム(Patch Tuesday)をリリースした後に、システムを更新しようとしました。
  • 数か月は、Patch Tuesdayの当日または数日後に更新が適用されました。
  • 他の月は、さまざまな理由(イランのインターネット障害など)で時間通りに更新できませんでした。その場合、更新ファイル(.msu)を手動でダウンロードしてインストールしました。
  • その結果、Patch Tuesdayに対する正確なスキャン時間は数日から数週間まで異なる可能性があります。 しかし、最終的には、スキャン日までにMicrosoftがリリースしたすべての更新がシステムに適用されました。

各スキャンの正確な開始時刻と終了時刻は、pe_files_info.json ファイルの scan_info セクションに記録されています。

プロジェクトの出力

各リリースは3つの主要なファイルを提供します:

File説明
pe_files_info.jsonすべてのPEファイルに関する完全な情報(ヘッダー、セクション、インポート、エクスポート、SHA256ハッシュ、セキュリティ情報、LOAD_CONFIGなど)を含むメインファイル
file_list.txtその特定のWindowsバージョンにおけるすべてのPEファイルのパスの完全なリスト
scanner.logスキャナーがアクセスできなかったエラーとファイル(Access Denied)のログ + エラー

pe_files_info.json のサンプル構造

{
    "scan_info": {
        "start_time": "2026-06-04T06:21:51-07:00",
        "end_time": "2026-06-04T08:09:37-07:00",
        "duration": "1h 47m 45s",
        "windows_version": {
            "os_name": "Windows 11 Pro",
            "os_version": "10.0.26100.8457 Build 26100",
            "system_type": "x64-based PC",
            "version": "24H2",
            "last_update": "KB5087054"
        },
        "total_files": 29377,
        "error_files": 12,
        "error_files_list": [
            {
                "id": 7618,
                "path": "C:\\Windows\\SysWOW64\\compobj.dll"
            },
            {
                "id": 8561,
                "path": "C:\\Windows\\SysWOW64\\ole2disp.dll"
            },
            {
                "id": 8562,
                "path": "C:\\Windows\\SysWOW64\\ole2nls.dll"
            },
            {
                "id": 8560,
                "path": "C:\\Windows\\SysWOW64\\ole2.dll"
            },
            {
                "id": 8839,
                "path": "C:\\Windows\\SysWOW64\\storage.dll"
            },
            {
                "id": 8912,
                "path": "C:\\Windows\\SysWOW64\\typelib.dll"
            },
            {
                "id": 28768,
                "path": "C:\\Windows\\WinSxS\\x86_microsoft-windows-n..nd-syswow64-payload_31bf3856ad364e35_1.0.26100.1_none_d3b8ff829e6c9bfb\\ole2.dll"
            },
            {
                "id": 28767,
                "path": "C:\\Windows\\WinSxS\\x86_microsoft-windows-n..nd-syswow64-payload_31bf3856ad364e35_1.0.26100.1_none_d3b8ff829e6c9bfb\\compobj.dll"
            },
            {
                "id": 28769,
                "path": "C:\\Windows\\WinSxS\\x86_microsoft-windows-n..nd-syswow64-payload_31bf3856ad364e35_1.0.26100.1_none_d3b8ff829e6c9bfb\\ole2disp.dll"
            },
            {
                "id": 28770,
                "path": "C:\\Windows\\WinSxS\\x86_microsoft-windows-n..nd-syswow64-payload_31bf3856ad364e35_1.0.26100.1_none_d3b8ff829e6c9bfb\\ole2nls.dll"
            },
            {
                "id": 28772,
                "path": "C:\\Windows\\WinSxS\\x86_microsoft-windows-n..nd-syswow64-payload_31bf3856ad364e35_1.0.26100.1_none_d3b8ff829e6c9bfb\\typelib.dll"
            },
            {
                "id": 28771,
                "path": "C:\\Windows\\WinSxS\\x86_microsoft-windows-n..nd-syswow64-payload_31bf3856ad364e35_1.0.26100.1_none_d3b8ff829e6c9bfb\\storage.dll"
            }
        ]
    },
    "pe_files": [
        {
            "id": 1,
            "filename": "msdaosp.dll",
            "path": "C:\\Program Files\\Common Files\\System\\Ole DB\\msdaosp.dll",
            "sha256": "38390b62e81fd3381d6ea2d50c5e35ff93370e70122326c0cb8de53f9f9085d0",
            "file_type": "dll",
            "has_rich_header": "YES",
            "machine": "AMD64",
            "time_date_stamp": "2010-06-03 08:46:58 UTC",
            "characteristics": [
                "EXECUTABLE_IMAGE",
                "LARGE_ADDRESS_AWARE",
                "UP_SYSTEM_ONLY"
            ],
            "magic": "PE32+",
            "major_linker_version": 14,
            "minor_linker_version": 38,
            "major_os_version": 10,
            "minor_os_version": 0,
            "major_image_version": 10,
            "minor_image_version": 0,
            "major_subsystem_version": 10,
            "minor_subsystem_version": 0,
            "checksum": 188850,
            "subsystem": "WINDOWS_GUI",
            "dll_characteristics": [
                "DYNAMIC_BASE",
                "GUARD_CF",
                "HIGH_ENTROPY_VA",
                "NX_COMPAT"
            ],
            "data_directories": [
                "EXPORT_TABLE",
                "IMPORT_TABLE",
                "RESOURCE_TABLE",
                "EXCEPTION_TABLE",
                "BASE_RELOCATION_TABLE",
                "DEBUG",
                "LOAD_CONFIG_TABLE",
                "IAT"
            ],
            "sections": [
                {
                    "name": ".text",
                    "characteristics": [
                        "CNT_CODE",
                        "MEM_EXECUTE",
                        "MEM_SHARED"
                    ]
                },
                {
                    "name": "fothk",
                    "characteristics": [
                        "CNT_CODE",
                        "MEM_EXECUTE",
                        "MEM_SHARED"
                    ]
                },
                {
                    "name": ".rdata",
                    "characteristics": [
                        "CNT_INITIALIZED_DATA",
                        "MEM_EXECUTE"
                    ]
                },
                {
                    "name": ".data",
                    "characteristics": [
                        "CNT_INITIALIZED_DATA",
                        "MEM_EXECUTE",
                        "MEM_READ"
                    ]
                },
                {
                    "name": ".pdata",
                    "characteristics": [
                        "CNT_INITIALIZED_DATA",
                        "MEM_EXECUTE"
                    ]
                },
                {
                    "name": ".rsrc",
                    "characteristics": [
                        "CNT_INITIALIZED_DATA",
                        "MEM_EXECUTE"
                    ]
                },
                {
                    "name": ".reloc",
                    "characteristics": [
                        "CNT_INITIALIZED_DATA",
                        "LNK_NRELOC_OVFL",
                        "MEM_EXECUTE"
                    ]
                }
            ],
            "exports": [
                "DllCanUnloadNow",
                "DllGetClassObject",
                "DllMain",
                "DllRegisterServer",
                "DllUnregisterServer"
            ],
            "imports": [
                {
                    "dll_name": "ADVAPI32.DLL",
                    "functions": [
                        "RegCloseKey",
                        "RegOpenKeyExW",
                        "RegQueryValueExW"
                    ]
                },
                {
                    "dll_name": "KERNEL32.DLL",
                    "functions": [
                        "CompareStringA",
                        "CompareStringW",
                        "DeleteCriticalSection",
                        "DisableThreadLibraryCalls",
                        "EnterCriticalSection",
                        "GetCurrentProcess",
                        "GetCurrentProcessId",
                        "GetCurrentThread",
                        "GetCurrentThreadId",
                        "GetProcessHeap",
                        "GetSystemDefaultLCID",
                        "GetSystemInfo",
                        "GetSystemTimeAsFileTime",
                        "GetTickCount",
                        "InitializeCriticalSection",
                        "LeaveCriticalSection",
                        "MultiByteToWideChar",
                        "QueryPerformanceCounter",
                        "RtlCaptureContext",
                        "RtlLookupFunctionEntry",
                        "RtlVirtualUnwind",
                        "SetUnhandledExceptionFilter",
                        "Sleep",
                        "TerminateProcess",
                        "TryEnterCriticalSection",
                        "UnhandledExceptionFilter",
                        "WideCharToMultiByte"
                    ]
                },
                {
                    "dll_name": "MSVCRT.DLL",
                    "functions": [
                        "_XcptFilter",
                        "__C_specific_handler",
                        "_amsg_exit",
                        "_callnewh",
                        "_initterm",
                        "_mbsinc",
                        "_purecall",
                        "_wcsicmp",
                        "floor",
                        "free",
                        "malloc",
                        "memcmp",
                        "memcpy",
                        "memmove",
                        "memset",
                        "realloc"
                    ]
                },
                {
                    "dll_name": "OLE32.DLL",
                    "functions": [
                        "CLSIDFromProgID",
                        "CoCreateInstance",
                        "CoGetMalloc",
                        "CoTaskMemFree",
                        "ProgIDFromCLSID",
                        "StringFromCLSID"
                    ]
                },
                {
                    "dll_name": "USER32.DLL",
                    "functions": [
                        "DispatchMessageW",
                        "LoadStringW",
                        "MsgWaitForMultipleObjects",
                        "PeekMessageW",
                        "TranslateMessage"
                    ]
                }
            ],
            "debug_info": [
                "CODEVIEW"
            ],
            "mitigations": [
                "DYNAMIC_BASE/ASLR",
                "NX_COMPAT/DEP",
                "CFG",
                "HIGH_ENTROPY_VA"
            ],
            "has_certificate": false,
            "load_config": {
                "raw": "00000148 size\n0 time date stamp\n0.00 Version\n0 GlobalFlags Clear\n0 GlobalFlags Set\n0 Critical Section Default Timeout\n0 Decommit Free Block Threshold\n0 Decommit Total Free Threshold\n0000000000000000 Lock Prefix Table\n0 Maximum Allocation Size\n0 Virtual Memory Threshold\n0 Process Affinity Mask\n0 Process Heap Flags\n0 CSD Version\n0000 Dependent Load Flag\n0000000000000000 Edit List\n00000001800190C0 Security Cookie\n0000000180015B38 Guard CF address of check-function pointer\n0000000180015B40 Guard CF address of dispatch-function pointer\n0000000180015BD4 Guard CF function table\nA5 Guard CF function count\n10417500 Guard Flags\nCF instrumented\nFID table present\nProtect delayload IAT\nDelayload IAT in its own section\nExport suppression info present\nLong jump target table present\nEH Continuation table present\n0000 Code Integrity Flags\n0000 Code Integrity Catalog\n00000000 Code Integrity Catalog Offset\n00000000 Code Integrity Reserved\n0000000000000000 Guard CF address taken IAT entry table\n0 Guard CF address taken IAT entry count\n0000000000000000 Guard CF long jump target table\n0 Guard CF long jump target count\n0000000000000000 Dynamic value relocation table\n0000000000000000 Hybrid metadata pointer\n0000000000000000 Guard RF address of failure-function\n0000000000000000 Guard RF address of failure-function pointer\n00000228 Dynamic value relocation table offset\n0007 Dynamic value relocation table section\n0000 Reserved2\n0000000000000000 Guard RF address of stack pointer verification function pointer\n00000000 Hot patching table offset\n0000 Reserved3\n0000000000000000 Enclave configuration pointer\n0000000000000000 Volatile metadata pointer\n0000000180015B90 Guard EH continuation table\nD Guard EH continuation count\n0000000180015B48 Guard XFG address of check-function pointer\n0000000180015B50 Guard XFG address of dispatch-function pointer\n0000000180015B58 Guard XFG address of dispatch-table-function pointer\n0000000180015B60 CastGuard OS determined failure mode\n0000000000000000 Guard memcpy function pointer\nGuard CF Function Table\nAddress\n--------\n0000000180001060\n00000001800012E0\n0000000180001550\n00000001800017D0\n0000000180001AA0\n0000000180001AC0\n0000000180001AE0\n0000000180001B60\n0000000180001BA0\n0000000180001CF0\n0000000180001D10\n0000000180001D30\n0000000180001D40\n0000000180001D50\n0000000180001D60\n0000000180001D70\n0000000180002080\n00000001800022C0\n00000001800022D0\n00000001800022F0\n0000000180002B70\n0000000180003470\n00000001800034D0\n0000000180003D20\n0000000180003D30\n0000000180003D40\n0000000180003F30\n0000000180003F50\n0000000180003F60\n0000000180003F70\n0000000180003F80\n0000000180003F90\n0000000180003FA0\n0000000180003FC0\n0000000180003FD0\n0000000180003FE0\n0000000180003FF0\n0000000180004000\n0000000180004010\n0000000180004500\n00000001800046A0\n0000000180004800\n0000000180004810\n0000000180004840\n0000000180004A30\n0000000180005490\n00000001800054A0\n00000001800055A0\n0000000180005710\n00000001800057A0\n00000001800057B0\n00000001800059B0\n0000000180005AD0\n0000000180005B70\n0000000180005BB0\n0000000180005BD0\n0000000180005C10\n0000000180005E00\n00000001800062F0\n00000001800064C0\n0000000180006890\n00000001800068D0\n0000000180006A00\n0000000180006BB0\n0000000180006C30\n0000000180006C50\n0000000180007150\n00000001800075B0\n00000001800076A0\n0000000180007C60\nE 0000000180008570\nE 00000001800085E0\nE 00000001800088F0\n0000000180008BD0\n00000001800094F0\n0000000180009B80\n000000018000A040\n000000018000A060\n000000018000A0A0\n000000018000A3E0\n000000018000A420\n000000018000A620\n000000018000A790\n000000018000A890\n000000018000A8C0\n000000018000A930\n000000018000AA40\n000000018000AA70\n000000018000AAF0\n000000018000AB20\n000000018000AB80\n000000018000AC70\n000000018000ACA0\n000000018000AD30\n000000018000ADB0\n000000018000AE00\n000000018000AF40\n000000018000B470\n000000018000B630\n000000018000BA90\n000000018000CFF0\n000000018000D0D0\n000000018000D190\n000000018000D2E0\n000000018000D2F0\n000000018000D300\n000000018000D310\n000000018000D320\n000000018000D330\n000000018000D350\n000000018000D360\n000000018000D450\n000000018000D4C0\n000000018000D910\n000000018000D930\n000000018000E030\n000000018000E5B0\n000000018000EBF0\n000000018000EC00\n000000018000EF90\n000000018000F370\n000000018000F6F0\n000000018000F780\n000000018000F7D0\n000000018000F7E0\n000000018000F800\n000000018000F820\n000000018000F830\n000000018000FA80\n000000018000FCA0\n00000001800102A0\n0000000180010440\n00000001800104B0\n00000001800105D0\n0000000180010680\n0000000180010960\n0000000180010970\n0000000180010980\n0000000180010990\n00000001800109A0\n00000001800109B0\n0000000180010A10\n0000000180010A20\n0000000180010A30\n0000000180010A40\n0000000180010A50\n0000000180010A60\n0000000180010B50\n0000000180010B90\n0000000180010C90\n0000000180010D00\n0000000180010E80\n0000000180010FD0\n0000000180011580\n0000000180011750\n0000000180012050\n0000000180013080\n0000000180013100\n0000000180013120\n0000000180013140\n0000000180013170\n0000000180013180\n0000000180013190\n00000001800131C0\n00000001800131E0\nGuard EH Continuation Table\nAddress\n--------\n00000001800013A3\n00000001800013DA\n0000000180001411\n000000018000143E\n0000000180001460\n000000018000148E\n00000001800014C4\n0000000180001508\n0000000180001640\n00000001800085C4\n0000000180008B93\n000000018000D49B\n0000000180010CE8\nDynamic Value Relocation Table (version: 1)\nSymbol VA: 0000000000000007 IMAGE_DYNAMIC_RELOCATION_FUNCTION_OVERRIDE\nTotal function overrides size: 20 bytes\nBDD data: 20 bytes\nFunction Override (1)\nOriginal RVA: 00013480\nBDD Offset: 0\nRVA array size: 4\nReloc size: C\nRVAs:\n[00000000] 00013480\nBDD (version: 1, 18 bytes):\n[00000000] 0002, 0001, 00000142\n[00000001] 0001, 0001, 00000000\n[00000002] 0000, 0000, 00000000\nFixup RVAs:\n[00000000] = page 00014000 rva 00014011 type 1"
            }
        },

サイバーセキュリティのユースケース

防御(Blue Team)

  • 偽装検出: システム上のファイルのハッシュをTABPEのものと比較することで、正規のシステムファイルになりすました偽のファイルやマルウェア(偽のsvchost.exeなど)を検出できます。
  • フォレンジック分析: ファイルのハッシュをTABPEで検索することで、それがWindows自体に属するものか外部からの脅威かを迅速に判断できます。
  • LOLBin(Living Off the Land Binaries)の識別: 正規のWindowsファイルの機能(インポートとエクスポート経由)を調べることで、攻撃者が悪意のあるコード実行にどの組み込みツールを使用する可能性があるかを確認できます。

攻撃(Red Team)

  • DLLサイドローディング: 正規の実行可能ファイルのインポートテーブルを調べることで、特定の実行可能ファイルがどのDLLをロードするかを判断できます。この情報はDLLサイドローディング技術にとって重要です。
  • セキュリティメカニズムのないファイルの検索: mitigationsセクションを確認することで、ASLRやDEPが欠如しているファイルを見つけることができ、エクスプロイト開発が容易になります。
  • LOLBinの識別: レッドチームにとっては、コード実行、ファイルダウンロード、ネットワーク通信などの機能を持つ正規のWindowsファイルを把握することが重要です。

マルウェア分析とエクスプロイト開発

  • パッカー検出: パックされたマルウェアは異常なセクションを持つことがよくあります。TABPEは正常なファイルのベースラインを提供し、異常をより迅速に発見できるようにします。
  • 緩和策の確認: エクスプロイトを作成する前に、ターゲットファイルで有効なセキュリティメカニズム(ASLR、DEP、CFGなど)を知る必要があります。TABPEはこの情報を提供します。

経時変化の追跡(バイナリ差分)

2つの異なるリリース間でPEファイルを比較することで、以下のことが可能です:

  • 各Patch Tuesdayでどのファイルが変更されたかを正確に確認できます。
  • サイレントセキュリティパッチを特定できます。
  • ファイルの変更を追跡してゼロデイ脆弱性を分析できます。

技術情報

Feature
プラットフォームWindows 10 Pro & Windows 11 Pro (x64)
仮想化環境VMware Workstation (isolated VM, no host interference)
更新頻度Monthly (after each Patch Tuesday)
バージョンあたりのPEファイル数約25,000~31,000ファイル
出力形式JSON(Python、PowerShell、C#などで処理可能)
タグ形式YYYY.M(例:2026年5月は 2026.5
圧縮ファイルサイズ約30MB(元のJSONは約1GB)

免責事項

このプロジェクトは研究および教育目的のみで提供されています。提示されたデータは正規のWindowsファイルのベースラインです。この情報を違法、悪意、または許可されていない活動に使用することは、すべてユーザーの責任です。著者はこのデータの誤用について一切の責任を負いません。

ライセンス

このプロジェクトはMITライセンスのもとで公開されています。

カテゴリ