本 書 は 以 下 の URL からダウンロードできます ファジング 活 用 の 手 引 き 別 冊 ファジング 実 践 資 料 (テストデータ 編 ) https://www.ipa.go.jp/security/vuln/fuzzing.html



Similar documents
Microsoft Word - 不正アクセス行為の禁止等に関する法律等に基づく公安

<4D F736F F D AC90D1955D92E CC82CC895E DD8C D2816A2E646F63>

Ⅰ 調 査 の 概 要 1 目 的 義 務 教 育 の 機 会 均 等 その 水 準 の 維 持 向 上 の 観 点 から 的 な 児 童 生 徒 の 学 力 や 学 習 状 況 を 把 握 分 析 し 教 育 施 策 の 成 果 課 題 を 検 証 し その 改 善 を 図 るもに 学 校 におけ



KINGSOFT Office 2016 動 作 環 境 対 応 日 本 語 版 版 共 通 利 用 上 記 動 作 以 上 以 上 空 容 量 以 上 他 接 続 環 境 推 奨 必 要 2

預 金 を 確 保 しつつ 資 金 調 達 手 段 も 確 保 する 収 益 性 を 示 す 指 標 として 営 業 利 益 率 を 採 用 し 営 業 利 益 率 の 目 安 となる 数 値 を 公 表 する 株 主 の 皆 様 への 還 元 については 持 続 的 な 成 長 による 配 当 可

答申第585号

Microsoft Word - 養生学研究投稿規定(改)

中根・金田台地区 平成23年度補償説明業務

検 討 検 討 の 進 め 方 検 討 状 況 簡 易 収 支 の 世 帯 からサンプリング 世 帯 名 作 成 事 務 の 廃 止 4 5 必 要 な 世 帯 数 の 確 保 が 可 能 か 簡 易 収 支 を 実 施 している 民 間 事 業 者 との 連 絡 等 に 伴 う 事 務 の 複 雑

為 が 行 われるおそれがある 場 合 に 都 道 府 県 公 安 委 員 会 がその 指 定 暴 力 団 等 を 特 定 抗 争 指 定 暴 力 団 等 として 指 定 し その 所 属 する 指 定 暴 力 団 員 が 警 戒 区 域 内 において 暴 力 団 の 事 務 所 を 新 たに 設

PowerPoint プレゼンテーション

質 問 票 ( 様 式 3) 質 問 番 号 62-1 質 問 内 容 鑑 定 評 価 依 頼 先 は 千 葉 県 などは 入 札 制 度 にしているが 神 奈 川 県 は 入 札 なのか?または 随 契 なのか?その 理 由 は? 地 価 調 査 業 務 は 単 にそれぞれの 地 点 の 鑑 定

<819A955D89BF92B28F BC690ED97AA8EBA81418FA48BC682CC8A8890AB89BB816A32322E786C7378>

労働時間と休日は、労働条件のもっとも基本的なものの一つです

続 に 基 づく 一 般 競 争 ( 指 名 競 争 ) 参 加 資 格 の 再 認 定 を 受 けていること ) c) 会 社 更 生 法 に 基 づき 更 生 手 続 開 始 の 申 立 てがなされている 者 又 は 民 事 再 生 法 に 基 づき 再 生 手 続 開 始 の 申 立 てがなさ

リング 不 能 な 将 来 減 算 一 時 差 異 に 係 る 繰 延 税 金 資 産 について 回 収 可 能 性 がないも のとする 原 則 的 な 取 扱 いに 対 して スケジューリング 不 能 な 将 来 減 算 一 時 差 異 を 回 収 できることを 反 証 できる 場 合 に 原 則

入 札 参 加 者 は 入 札 の 執 行 完 了 に 至 るまではいつでも 入 札 を 辞 退 することができ これを 理 由 として 以 降 の 指 名 等 において 不 利 益 な 取 扱 いを 受 けることはない 12 入 札 保 証 金 免 除 13 契 約 保 証 金 免 除 14 入

2 役 員 の 報 酬 等 の 支 給 状 況 平 成 27 年 度 年 間 報 酬 等 の 総 額 就 任 退 任 の 状 況 役 名 報 酬 ( 給 与 ) 賞 与 その 他 ( 内 容 ) 就 任 退 任 2,142 ( 地 域 手 当 ) 17,205 11,580 3,311 4 月 1

[2] 控 除 限 度 額 繰 越 欠 損 金 を 有 する 法 人 において 欠 損 金 発 生 事 業 年 度 の 翌 事 業 年 度 以 後 の 欠 損 金 の 繰 越 控 除 にあ たっては 平 成 27 年 度 税 制 改 正 により 次 ページ 以 降 で 解 説 する の 特 例 (

している 5. これに 対 して 親 会 社 の 持 分 変 動 による 差 額 を 資 本 剰 余 金 として 処 理 した 結 果 資 本 剰 余 金 残 高 が 負 の 値 となるような 場 合 の 取 扱 いの 明 確 化 を 求 めるコメントが 複 数 寄 せられた 6. コメントでは 親

<4D F736F F F696E74202D B E E88E68C9A90DD8BC65F E DC58F4994C52E >

SXF 仕 様 実 装 規 約 版 ( 幾 何 検 定 編 ) 新 旧 対 照 表 2013/3/26 文 言 変 更 p.12(1. 基 本 事 項 ) (5)SXF 入 出 力 バージョン Ver.2 形 式 と Ver.3.0 形 式 および Ver.3.1 形 式 の 入 出 力 機 能 を

は 固 定 流 動 及 び 繰 延 に 区 分 することとし 減 価 償 却 を 行 うべき 固 定 の 取 得 又 は 改 良 に 充 てるための 補 助 金 等 の 交 付 を 受 けた 場 合 にお いては その 交 付 を 受 けた 金 額 に 相 当 する 額 を 長 期 前 受 金 とし

平成19年9月改定

Microsoft PowerPoint - 報告書(概要).ppt

2. ど の 様 な 経 緯 で 発 覚 し た の か ま た 遡 っ た の を 昨 年 4 月 ま で と し た の は 何 故 か 明 ら か に す る こ と 回 答 3 月 17 日 に 実 施 し た ダ イ ヤ 改 正 で 静 岡 車 両 区 の 構 内 運 転 が 静 岡 運

1 書 誌 作 成 機 能 (NACSIS-CAT)の 軽 量 化 合 理 化 電 子 情 報 資 源 への 適 切 な 対 応 のための 資 源 ( 人 的 資 源,システム 資 源, 経 費 を 含 む) の 確 保 のために, 書 誌 作 成 と 書 誌 管 理 作 業 の 軽 量 化 を 図

4 参 加 資 格 要 件 本 提 案 への 参 加 予 定 者 は 以 下 の 条 件 を 全 て 満 たすこと 1 地 方 自 治 法 施 行 令 ( 昭 和 22 年 政 令 第 16 号 ) 第 167 条 の4 第 1 項 各 号 の 規 定 に 該 当 しない 者 であること 2 会 社

一般競争入札について

Microsoft Word - 19年度(行情)答申第076号.doc

独立行政法人国立病院機構

<4D F736F F D2091E F18CB48D C481698E7B90DD8F9590AC89DB816A2E646F63>

Taro-データ公安委員会相互協力事

接続試験実施要領【障害者総合支援法(平成27年4月報酬改定)対応】

Microsoft Word - 19年度(行情)答申第081号.doc

(2)大学・学部・研究科等の理念・目的が、大学構成員(教職員および学生)に周知され、社会に公表されているか

2016 年 度 情 報 リテラシー 変 更 された 状 態 同 様 に 価 格 のセルを 書 式 設 定 する 場 合 は 金 額 のセルをすべて 選 択 し [ 書 式 ]のプルダウンメニューか ら[ 会 計 ]を 選 択 する すると が 追 加 され 金 額 としての 書 式 が 設 定 さ

平 成 27 年 11 月 ~ 平 成 28 年 4 月 に 公 開 の 対 象 となった 専 門 協 議 等 における 各 専 門 委 員 等 の 寄 附 金 契 約 金 等 の 受 取 状 況 審 査 ( 別 紙 ) 専 門 協 議 等 の 件 数 専 門 委 員 数 500 万 円 超 の 受

<4D F736F F D D3188C091538AC7979D8B4B92F F292B98CF092CA81698A94816A2E646F63>

< 現 在 の 我 が 国 D&O 保 険 の 基 本 的 な 設 計 (イメージ)> < 一 般 的 な 補 償 の 範 囲 の 概 要 > 請 求 の 形 態 会 社 の 役 員 会 社 による 請 求 に 対 する 損 免 責 事 由 の 場 合 に 害 賠 償 請 求 は 補 償 されず(

平成25年度 独立行政法人日本学生支援機構の役職員の報酬・給与等について

(別紙3)保険会社向けの総合的な監督指針の一部を改正する(案)

事前チェック提出用現況報告書作成ツール入力マニュアル(法人用)

養 老 保 険 の 減 額 払 済 保 険 への 変 更 1. 設 例 会 社 が 役 員 を 被 保 険 者 とし 死 亡 保 険 金 及 び 満 期 保 険 金 のいずれも 会 社 を 受 取 人 とする 養 老 保 険 に 加 入 してい る 場 合 を 解 説 します 資 金 繰 りの 都

<4D F736F F D208ED089EF95DB8CAF89C193FC8FF38BB CC8EC091D492B28DB88C8B89CA82C982C282A282C42E646F63>

( 別 途 調 査 様 式 1) 減 損 損 失 を 認 識 するに 至 った 経 緯 等 1 列 2 列 3 列 4 列 5 列 6 列 7 列 8 列 9 列 10 列 11 列 12 列 13 列 14 列 15 列 16 列 17 列 18 列 19 列 20 列 21 列 22 列 固 定

<4D F736F F D A94BD837D836C B4B92F62E646F6378>

(Microsoft Word - \221\346\202P\202U\201@\214i\212\317.doc)

3. 選 任 固 定 資 産 評 価 員 は 固 定 資 産 の 評 価 に 関 する 知 識 及 び 経 験 を 有 する 者 のうちから 市 町 村 長 が 当 該 市 町 村 の 議 会 の 同 意 を 得 て 選 任 する 二 以 上 の 市 町 村 の 長 は 当 該 市 町 村 の 議

<4D F736F F D203193FA8AD45F95CA8E86325F89898F4B315F94F093EF8AA98D AD97DF914F82CC8FEE95F182CC8EFB8F C28E8B89BB2E646F63>

Taro13-01_表紙目次.jtd

(Microsoft Word - \203A \225\345\217W\227v\227\314 .doc)

03_主要処理画面.xlsx

大田市固定資産台帳整備業務(プロポーザル審査要項)

PowerPoint プレゼンテーション

(5) 給 与 制 度 の 総 合 的 見 直 しの 実 施 状 況 について 概 要 の 給 与 制 度 の 総 合 的 見 直 しにおいては 俸 給 表 の 水 準 の 平 均 2の 引 き 下 げ 及 び 地 域 手 当 の 支 給 割 合 の 見 直 し 等 に 取 り 組 むとされている

Taro-H19退職金(修正版).jtd

定款  変更

国立研究開発法人土木研究所の役職員の報酬・給与等について

<4D F736F F D208C6F D F815B90A BC914F82CC91CE899E8FF38BB582C982C282A282C42E646F63>

ていることから それに 先 行 する 形 で 下 請 業 者 についても 対 策 を 講 じることとしまし た 本 県 としましては それまでの 間 に 未 加 入 の 建 設 業 者 に 加 入 していただきますよう 28 年 4 月 から 実 施 することとしました 問 6 公 共 工 事 の

2 役 員 の 報 酬 等 の 支 給 状 況 役 名 法 人 の 長 理 事 理 事 ( 非 常 勤 ) 平 成 25 年 度 年 間 報 酬 等 の 総 額 就 任 退 任 の 状 況 報 酬 ( 給 与 ) 賞 与 その 他 ( 内 容 ) 就 任 退 任 16,936 10,654 4,36

入札公告 機動装備センター

Taro13-公示.jtd

Microsoft Word - 全国エリアマネジメントネットワーク規約.docx

育休代替任期付職員制度について

私立大学等研究設備整備費等補助金(私立大学等

学校安全の推進に関する計画の取組事例

-2-

Microsoft Word - 佐野市生活排水処理構想(案).doc

その 他 事 業 推 進 体 制 平 成 20 年 3 月 26 日 に 石 垣 島 国 営 土 地 改 良 事 業 推 進 協 議 会 を 設 立 し 事 業 を 推 進 ( 構 成 : 石 垣 市 石 垣 市 議 会 石 垣 島 土 地 改 良 区 石 垣 市 農 業 委 員 会 沖 縄 県 農

研究者情報データベース

募集新株予約権(有償ストック・オプション)の発行に関するお知らせ

H28記入説明書(納付金・調整金)8

別 添 1 提 案 書 等 作 成 要 領 1 調 達 件 名 PIO-NET2015 に 係 る 運 用 等 支 援 業 務 一 式 2 提 案 書 等 の 提 出 本 調 達 に 係 る 提 案 書 等 は PIO-NET2015 に 係 る 運 用 等 支 援 業 務 一 式 調 達 仕 様

Microsoft Word - ★HP版平成27年度検査の結果

2 県 公 立 高 校 の 合 格 者 は このように 決 まる (1) 選 抜 の 仕 組 み 選 抜 の 資 料 選 抜 の 資 料 は 主 に 下 記 の3つがあり 全 高 校 で 使 用 する 共 通 の ものと 高 校 ごとに 決 めるものとがあります 1 学 力 検 査 ( 国 語 数

Microsoft Word - 目次.doc

<4D F736F F D2095CA8E A90DA91B18C9F93A289F1939A8F D8288B3816A5F E646F63>

返還同意書作成支援 操作説明書

平成21年9月29日

平成15・16年度の建設工事入札参加資格の認定について

注 記 事 項 (1) 当 四 半 期 連 結 累 計 期 間 における 重 要 な 子 会 社 の 異 動 : 無 (2) 四 半 期 連 結 財 務 諸 表 の 作 成 に 特 有 の 会 計 処 理 の 適 用 : 有 ( 注 ) 詳 細 は 添 付 資 料 4ページ 2.サマリー 情 報 (

PowerPoint プレゼンテーション

Microsoft Word 第1章 定款.doc

Microsoft Word - 新提案書作成・審査要領、提案書作成様式(別添3,4)

Microsݯft Word - 91 forܠ2009November.docx

4. その 他 (1) 期 中 における 重 要 な 子 会 社 の 異 動 ( 連 結 範 囲 の 変 更 を 伴 う 特 定 子 会 社 の 異 動 ) 無 (2) 簡 便 な 会 計 処 理 及 び 四 半 期 連 結 財 務 諸 表 の 作 成 に 特 有 の 会 計 処 理 の 適 用 有

b) 参 加 表 明 書 の 提 出 時 において 東 北 地 方 整 備 局 ( 港 湾 空 港 関 係 を 除 く) における 平 成 年 度 土 木 関 係 建 設 コンサルタント 業 務 に 係 る 一 般 競 争 ( 指 名 競 争 ) 参 加 資 格 の 認 定 を 受 けて

別 紙 第 号 高 知 県 立 学 校 授 業 料 等 徴 収 条 例 の 一 部 を 改 正 する 条 例 議 案 高 知 県 立 学 校 授 業 料 等 徴 収 条 例 の 一 部 を 改 正 する 条 例 を 次 のように 定 める 平 成 26 年 2 月 日 提 出 高 知 県 知 事 尾

(5 ) 当 該 指 定 居 宅 介 護 事 業 所 の 新 規 に 採 用 し た 全 て の 居 宅 介 護 従 業 者 に 対 し 熟 練 し た 居 宅 介 護 従 業 者 の 同 行 に よ る 研 修 を 実 施 し て い る こ と (6 ) 当 該 指 定 居 宅 介 護 事 業

1 林 地 台 帳 整 備 マニュアル( 案 )について 林 地 台 帳 整 備 マニュアル( 案 )の 構 成 構 成 記 載 内 容 第 1 章 はじめに 本 マニュアルの 目 的 記 載 内 容 について 説 明 しています 第 2 章 第 3 章 第 4 章 第 5 章 第 6 章 林 地

Taro-08国立大学法人宮崎大学授業

(2) 広 島 国 際 学 院 大 学 ( 以 下 大 学 という ) (3) 広 島 国 際 学 院 大 学 自 動 車 短 期 大 学 部 ( 以 下 短 大 という ) (4) 広 島 国 際 学 院 高 等 学 校 ( 以 下 高 校 という ) ( 学 納 金 の 種 類 ) 第 3 条

の 購 入 費 又 は 賃 借 料 (2) 専 用 ポール 等 機 器 の 設 置 工 事 費 (3) ケーブル 設 置 工 事 費 (4) 防 犯 カメラの 設 置 を 示 す 看 板 等 の 設 置 費 (5) その 他 設 置 に 必 要 な 経 費 ( 補 助 金 の 額 ) 第 6 条 補


2. 会 計 規 程 の 業 務 (1) 規 程 と 実 際 の 業 務 の 調 査 規 程 や 運 用 方 針 に 規 定 されている 業 務 ( 帳 票 )が 実 際 に 行 われているか( 作 成 されている か)どうかについて 調 べてみた 以 下 の 表 は 規 程 の 条 項 とそこに

2 1.ヒアリング 対 象 (1) 対 象 範 囲 分 類 年 金 医 療 保 険 雇 用 保 険 税 備 考 厚 生 年 金 の 資 格 喪 失 国 民 年 金 の 加 入 老 齢 給 付 裁 定 請 求 など 健 康 保 険 の 資 格 喪 失 国 民 健 康 保 険 の 加 入 健 康 保 険

Transcription:

ファジング 実 践 資 料 (テストデータ 編 ) ファジング 活 用 の 手 引 き 別 冊 効 果 的 なファジングツールの 選 定 につながるテストデータの 理 解 2016 年 3 月

本 書 は 以 下 の URL からダウンロードできます ファジング 活 用 の 手 引 き 別 冊 ファジング 実 践 資 料 (テストデータ 編 ) https://www.ipa.go.jp/security/vuln/fuzzing.html

目 次 目 次... 1 本 書 の 要 旨... 2 本 書 の 想 定 読 者... 3 本 書 の 構 成... 3 本 書 を 読 む 上 での 注 意 事 項... 3 1. ファジング の 要 点... 4 2. 背 景... 5 2.1. 製 品 開 発 における ファジング 導 入 の 推 進... 5 2.2. 効 果 的 なファジングツール 選 定 につながる テストデータ の 理 解... 5 3. ファジングにおけるテストデータ... 6 3.1. ファジングにおける テストデータ とは... 6 3.2. データ 構 造 の どの 部 分 を どのように 細 工 するか... 8 3.3. テストデータのまとめ... 21 4. テストデータの 実 例... 21 4.1. IP パケットのテストデータ... 22 4.2. TCP パケットのテストデータ... 26 4.3. HTTP リクエストのテストデータ... 31 4.4. UPnP リクエストのテストデータ... 32 4.5. JPEG 画 像 のテストデータ... 34 4.6. 無 線 LAN フレームのテストデータ... 38 5. テストデータに 関 する 知 識 の 活 用... 40 5.1. 一 歩 進 んだ 知 識 の 活 用 :ファジングツールの 独 自 開 発... 40 6. おわりに... 42 7. 本 書 に 関 連 する 仕 様 / 規 格... 42 付 録 : 検 出 できるテストデータが 分 かる 脆 弱 性 情 報... 43 1

ファジング 実 践 資 料 (テストデータ 編 ) ~ 効 果 的 なファジングツールの 選 定 につながるテストデータの 理 解 ~ 2013 年 11 月 7 日 IPA( 独 立 行 政 法 人 情 報 処 理 推 進 機 構 ) セキュリティセンター 本 書 の 要 旨 本 書 は セキュリティテスト ファジング (1 章 参 照 )で 問 題 を 検 出 するための テストデータ に 焦 点 を 当 てた 実 践 資 料 である 効 果 的 にファジングを 実 践 するためには ファジングツールの 特 徴 をふまえて 複 数 のファジングツールを 活 用 することが 有 効 である これを 実 践 するためには ファジングにおける テストデータ の 理 解 が 欠 かせない 本 書 では IPA が 24 種 類 のファジングツールを 使 用 した 経 験 をもとに ファジングにおけるテストデータの 考 え 方 データ 構 造 の どの 部 分 を どのように 細 工 するか を 解 説 している また 可 能 な 範 囲 でテストデータの 実 例 も 掲 載 して テストデータの 理 解 を 深 めることができるように 工 夫 した 本 書 でファジングにおけるテストデータを 知 っていただき 特 徴 の 違 うファジングツールを 選 定 して 効 果 的 な ファジングを 実 践 していただきたい さらに 本 書 で 紹 介 してテストデータの 考 え 方 が ファジングツールの 独 自 開 発 の 一 助 となれば 幸 いである 2

本 書 の 想 定 読 者 製 品 開 発 企 業 においてファジングを 活 用 している 技 術 者 製 品 開 発 企 業 におけるテスト 関 係 者 (テスト 計 画 の 立 案 者 や 実 際 のテスト 担 当 者 など) 本 書 の 構 成 本 書 は 7 つの 章 と 1 つの 付 録 で 構 成 されている まず 1 章 と 2 章 で 本 書 を 読 む 上 での 前 提 知 識 ( ファジング の 要 点 や 本 書 をまとめる 経 緯 )を 説 明 する 続 く 3 章 では ファジング におけるテストデータの 考 え 方 を 説 明 する 4 章 では 3 章 で 説 明 したテストデータ の 考 え 方 を 具 体 的 にイメージできるように テストデータの 実 例 を 紹 介 する そして 5 章 では 本 書 で 解 説 したテ ストデータに 関 する 知 識 をどう 活 用 すればよいか IPA の 考 えを 述 べる 最 後 に 6 章 にて 本 書 を 締 める 7 章 には 本 書 に 関 連 する 仕 様 と 規 格 を 掲 載 している そして 付 録 には その 脆 弱 性 を 検 出 できるテストデー タが 分 かる 脆 弱 性 情 報 を 掲 載 している 本 書 を 読 む 上 での 注 意 事 項 IPA が 使 用 したファジングツールの 特 徴 を 抽 象 化 して テストデータの 実 例 を 交 えながら 本 書 をまとめた した がって 次 の 2 つの 制 約 がある 本 書 ではテストデータに 関 する 事 項 を 網 羅 していない 本 書 のテストデータを 使 うことで 必 ず 脆 弱 性 を 検 出 できるわけではない 3

1. ファジング の 要 点 まず 本 書 を 読 むために ファジング の 要 点 を 説 明 しよう ファジング( 英 名 :fuzzing) とは 多 数 の 問 題 を 起 こしそうなデータ( 例 : 極 端 に 長 い 文 字 列 )を 対 象 製 品 に 送 り 込 み 対 象 製 品 の 動 作 状 態 ( 例 : 製 品 が 異 常 終 了 する)から 脆 弱 性 などを 発 見 するテスト 手 法 である 本 書 では この 問 題 を 起 こしそうなデータ を テストデータ 1 と 呼 ぶ 図 1 にファジングの 2 つの 特 徴 を 示 した これらのうち 特 に ファジングツールによってテストデータが 異 なること を 覚 えておいてほしい ファジングそのものに 興 味 を 持 たれた 方 は ファジング 活 用 の 手 引 き などのファジング 関 連 資 料 2 を 参 照 してほしい 図 1 ファジングの 特 徴 1 ファズ( 英 名 :fuzz)と 呼 ばれることもある 2 IPA:ファジング 活 用 の 手 引 き https://www.ipa.go.jp/security/vuln/fuzzing.html 4

2. 背 景 2.1. 製 品 開 発 における ファジング 導 入 の 推 進 IPA では 2011 年 8 月 から ファジング の 有 効 性 実 証 と 普 及 推 進 を 行 う 脆 弱 性 検 出 の 普 及 活 動 3 を 実 施 している 2013 年 6 月 までに 組 込 み 製 品 21 製 品 (ブロードバンドルータやスマートテレビなど)に 対 する ファジングで 合 計 24 件 の 脆 弱 性 を 検 出 し ファジングの 有 効 性 を 実 証 してきた そして このファジング 実 績 で 得 られた 知 見 をもとに 製 品 開 発 企 業 にファジングの 普 及 啓 発 をすすめている IPA の 活 動 を 通 じて 新 たにファジングの 導 入 を 検 討 する 製 品 開 発 企 業 も 出 てきており 少 しずつではあ るが ファジングを 意 識 する 製 品 開 発 企 業 が 増 えている 2.2. 効 果 的 なファジングツール 選 定 につながる テストデータ の 理 解 ファジング 実 績 から IPA では 次 のようなファジング 活 用 方 法 を 導 き 出 した 可 能 な 限 りさまざまな 機 能 に 対 してファジングを 実 施 する 検 出 できる 脆 弱 性 を 補 うために 複 数 のファジングツールを 使 用 する この 活 用 方 法 を 実 践 するためには ファジングツールごとの テストデータ の 違 いを 理 解 する 必 要 がある ファジングツールが 送 るテストデータを 理 解 していないと 製 品 の 機 能 に 合 わせてファジングツールを 選 べ ず ファジングツールごとの 検 出 できる 脆 弱 性 の 違 いを 判 断 できない しかし ファジングツールの テストデータ は 一 般 的 にブラックボックスな 状 態 であるため ファジングツー ルを 試 用 して テストデータ を 調 べなければならない これに 加 えて IPA が 把 握 している 限 りでは ファジ ングにおける テストデータ を 解 説 している 資 料 は 少 ない ファジング の 専 門 書 籍 のなかには テストデー タ に 解 説 している 書 籍 もあるが 入 門 書 に 位 置 づけられるものではない そこで テストデータ を 解 説 することで 効 果 的 なファジングツールの 選 定 につながると 考 え これまで IPA が 24 種 類 のファジングツール 4 を 使 って 検 証 を 重 ねてきた 経 験 を 基 に 本 書 をまとめた 3 IPA:ソフトウェア 製 品 における 脆 弱 性 の 減 少 を 目 指 す 脆 弱 性 検 出 の 普 及 活 動 を 開 始 https://www.ipa.go.jp/about/press/20110728.html 4 商 用 製 品 2 種 類 オープンソースソフトウェア 22 種 類 のファジングツールである 5

3. ファジングにおけるテストデータ 本 章 では ファジングにおける テストデータ を 明 確 にして そのテストデータにおける 考 え 方 データの どの 部 分 を どのように 細 工 するか を 解 説 する 3.1. ファジングにおける テストデータ とは ファジングにおける テストデータ とは 製 品 に 何 か 問 題 を 起 こしそうなデータである 製 品 が 受 け 取 るデ ータの 仕 様 に 則 っていない 5 データをテストデータとしてイメージしていただきたい 3.1.1. 製 品 が 受 け 取 るデータ 製 品 は さまざまなデータを 受 け 取 る 製 品 がネットワークで 通 信 するのであれば 通 信 データを 受 け 取 る そして この 通 信 データの 中 身 も 製 品 によって 異 なる また 画 像 や 動 画 などを 再 生 する 機 能 を 持 つ 製 品 であれば 画 像 ファイルや 動 画 ファイルなどを 受 け 取 る 製 品 が 受 け 取 るデータには 仕 様 などで データ 構 造 が 決 められている 製 品 はこのデータ 構 造 をもとに データを 解 釈 する 表 3-1 に 3 種 類 の 製 品 が 受 け 取 るデータとそのデータ 構 造 の 関 係 をまとめた 表 3-1 のウェブサーバを 例 に ウェブサーバが 受 け 取 るデータを 考 えてみよう ウェブサーバは ウェブブラウザなどから HTTP リクエスト を 受 け 取 る この HTTP リクエスト のデータ 構 造 は アプリケーションプロトコル HTTP(Hyper Text Transfer Protocol) 6 で 決 められている ウェブサー バは 受 け 取 ったデータを HTTP に 則 って 解 釈 し そのリクエストにあわせて 応 答 する 表 3-1 製 品 が 受 け 取 るデータとそのデータ 構 造 製 品 受 け 取 るデータ データ 構 造 ネットワークで 通 信 する 製 品 パケットデータ IPやTCPなどのネットワークプロトコル 画 像 を 取 り 扱 う 製 品 画 像 ファイル JPEG などの 画 像 形 式 ウェブサーバ HTTP リクエスト HTTP もし 受 け 取 ったデータがデータ 構 造 において 異 常 なものであった 場 合 製 品 に 何 らかの 問 題 が 生 じる 可 能 性 がある データの 一 部 が 壊 れた HTTP リクエストを 受 け 取 り ウェブサーバが 異 常 終 了 してしまう 様 子 をイメージしていただきたい ファジングツールはこのように 問 題 を 起 こしそうなデータを 意 図 的 に 作 り それで 製 品 に 問 題 が 起 きない かテストする 5 RFC(Request For Comment)で 規 定 されているネットワークプロトコルなどの 場 合 には RFC に 準 拠 していないデータ が 該 当 する 6 RFC2616:Hypertext Transfer Protocol -- HTTP/1.1 http://tools.ietf.org/html/rfc2616 6

3.1.2. ファジングツールによるテストデータの 作 り 方 ファジングツールのテストデータの 作 り 方 は 製 品 が 受 け 取 るデータのデータ 構 造 を 解 釈 するかどうかで 大 きく 2 種 類 に 分 かれる 表 3-2 は その 2 種 類 の 作 り 方 を 示 している 表 3-2 ファジングツールのテストデータの 作 り 方 No データ 構 造 の 解 釈 テストデータの 作 り 方 1 解 釈 する データ 構 造 の 要 素 をそれぞれ 細 工 してテストデータを 作 る 7 2 解 釈 しない 元 となるデータを 読 み 込 み そのデータをランダムに 変 更 する 8 まったくランダムな 値 からデータを 作 る 9 表 3-2 の No.1, No.2 どちらの 作 り 方 でも 理 論 的 には 同 じテストデータができる しかし No.2 の 作 り 方 は 無 尽 蔵 に 時 間 が 掛 かってしまうため 多 くのファジングツールは No.1 の 作 り 方 を 採 用 している IPA が 使 用 したファジングツールも No.1 の 作 り 方 を 採 用 しているものが 多 かった No.1 の 作 り 方 にもデータ 構 造 の 要 素 を 細 工 する 方 法 が 色 々あるため No.1 の 作 り 方 を 採 用 していてもフ ァジングツールごとにテストデータが 異 なる したがって No.1 の 作 り 方 におけるデータ 構 造 の 要 素 を 細 工 す る 方 法 を 理 解 すると ファジングツールの 特 徴 が 分 かるようになる そこで 3.2 節 から IPA が 使 用 したファジングツールのデータを 細 工 する 方 法 を 抽 象 化 して No.1 のデー タを 細 工 する 考 え 方 をまとめた なお 本 節 以 降 特 に 断 りなく テストデータ と 書 いた 場 合 には No.1 の 方 法 で 作 るテストデータを 指 し ファジングツール と 書 いた 場 合 には No.1 の 方 法 でテストデータを 作 るファジングツールを 指 す 7 Generation based fuzzing Smart fuzzing Intelligent fuzzing などと 呼 ばれる 8 Mutation based fuzzing などと 呼 ばれる 9 Dumb fuzzing などと 呼 ばれる 7

3.2. データ 構 造 の どの 部 分 を どのように 細 工 するか ファジングツールは 対 象 製 品 が 受 け 取 るデータをもとにテストデータを 作 る このテストデータを 作 るとき には データ 構 造 の どの 部 分 を どのように 細 工 するかが 重 要 となる 図 2 は ファジング 対 象 の 製 品 が 受 け 取 るデータと そのデータをもとに 作 ったテストデータの 例 を 示 して いる この 製 品 は フィールド 1 フィールド 2 フィールド 3 フィールド 4 の 4 つの 要 素 を 持 つデー タを 受 け 取 る( 図 2 上 部 ) このデータの フィールド 1 の 値 を 極 端 に 長 い 文 字 列 (AAA...)に 置 き 換 えると そのデータはテストデータとなる( 図 2 下 部 ) このように ファジングツールは 対 象 製 品 が 受 け 取 るデータ の 要 素 を 細 工 してテストデータを 作 る ファジングツールによって データ 構 造 の 細 工 する 箇 所 ( どの 部 分 )と 細 工 方 法 ( どのように 細 工 する か)が 異 なる 図 2 の 例 では フィールド 1 という 一 つの 要 素 を 対 象 としたが フィールド 1 と フィールド 2 のように 複 数 個 の 要 素 を 対 象 とする 場 合 もある また 図 2 の 例 では 特 定 の 値 に 置 き 換 えたが フィール ド 1 の 値 そのものを 削 除 してしまう 場 合 もある このデータ 構 造 の 細 工 する 箇 所 細 工 方 法 を 3.2.1 節 3.2.2 節 で 詳 しく 解 説 していきたい 図 2テストデータの 例 8

3.2.1. 細 工 する 箇 所 :データ 構 造 の どの 部 分 を 細 工 するのか 対 象 製 品 が 受 け 取 るデータのすべての 部 分 が テストデータを 作 るための 細 工 する 箇 所 になりえる HTTP リクエストと TCP パケットの 2 つを 例 に 挙 げて データのすべての 部 分 が 細 工 する 箇 所 となりえること を 説 明 する まず HTTP リクエストを 例 に 挙 げて 説 明 しよう ウェブサーバに 対 するファジングを 考 えると ファジングツ ールはウェブサーバが 受 け 取 る HTTP リクエストを 細 工 してテストデータを 作 る 図 3 は HTTP リクエストの 例 を 示 している HTTP リクエストのデータ 構 造 は RFC2616 10 で 規 定 されてい る HTTP は HTTP ヘッダと HTTP ボディの 2 つの 要 素 で 構 成 される そして HTTP ヘッダには リクエスト ラインと 複 数 の HTTP ヘッダ(Host ヘッダや User-Agent ヘッダなど)の 要 素 がある これらの HTTP のどの 要 素 も 細 工 する 対 象 となりえる HTTP リクエストにおいて 細 工 できる 箇 所 を 具 体 的 にみてみよう 図 3 の HTTP リクエストを 細 工 してテス トデータを 作 る 場 合 HTTP ヘッダの 名 前 ( 図 3 青 色 部 分 )や HTTP ヘッダの 値 ( 図 3 赤 色 部 分 ) HTTP ヘッダの 名 前 と 値 ( 図 3 緑 色 部 分 ) 複 数 の HTTP ヘッダ ( 図 3 灰 色 部 分 )などを 細 工 すること が 考 えられる 図 3 HTTP リクエストの 細 工 する 箇 所 10 RFC 2616 - Hypertext Transfer Protocol -- HTTP/1.1 http://tools.ietf.org/html/rfc2616 9

続 いて TCP パケットを 例 に 挙 げて 説 明 しよう TCP 11 で 通 信 するソフトウェアに 対 するファジングを 考 える と ファジングツールはそのソフトウェアが 受 け 取 る TCP パケットを 細 工 してテストデータを 作 る 図 4 は RFC793 で 規 定 されている TCP のデータ 構 造 を 示 している TCP パケットはこのデータ 構 造 を 基 に 構 成 される TCP では 1 ビット 単 位 で 要 素 が 規 定 されているが HTTP と 同 様 に TCP のどの 要 素 も 細 工 する 対 象 となりえる TCP パケットにおいて 細 工 できる 箇 所 を 具 体 的 にみてみよう TCP パケットを 細 工 してテストデータを 作 る 場 合 Sequence Number ヘッダ ( 図 4 青 色 部 分 )や Window ヘッダ ( 図 4 赤 色 部 分 ) Options ヘッダ ( 図 4 緑 色 部 分 )などを 細 工 することが 考 えられる また ヘッダの 一 部 分 だけではなく 複 数 の 部 分 をまとめて 細 工 すること( 図 4 青 色 部 分 と 赤 色 部 分 など)も 考 えられる 図 4 TCP パケットの 細 工 する 箇 所 HTTP リクエストや TCP パケットの 例 のように 対 象 製 品 が 受 け 取 るデータのデータ 構 造 に 則 っていれば データの どの 部 分 も 細 工 する 対 象 となりえる ただし 検 査 効 率 化 のため 一 部 のフィールドを 対 象 外 と することもある 11 RFC 793 - Transmission Control Protocol http://tools.ietf.org/html/rfc793 10

3.2.2. 細 工 方 法 : どのように 細 工 するのか ファジングツールは 選 んだ 箇 所 をデータ 構 造 と 照 らし 合 わせたときに 異 常 なものとなるように 細 工 する IPA が 使 用 してきたファジングツールを 分 析 すると (a), (b), (c)の 3 種 類 の 細 工 方 法 が 用 いられていた この 3 種 類 の 細 工 方 法 を(a), (b), (c)の 順 番 に 説 明 していきたい (a) 特 定 の 値 に 細 工 する (b) データ 構 造 そのものを 細 工 する (c) データ 間 のつながり を 細 工 する 本 節 では 細 工 方 法 を 説 明 するためにネットワークプロトコルやファイル 形 式 などの 仕 様 / 規 格 を 多 数 引 用 しているが それらを 熟 知 している 必 要 はない 本 節 を 読 む 上 で 必 要 な 事 項 については 文 中 で 解 説 してい る 仕 様 / 規 格 そのものを 確 認 したい 場 合 7 章 を 参 照 していただきたい (a) 特 定 の 値 に 細 工 する ファジングツールの 細 工 方 法 には データ 構 造 における 値 を 特 定 の 値 に 細 工 する 方 法 がある 図 5 は その 細 工 方 法 のイメージ 図 である ファジングツールは データ 構 造 の 細 工 する 部 分 に 合 わせて 特 定 の 値 を 選 び その 値 で 該 当 部 分 を 置 き 換 えたり その 値 を 挿 入 したりする 特 定 の 値 には 特 定 の 脆 弱 性 検 出 に 特 化 した 値 や 特 別 な 意 味 を 持 つ 値 などがある 表 3-3 に 特 定 の 脆 弱 性 検 出 に 特 化 した 値 の 例 表 3-4 に 特 別 な 意 味 を 持 つ 値 の 例 を 示 す 特 定 の 脆 弱 性 検 出 に 特 化 した 値 には バッファオーバーフローの 脆 弱 性 を 検 出 する 極 端 に 長 い 文 字 列 や 書 式 文 字 列 の 問 題 を 検 出 する 書 式 文 字 列 または 数 値 処 理 に 関 する 問 題 を 検 出 する 意 味 のあ る 数 値 などがある 特 別 な 意 味 を 持 つ 値 には C 言 語 などの 言 語 処 理 系 で 文 字 列 の 終 端 を 意 味 する ヌ ルバイト やデータ 構 造 における 要 素 の 区 切 りを 意 味 する 区 切 り 文 字 などがある 特 定 の 値 に 細 工 する ファジング ツール テストデータ 対 象 製 品 データ 構 造 の 値 に 注 目 して 特 定 の 値 に 細 工 する フィールド1 フィールド3 フィールド2 フィールド4 図 5 特 定 の 値 に 細 工 する(イメージ 図 ) 11

表 3-3 特 定 の 脆 弱 性 検 出 に 特 化 した 値 の 例 脆 弱 性 名 値 バッファオーバーフローの 脆 弱 性 極 端 に 長 い 文 字 列 ( 例 : A 1000 個 以 上 ) 書 式 文 字 列 の 問 題 C 言 語 の printf() 関 数 などで 使 う 書 式 文 字 列 ( 例 : %s%s%s%s ) 数 値 処 理 に 関 する 問 題 ( 整 数 オーバーフローの 脆 弱 性 など) バッファの 上 限 値 や 下 限 値 として 使 われそうな 数 値 やプログラミング 言 語 のデータ 型 のサイズに 関 連 する 数 値 ( 例 :0, 65535 や 65536) 表 3-4 特 別 な 意 味 を 持 つ 値 の 例 特 別 な 意 味 を 持 つ 値 値 ヌルバイト(NULL) 0x00 (16 進 数 表 記 ) (C 言 語 などの 言 語 処 理 系 では 文 字 列 の 終 端 を 意 味 する) 区 切 り 文 字 データ 構 造 におけるデータの 区 切 りを 意 味 する 値 例 1: 改 行 コード( 0x0d (16 進 数 表 記 )や 0x0a (16 進 数 表 記 )) 例 2: や # 具 体 的 なイメージを 掴 むために HTTP リクエストのテストデータを 例 示 しよう 図 6 は HTTP リクエストを 特 定 の 値 に 細 工 する 様 子 を 示 している 図 6 では HTTP リクエストにおけ る URI / を 細 工 してテストデータを 作 る URI / を 極 端 に 長 い 文 字 列 に 置 き 換 えると URI を 処 理 する 部 分 にバッファオーバーフローの 脆 弱 性 がないかテストするデータになる HTTP リクエストラインにおけるURI / を 細 工 する 極 端 に 長 い 文 字 列 (AAA ) に 置 き 換 える GET / HTTP/1.1 Host: www.ipa.go.jp User Agent: Mozilla/5.0 (Windows Accept: text/html, Accept Language: ja,en us;q=0.7,en;q=0.3 Accept Encoding: gzip, deflate DNT: 1 Connection: keep alive GET AAAAAAAAAAAAAAAAA HTTP/1.1 Host: www.ipa.go.jp User Agent: Mozilla/5.0 (Windows Accept: text/html, Accept Language: ja,en us;q=0.7,en;q=0.3 Accept Encoding: gzip, deflate DNT: 1 Connection: keep alive 図 6 HTTP リクエストを 特 定 の 値 で 細 工 する 様 子 テストデータ 実 例 :4.3 節 4.4.1 節 4.5.1 節 へ 12

(b) データ 構 造 そのものを 細 工 する ファジングツールの 細 工 方 法 には データ 構 造 そのものを 細 工 する 方 法 がある 図 7 は その 細 工 方 法 のイメージ 図 である データ 構 造 そのものを 細 工 するというとイメージしづらいが 仕 様 などで 決 まって いるデータ 構 造 から 逸 脱 するように 意 図 的 にデータ 構 造 を 壊 す と 理 解 していただくとよいだろう データ 構 造 そのものを 細 工 する 方 法 として 次 の1から4の 4 種 類 の 方 法 を 取 り 上 げる この 4 種 類 の 方 法 を 1 2 3 4の 順 番 に 説 明 していきたい 1 仕 様 で 明 確 に 決 まっていない 値 などに 細 工 する 2 同 じ 要 素 を 一 定 回 数 繰 り 返 す 3 データ 長 と 実 際 のデータの 長 さを 矛 盾 させる 4 データ 構 造 全 体 を 仕 様 と 異 なるように 細 工 する データ 構 造 そのものを 細 工 する ファジング ツール テストデータ 対 象 製 品 データ 構 造 そのものに 注 目 して 仕 様 などで 決 まっているデータ 構 造 から 逸 脱 するように 意 図 的 にデータ 構 造 を 壊 す フィールド1 フィールド3 フィールド2 フィールド4 図 7 データ 構 造 そのものを 細 工 する(イメージ 図 ) 13

1 仕 様 で 明 確 に 決 まっていない 値 などに 細 工 する この 細 工 方 法 では 細 工 する 箇 所 を 仕 様 で 明 確 に 決 まっていない 値 などで 置 き 換 えたり 挿 入 したりす る この 仕 様 で 明 確 に 決 まっていない 値 には 仕 様 で 規 定 されていない 値 や 今 後 の 拡 張 などを 意 識 し て 予 約 されている 値 などがある 具 体 的 なイメージを 掴 むために 無 線 LAN のテストデータを 例 示 しよう 図 8 は 無 線 LAN でやり 取 りされる 無 線 LAN フレームに 仕 様 で 明 確 に 決 まっていない 値 を 追 加 する 様 子 を 示 している 無 線 LAN フレームのデータ 構 造 は IEEE Std 802.11 12 で 決 められている この 規 格 では Information Element( 以 降 IE) という 部 分 が 定 義 されている( 青 枠 部 分 ) そして この IE には 予 約 状 態 となっている 要 素 が 多 くあり Element ID 129 13 はそれらの 一 つである 無 線 LAN フレームに ElementID 129 の IE を 追 加 すると 仕 様 で 明 確 に 決 まっていない ElementID 129 があったときに 問 題 が 起 きないかテストするデータとなる 図 8 無 線 LAN フレームに 仕 様 で 明 確 に 決 まっていない 値 を 追 加 する 様 子 テストデータ 実 例 :4.6 節 へ 12 IEEE Std 802.11-2012 http://standards.ieee.org/findstds/standard/802.11-2012.html 13 p.474 8.4.2.1 General, "IEEE Std 802.11-2012" 14

2 同 じ 要 素 を 一 定 回 数 繰 り 返 す この 細 工 方 法 では データ 構 造 の 細 工 する 部 分 を 一 定 回 数 繰 り 返 す 繰 り 返 す 回 数 はファジングツール に 依 存 する 具 体 的 なイメージを 掴 むために HTTP リクエストのテストデータを 例 示 しよう 図 9 は HTTP リクエストの 要 素 を 一 定 回 数 繰 り 返 す 様 子 を 示 している 図 9 では HTTP リクエストの Host ヘッダのヘッダ 名 および 値 を 細 工 してテストデータを 作 る Host ヘッダのヘッダ 名 および 値 を 5 回 繰 り 返 すと 同 じ Host ヘッダが 複 数 あるときに 問 題 が 起 きないかテストするデータになる Hostヘッダのヘッダ 名 および 値 を 細 工 する Hostヘッダのヘッダ 名 および 値 を5 回 繰 り 返 す GET / HTTP/1.1 Host: www.ipa.go.jp User Agent: Mozilla/5.0 (Windows Accept: text/html, Accept Language: ja,en us;q=0.7,en;q=0.3 Accept Encoding: gzip, deflate DNT: 1 Connection: keep alive GET / HTTP/1.1 Host: www.ipa.go.jp Host: www.ipa.go.jp Host: www.ipa.go.jp Host: www.ipa.go.jp Host: www.ipa.go.jp User Agent: Mozilla/5.0 (Windows Accept: text/html, Accept Language: ja,en us;q=0.7,en;q=0.3 Accept Encoding: gzip, deflate DNT: 1 Connection: keep alive 図 9 HTTP リクエストの 要 素 を 一 定 回 数 繰 り 返 す 様 子 テストデータ 実 例 :4.4.2 節 へ 15

3 データ 長 と 実 際 のデータの 長 さを 矛 盾 させる この 細 工 方 法 では データ 構 造 における データ 長 を 実 際 のデータの 長 さと 矛 盾 する 値 で 置 き 換 える データ 構 造 のなかには データのタイプ データ 長 そして データの 値 の 3 つの 要 素 で 構 成 される データ 構 造 ( 以 降 TLV 構 造 14 )がある TLV 構 造 における データ 長 は 一 般 的 にこれら 3 つの 要 素 全 体 の 長 さ または データの 値 の 長 さを 示 す この データ 長 をそれが 示 す 長 さよりも 大 きな 値 や 小 さな 値 に 置 き 換 えることで TLV 構 造 に 矛 盾 を 生 じさせてしまう 具 体 的 なイメージを 掴 むために TCP パケットのテストデータを 例 示 しよう 図 10 は TCP Options ヘッダ Window Scale Option のデータ 長 を 細 工 する 様 子 を 示 している Window Scale Option は TLV 構 造 であり そのデータ 長 Length は RFC1323 15 で 3 と 定 義 されている( 図 10 の 青 色 部 分 ) この Length を 3 以 外 の 値 にすると Window Scale Option を 取 り 扱 うときに 問 題 が 起 きない かテストするデータとなる( 図 10 では Length を 0 とした) 図 10 TCP Options ヘッダ Window Scale Option のデータ 長 を 細 工 する 様 子 テストデータ 実 例 :4.6 節 へ 14 Tag-Length-Value(TLV) または Type-Length-Value(TLV) 構 造 と 呼 ばれることがある 15 2.2 Window Scale Option, RFC 1323 - TCP Extensions for High Performance, http://tools.ietf.org/html/rfc1323#section-2 16

4 データ 構 造 全 体 を 仕 様 と 異 なるように 細 工 する この 細 工 方 法 では データ 構 造 全 体 を 仕 様 と 異 なるように 細 工 する 仕 様 と 異 なるように 細 工 する 方 法 に は データ 構 造 の 要 素 の 順 序 を 仕 様 と 異 なるものに 変 えること や 仕 様 で 定 義 されていない 要 素 を 追 加 すること などがある 具 体 的 なイメージを 掴 むために JPEG 画 像 ファイルのテストデータを 例 示 しよう 図 11 は Exif 16 形 式 の JPEG 画 像 ファイルを 仕 様 と 異 なるように 細 工 する 様 子 を 示 している Exif 形 式 の データ 構 造 は デジタルスチルカメラ 用 画 像 ファイルフォーマット 規 格 Exif 2.3 17 という 規 格 で 決 められてい る Exif 形 式 の JPEG 画 像 ファイルは 複 数 のセグメント(SOI セグメントや APP1 セグメントなど)と 呼 ばれる 要 素 で 構 成 される Exif 形 式 の 規 格 によると SOI セグメントの 後 には APP1 セグメントが 続 くことになってい る この SOI セグメントの 後 に 余 分 な SOF セグメントを 追 加 すると セグメントの 順 序 が Exif 形 式 の 規 格 と 異 なっているときに 問 題 が 起 きないかテストするデータとなる Exifの 規 格 では SOIセグメントの 次 にはAPP1 セグメントが 続 く SOI APP1 DQT DHT SOF SOS SOIセグメントの 後 に 余 分 なSOFセグ メントを 追 加 する( 既 存 の SOF セグ メントはそのままとする) SOI SOF APP1 DQT DHT SOF SOS 圧 縮 データ EOI 圧 縮 データ EOI p.14 2.5.4 JPEG 圧 縮 データの 基 本 構 造, デジタルスチールカメラ 用 画 像 ファイルフォーマット 規 格 Exif 2.3, p.68 2.7. 使 用 するJPEGメーカセグメント, デジタルスチールカメラ 用 画 像 ファイルフォーマット 規 格 Exif 2.3 の 情 報 を 基 に 作 成 http://www.cipa.jp/hyoujunka/kikaku/pdf/dc 008 2010_J.pdf 図 11 Exif 形 式 の JPEG 画 像 ファイルにおけるテストデータの 例 テストデータ 実 例 :4.5.2 節 へ 16 Exchangeable image file format for digital still cameras JPEG 画 像 のデータ 形 式 の 一 つである 17 デジタルスチルカメラ 用 画 像 ファイルフォーマット 規 格 Exif 2.3 http://www.cipa.jp/std/documents/j/dc-008-2012_j.pdf 17

(c) データ 間 のつながり を 細 工 する ファジングツールの 細 工 方 法 には 複 数 のデータの データ 間 のつながり を 細 工 する 方 法 がある 図 12 は その 細 工 方 法 のイメージ 図 である データ 構 造 によっては それぞれのデータのつながりを 意 味 する 要 素 がある 例 えば ネットワークプロト コル IP(Internet Protocol) であれば IP ヘッダ Fragment Offset 18 TCP であれば TCP ヘッダ Sequence Number 19 が 挙 げられる これらの 要 素 を 細 工 することで データ 間 のつながりに 問 題 を 生 じさ せる 具 体 的 なイメージを 掴 むために IP ヘッダ Fragment Offset を 細 工 するときの 考 え 方 TCP ヘッダ Sequence Number を 細 工 するときの 考 え 方 を 例 示 しよう データ 間 のつながり を 細 工 する ファジング ツール データ 間 のつながり を 意 味 する 要 素 (この 図 で は フィールド3 )に 注 目 し て データ 間 のつながりに 問 題 が 生 じるように 細 工 する テストデータ(1/n) フィールド1 フィールド3 テストデータ(1/n) フィールド2 フィールド4 テストデータ(2/n) フィールド1 フィールド3 テストデータ(2/n) テストデータ(3/n) フィールド2 フィールド4 テストデータ(3/n) フィールド1 フィールド3 フィールド2 フィールド4 対 象 製 品 図 12 データ 間 のつながり を 細 工 する(イメージ 図 ) 18 Fragment Offset, 3.1. Internet Header Format, RFC791, http://tools.ietf.org/html/rfc791#section-3.1 19 3.3. Sequence Numbers, RFC793, http://tools.ietf.org/html/rfc793#section-3.3 18

IP ヘッダ Fragment Offset を 細 工 するときの 考 え 方 Fragment Offset は 複 数 の IP パケットにデータを 分 割 したときに それぞれの IP パケットがデータの どの 部 分 を 送 っているかを 示 す 値 である ネットワークの 最 大 伝 送 単 位 (MTU:Maximum Transmission Unit)を 超 えるデータを IP パケットで 送 信 する とき 複 数 の IP パケットにデータを 分 割 して 送 る このとき それぞれの IP パケットの Fragment Offset に は その IP パケットのデータが 分 割 する 前 のどの 部 分 であるか を 示 す 値 が 設 定 される データを 分 割 した IP パケット 群 を 受 け 取 った 製 品 は Fragment Offset をもとに 元 のデータを 組 み 立 てる 具 体 的 な 例 を 考 えてみよう 図 13 は 最 大 伝 送 単 位 が 1500 バイトのネットワークにおいて 3680 バイト のデータを 3 つの IP パケットに 分 割 して 送 る 様 子 を 示 している 3680 バイトのデータは 1480 バイトのデー タを 持 つ IP パケット1 2 残 る 720 バイトのデータを 持 つ IP パケット3に 分 割 して 送 信 される このとき IP パケット1 2 3の Fragment Offset はそれぞれ 0 1480 2960 となる 図 13 の IP パケットにおける Fragment Offset を 細 工 するときには 次 のような 細 工 方 法 がある 実 際 に 過 去 に IP ヘッダ Fragment Offset に 起 因 した 脆 弱 性 が 発 見 されて 修 正 されている 20 1の Fragment Offset を 0 以 外 の 値 とする 2の Fragment Offset を 1480 以 外 の 値 ( 1480 より 大 きい 値 小 さい 値 )とする 3の Fragment Offset を 2960 以 外 の 値 ( 2960 より 大 きい 値 小 さい 値 )とする 前 述 3 つの 細 工 方 法 を 組 み 合 わせる 3680バイトのデータをIPパケットで 送 る 場 合 : 1480バイト 2960バイト 3680バイト 1Fragment Offset = 0 2Fragment Offset = 1480 3Fragment Offset = 2960 図 13 3680 バイトのデータを 3 つの IP パケットに 分 割 して 送 る 様 子 テストデータ 実 例 :4.1 節 へ 20 IPA: TCP/IP に 係 る 既 知 の 脆 弱 性 に 関 する 調 査 報 告 書 改 定 第 5 版 pp.166-171 22). フラグメントパケットの 再 構 築 時 にシステムがクラッシュする 問 題 (Teardrop Attack) http://www.ipa.go.jp/files/000024459.pdf 19

TCP ヘッダ Sequence Number を 細 工 するときの 考 え 方 Sequence Number は TCP パケットがデータのどの 部 分 を 送 っているかを 示 す 値 である TCP では こ の Sequence Number と データを 受 け 取 る 側 がデータのどの 部 分 まで 受 け 取 ったかを 示 す Acknowledge Number を 組 み 合 わせて 伝 送 経 路 においてデータの 損 失 を 防 ぐ 信 頼 性 のある 通 信 を 実 現 する 具 体 的 な 例 を 考 えてみよう 図 14 は 最 大 伝 送 単 位 が 1500 バイトのネットワークにおいて 3680 バイト のデータを 3 つの TCP パケットで 順 番 に 送 る 様 子 を 示 している 3680 バイトのデータは 1460 バイトのデー タ1 2 残 る 760 バイトのデータ3に 分 けて 順 番 に 送 られる まず1のデータを TCP パケットで 送 るときには Sequence Number に 1 を 設 定 する すると 1のデ ータを 受 け 取 った 対 象 製 品 から 次 に 期 待 するデータの 位 置 1461 を Acknowledge Number に 設 定 した TCP パケットが 応 答 される 続 く2のデータでは Sequence Number に 1461 を 設 定 した TCP パケットを 送 り Acknowledge Number に 2921 が 設 定 された TCP パケットが 応 答 される 最 後 の3のデータでは Sequence Number が 2921 Acknowledge Number が 3681 となる 図 14 の TCP パケットにおける Sequence Number を 細 工 するときには 次 のような 細 工 方 法 がある 1を 送 る TCP パケットの Sequence Number を 1 以 外 の 値 とする 2を 送 る TCP パケットの Sequence Number を 1461 以 外 の 値 とする 3を 送 る TCP パケットの Sequence Number を 2921 以 外 の 値 とする 前 述 3 つの 細 工 方 法 を 組 み 合 わせる 3680バイトのデータをTCPパケットで 順 番 に 送 る 場 合 : 1 2 3 1460バイト 2920バイト 3680バイト TCP SYN+ACK TCP SYN TCP ACK ファジング ツール Ack(*2)=1461 Seq(*1)=1 Seq=1461 1を 送 るTCP 2を 送 るTCP 対 象 製 品 Ack=2921 Seq=2921 3を 送 るTCP Ack=3681 (*1):Sequence Number(シーケンス 番 号 ) (*2):Acknowledge Number( 確 認 応 答 番 号 ) 図 14 3680 バイトのデータを 3 つの TCP パケットで 順 番 に 送 る 様 子 テストデータ 実 例 :4.2 節 へ 20

3.3. テストデータのまとめ 本 章 では テストデータにおける 考 え 方 データの どの 部 分 を どのように 細 工 するか を どの 部 分 と どのように に 分 けて 説 明 してきた ファジングにおけるテストデータを 考 える 上 では 次 の 2 点 を 忘 れない でほしい ファジングでは データの 構 造 におけるすべての 部 分 を 細 工 の 対 象 として 考 える もし 検 査 時 間 がか かりすぎるのであれば 一 部 分 を 細 工 の 対 象 から 外 す ファジングでは データ 構 造 と 照 らし 合 わせたときに 異 常 と 判 定 されるようにデータを 細 工 する 4. テストデータの 実 例 本 章 では IPA の 脆 弱 性 検 出 の 普 及 活 動 において 実 際 に 脆 弱 性 を 検 出 した 8 種 類 のテストデータを 紹 介 する 3 章 ではテストデータの 考 え 方 に 終 始 しているため 具 体 的 なテストデータをイメージしづらい 方 もいらっ しゃっただろう そこで 本 章 では 3 章 の 考 え 方 に 即 したテストデータを 取 り 上 げる 3 章 の 内 容 を 念 頭 にお きながら 読 んでほしい なお 本 書 をまとめるうえで インターネットで 公 開 されている 脆 弱 性 情 報 の 中 から その 脆 弱 性 を 検 出 で きるテストデータが 分 かるもの を 調 査 した テストデータの 実 例 をより 多 く 知 りたい 方 にとって 参 考 になると 考 え その 脆 弱 性 情 報 を 付 録 に 掲 載 した 21

4.1. IP パケットのテストデータ この 節 では IP ヘッダ Fragment Offset に 本 来 の 値 とは 異 なる 値 が 設 定 された IP パケットを 紹 介 する 表 4-1 は このテストデータの 細 工 箇 所 と 細 工 方 法 を 示 している データの どの 部 分 どのように 細 工 したか 表 4-1 IP パケットのテストデータ IP ヘッダ Fragment Offset データ 間 のつながり を 細 工 した 関 連 : 3.2.2(c) このテストデータは IP アドレス 192.168.11.20 から 192.168.11.1 に 送 信 された IP パケットである 図 15 は そのテストデータの 一 部 をパケット 解 析 ツール Wireshark 21 で 表 示 した 様 子 を 示 している 図 15 の 赤 枠 部 分 に 注 目 してほしい この 赤 枠 部 分 は 2 つ 目 の IP パケットの Fragment Offset を 示 し ている 1 つ 目 の IP パケットのデータは 8 バイトであるため( 図 15 青 枠 部 分 ) 赤 枠 部 分 の Fragment Offset は 正 しくは 8 となる しかし 実 際 には 16 となっている 図 15 Fragment Offset を 細 工 した IP パケット 21 https://www.wireshark.org/ 22

さらに このテストデータを 詳 しくみてみよう 図 16 は 図 15 のパケットを 時 系 列 で 並 べた 様 子 22 を 示 して いる 図 16 の[Comment] 列 に 表 示 されている off 部 分 が Fragment offset に 該 当 する( 図 16 の 赤 枠 部 分 ) IP パケットの Fragment offset には 一 つ 前 の IP パケットで 送 信 したデータのデータ 長 を 加 算 した 値 が 設 定 される このテストデータの 場 合 各 IP パケットのデータがすべて 8 バイトであるため Fragment offset が 0, 8, 16, と 8 ずつ 加 算 されるはずである( 図 16 青 枠 部 分 ) しかし 実 際 には 0, 16, 32, と 一 つ 前 のパケットで 送 信 したデータを 無 視 して 16 ずつ 加 算 されていた 図 16 IP パケットのテストデータを 時 系 列 に 並 べた 様 子 参 考 までに このテストデータの 最 初 の 3 つの IP パケットをテキスト 形 式 で 掲 載 する なお 製 品 の 特 定 につながる 恐 れがあるため IP パケットに 含 まれる 送 信 先 MAC アドレスと 送 信 元 MAC アドレスをそれぞれ 11:11:11:11:11:11 22:22:22:22:22:22 に 置 換 していることに 注 意 していただきたい Frame 1: 60 bytes on wire (480 bits), 60 bytes captured (480 bits) Ethernet II, Src: 22:22:22:22:22:22 (22:22:22:22:22:22), Dst: 11:11:11:11:11:11 (11:11:11:11:11:11) Internet Protocol Version 4, Src: 192.168.11.20 (192.168.11.20), Dst: 192.168.11.1 (192.168.11.1) Version: 4 Header length: 20 bytes Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00: Not-ECT (Not ECN-Capable Transport)) 22 テストデータを 記 録 したパケットキャプチャファイルを Wireshark で 開 き [Statistics]メニュー の[Flow Graph ]を 実 行 した 結 果 である この 結 果 のスクリーンショットを 取 得 して それに 筆 者 が 青 字 で 加 筆 した 23

0000 00.. = Differentiated Services Codepoint: Default (0x00).....00 = Explicit Congestion Notification: Not-ECT (Not ECN-Capable Transport) (0x00) Total Length: 28 Identification: 0x0004 (4) Flags: 0x01 (More Fragments) 0...... = Reserved bit: Not set.0..... = Don't fragment: Not set..1.... = More fragments: Set Fragment offset: 0 Time to live: 64 Protocol: ICMP (1) Header checksum: 0xc377 [correct] Source: 192.168.11.20 (192.168.11.20) Destination: 192.168.11.1 (192.168.11.1) Data (8 bytes) 0000 08 00 f7 ff 00 00 00 00... Data: 0800f7ff00000000 [Length: 8] Frame 2: 60 bytes on wire (480 bits), 60 bytes captured (480 bits) Ethernet II, Src: 22:22:22:22:22:22 (22:22:22:22:22:22), Dst: 11:11:11:11:11:11 (11:11:11:11:11:11) Internet Protocol Version 4, Src: 192.168.11.20 (192.168.11.20), Dst: 192.168.11.1 (192.168.11.1) Version: 4 Header length: 20 bytes Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00: Not-ECT (Not ECN-Capable Transport)) 0000 00.. = Differentiated Services Codepoint: Default (0x00).....00 = Explicit Congestion Notification: Not-ECT (Not ECN-Capable Transport) (0x00) Total Length: 28 Identification: 0x0004 (4) Flags: 0x01 (More Fragments) 0...... = Reserved bit: Not set.0..... = Don't fragment: Not set..1.... = More fragments: Set Fragment offset: 16 Time to live: 64 Protocol: ICMP (1) Header checksum: 0xc375 [correct] 24

Source: 192.168.11.20 (192.168.11.20) Destination: 192.168.11.1 (192.168.11.1) Data (8 bytes) 0000 08 00 f7 ff 00 00 00 00... Data: 0800f7ff00000000 [Length: 8] Frame 3: 60 bytes on wire (480 bits), 60 bytes captured (480 bits) Ethernet II, Src: 22:22:22:22:22:22 (22:22:22:22:22:22), Dst: 11:11:11:11:11:11 (11:11:11:11:11:11) Internet Protocol Version 4, Src: 192.168.11.20 (192.168.11.20), Dst: 192.168.11.1 (192.168.11.1) Version: 4 Header length: 20 bytes Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00: Not-ECT (Not ECN-Capable Transport)) 0000 00.. = Differentiated Services Codepoint: Default (0x00).....00 = Explicit Congestion Notification: Not-ECT (Not ECN-Capable Transport) (0x00) Total Length: 28 Identification: 0x0004 (4) Flags: 0x01 (More Fragments) 0...... = Reserved bit: Not set.0..... = Don't fragment: Not set..1.... = More fragments: Set Fragment offset: 32 Time to live: 64 Protocol: ICMP (1) Header checksum: 0xc373 [correct] Source: 192.168.11.20 (192.168.11.20) Destination: 192.168.11.1 (192.168.11.1) Data (8 bytes) 0000 08 00 f7 ff 00 00 00 00... Data: 0800f7ff00000000 [Length: 8] 25

4.2. TCP パケットのテストデータ この 節 では TCP ヘッダの Sequence Number に 本 来 の 値 と 異 なる 値 が 設 定 された TCP パケットを 紹 介 する 表 4-2 は このテストデータの 細 工 箇 所 と 細 工 方 法 を 示 している データの どの 部 分 どのように 細 工 したか 表 4-2 TCP パケットのテストデータ TCP ヘッダ Sequence Number データ 間 のつながり を 細 工 した 関 連 : 3.2.2(c) このテストデータは IP アドレス 192.168.11.20 と 192.168.11.1 の 間 で 送 受 信 された TCP パケットである 図 17 は このテストデータの 一 部 を Wireshark で 表 示 した 様 子 を 示 している 図 17 の 赤 枠 部 分 に 注 目 してほしい この 赤 枠 部 分 は TCP 通 信 を 確 立 したあと( 図 17 の 青 枠 部 分 )の 最 初 の TCP パケットの Sequence Number を 示 している 一 つ 前 の TCP パケットは Sequence Number に 1 が 設 定 され 0 バイトのデータをもつ TCP パケットである このため 赤 枠 部 分 の Sequence Number は 正 しくは 1 となる しかし テストデータの Sequence Number は 9445 となっている 図 17 Sequence Number を 細 工 した TCP パケット 26

さらにこのテストデータを 詳 しくみてみよう 図 18 は 図 17 のパケットを 時 系 列 で 並 べた 様 子 23 を 示 して いる 図 18 の [Comment] 列 に 表 示 されている Seq 部 分 が Sequence Number に 該 当 する( 図 18 の 赤 枠 部 分 ) TCP パケットの Sequence Number には 一 つ 前 の TCP パケットで 送 信 したデータのデータ 長 を 加 算 し た 値 が 設 定 される このテストデータの 場 合 各 TCP パケットのデータがすべて 8 バイトであるため Sequence Number が 1, 9, 17, 25, と 8 ずつ 加 算 されるはずである( 図 18 青 枠 部 分 ) しかし 実 際 に は 9445, 12209, 1693, と 一 つ 前 のパケットで 送 信 したデータのデータ 長 を 無 視 していた 図 18 TCP パケットのテストデータを 時 系 列 に 並 べた 図 23 テストデータを 記 録 したパケットキャプチャファイルを Wireshark で 開 き [Statistics]メニュー の[Flow Graph ]を 実 行 した 結 果 である この 結 果 のスクリーンショットを 取 得 して 筆 者 が 青 字 で 加 筆 した 27

参 考 までに このテストデータのうち TCP 通 信 を 確 立 したあとに 192.168.11.20 から 192.168.11.1 に 送 信 した 3 つの TCP パケットをテキスト 形 式 で 掲 載 する なお 製 品 の 特 定 につながる 恐 れがあるため IP パケ ッ ト に 含 ま れ る 送 信 先 MAC ア ド レ ス と 送 信 元 MAC ア ド レ ス を そ れ ぞ れ 11:11:11:11:11:11 22:22:22:22:22:22 に 置 換 していることに 注 意 していただきたい Frame 4: 62 bytes on wire (496 bits), 62 bytes captured (496 bits) Ethernet II, Src: 22:22:22:22:22:22 (22:22:22:22:22:22), Dst: 11:11:11:11:11:11 (11:11:11:11:11:11) Internet Protocol Version 4, Src: 192.168.11.20 (192.168.11.20), Dst: 192.168.11.1 (192.168.11.1) Transmission Control Protocol, Src Port: 33329 (33329), Dst Port: 80 (80), Seq: 9445, Ack: 1, Len: 8 Source port: 33329 (33329) Destination port: 80 (80) [Stream index: 0] Sequence number: 9445 (relative sequence number) [Next sequence number: 9453 (relative sequence number)] Acknowledgment number: 1 (relative ack number) Header length: 20 bytes Flags: 0x018 (PSH, ACK) 000....... = Reserved: Not set...0...... = Nonce: Not set... 0...... = Congestion Window Reduced (CWR): Not set....0..... = ECN-Echo: Not set.....0.... = Urgent: Not set......1... = Acknowledgment: Set...... 1... = Push: Set.......0.. = Reset: Not set........0. = Syn: Not set.........0 = Fin: Not set Window size value: 65535 [Calculated window size: 65535] [Window size scaling factor: -2 (no window scaling used)] Checksum: 0xf7f4 [validation disabled] [SEQ/ACK analysis] [TCP Analysis Flags] [A segment before this frame wasn't captured] [Expert Info (Warn/Sequence): Previous segment not captured (common at capture start)] [Message: Previous segment not captured (common at capture start)] [Severity level: Warn] [Group: Sequence] 28

TCP segment data (8 bytes) Frame 5: 62 bytes on wire (496 bits), 62 bytes captured (496 bits) Ethernet II, Src: 22:22:22:22:22:22 (22:22:22:22:22:22), Dst: 11:11:11:11:11:11 (11:11:11:11:11:11) Internet Protocol Version 4, Src: 192.168.11.20 (192.168.11.20), Dst: 192.168.11.1 (192.168.11.1) Transmission Control Protocol, Src Port: 33329 (33329), Dst Port: 80 (80), Seq: 12209, Ack: 1, Len: 8 Source port: 33329 (33329) Destination port: 80 (80) [Stream index: 0] Sequence number: 12209 (relative sequence number) [Next sequence number: 12217 (relative sequence number)] Acknowledgment number: 1 (relative ack number) Header length: 20 bytes Flags: 0x018 (PSH, ACK) 000....... = Reserved: Not set...0...... = Nonce: Not set... 0...... = Congestion Window Reduced (CWR): Not set....0..... = ECN-Echo: Not set.....0.... = Urgent: Not set......1... = Acknowledgment: Set...... 1... = Push: Set.......0.. = Reset: Not set........0. = Syn: Not set.........0 = Fin: Not set Window size value: 65535 [Calculated window size: 65535] [Window size scaling factor: -2 (no window scaling used)] Checksum: 0xed28 [validation disabled] [SEQ/ACK analysis] [TCP Analysis Flags] [A segment before this frame wasn't captured] [Expert Info (Warn/Sequence): Previous segment not captured (common at capture start)] [Message: Previous segment not captured (common at capture start)] [Severity level: Warn] [Group: Sequence] TCP segment data (8 bytes) Frame 8: 62 bytes on wire (496 bits), 62 bytes captured (496 bits) 29

Ethernet II, Src: 22:22:22:22:22:22 (22:22:22:22:22:22), Dst: 11:11:11:11:11:11 (11:11:11:11:11:11) Internet Protocol Version 4, Src: 192.168.11.20 (192.168.11.20), Dst: 192.168.11.1 (192.168.11.1) Transmission Control Protocol, Src Port: 33329 (33329), Dst Port: 80 (80), Seq: 1693, Ack: 1, Len: 8 Source port: 33329 (33329) Destination port: 80 (80) [Stream index: 0] Sequence number: 1693 (relative sequence number) [Next sequence number: 1701 (relative sequence number)] Acknowledgment number: 1 (relative ack number) Header length: 20 bytes Flags: 0x018 (PSH, ACK) 000....... = Reserved: Not set...0...... = Nonce: Not set... 0...... = Congestion Window Reduced (CWR): Not set....0..... = ECN-Echo: Not set.....0.... = Urgent: Not set......1... = Acknowledgment: Set...... 1... = Push: Set.......0.. = Reset: Not set........0. = Syn: Not set.........0 = Fin: Not set Window size value: 65535 [Calculated window size: 65535] [Window size scaling factor: -2 (no window scaling used)] Checksum: 0x163d [validation disabled] [SEQ/ACK analysis] [Bytes in flight: 10524] [TCP Analysis Flags] [This frame is a (suspected) out-of-order segment] [Expert Info (Warn/Sequence): Out-Of-Order segment] [Message: Out-Of-Order segment] [Severity level: Warn] [Group: Sequence] TCP segment data (8 bytes) 30

4.3. HTTP リクエストのテストデータ この 節 では Host ヘッダを 特 定 の 値 で 置 き 換 えた HTTP リクエストを 紹 介 する 表 4-3 は このテストデ ータの 細 工 箇 所 と 細 工 方 法 を 示 している データの どの 部 分 どのように 細 工 したか 表 4-3 HTTP リクエストのテストデータ HTTP における Host ヘッダ の 値 特 定 の 値 ( 特 定 の 脆 弱 性 検 出 に 特 化 した 値 )に 細 工 した 関 連 : 3.2.2(a) このテストデータは ウェブサーバ 192.168.11.1 に 対 して 送 信 された HTTP リクエストである このテストデ ータのもととなった HTTP リクエストでは Host ヘッダの 値 に 192.168.11.1 が 設 定 されていた この Host ヘ ッダの 値 を 1024 個 の A ( 赤 字 部 分 )に 置 き 換 えた GET / HTTP/1.1 Host: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 31

4.4. UPnP リクエストのテストデータ この 節 では Body 部 分 を 細 工 した UPnP リクエスト(1) (2)を 紹 介 する 表 4-4 はテストデータ(1)の 細 工 箇 所 と 細 工 方 法 表 4-5 はテストデータ(2)の 細 工 箇 所 と 細 工 方 法 を 示 している なお UPnP リクエ ストからファジングを 実 施 した 製 品 を 特 定 できる 恐 れがあるため UPnP リクエストを 整 形 したうえで 掲 載 した 表 4-4 UPnP リクエストのテストデータ(1) データの どの 部 分 UPnP リクエストにおける Body 部 分 どのように 細 工 したか 特 定 の 値 ( 特 定 の 脆 弱 性 検 出 に 特 化 した 値 )に 細 工 した 関 連 : 3.2.2(a) 表 4-5 UPnP リクエストのテストデータ(2) データの どの 部 分 UPnP リクエストにおける Body 部 分 どのように 細 工 したか データ 構 造 そのものを 細 工 した 関 連 : 3.2.2(b) 2 4.4.1. UPnP リクエストのテストデータ(1) このテストデータは UPnP に 対 応 した 製 品 192.168.11.1 に 対 して 送 信 された UPnP リクエストである こ のテストデータのもととなった UpnP リクエストでは Body 部 分 の XML 要 素 Element2 の 値 に 文 字 a が 設 定 されていた この a を 文 字 列 00 00 00 00 ( 赤 色 部 分 )に 置 き 換 えた この 00 00 00 00 が 文 字 列 10 進 数 の 数 値 または 16 進 数 の 数 値 の 形 式 で 解 釈 されるかは 確 認 して いないが 少 なくとも もとの UpnP リクエストに 比 べてデータサイズが 大 きくなっているはずである だが こ のテストデータを 作 ったファジングツールは Body 部 分 のデータサイズを 示 す Content-Length ヘッダの 値 を 修 正 していなかった( 赤 字 部 分 ) そのため Content-Length ヘッダの 値 を 解 釈 する 過 程 で 問 題 が 生 じ た 可 能 性 もある( 実 際 には 分 からない) POST /UPnPControl HTTP/1.1 SOAPACTION: "urn:schemas:service:x_upnpcontrol:1#x_upnpcontrolaction" CONTENT-TYPE: text/xml ; charset="utf-8" HOST: 192.168.11.1:12345 Content-Length: 383 <?xml version="1.0" encoding="utf-8"?> <s:envelope s:encodingstyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:s="h ttp://schemas.xmlsoap.org/soap/envelope/"> <s:body> <u:x_upnpcontrolaction xmlns:u="urn:schemas:service:x_upnpcontrol:1"> <Element1>a</Element1> <Element2> </Element2> </u:x_upnpcontrolaction> 00 00 00 00 </s:body> </s:envelope> 32

4.4.2. UPnP リクエストのテストデータ(2) テストデータ(1)と 同 様 に このテストデータも UPnP に 対 応 した 製 品 192.168.11.1 に 送 信 された UPnP リ クエストである このテストデータの 場 合 特 定 の 値 に 置 き 換 えるのではなく Body 部 分 ( 赤 字 部 分 )を 15 回 繰 り 返 した POST /UPnPControl HTTP/1.1 SOAPACTION: "urn:schemas:service:x_upnpcontrol:1#x_upnpcontrolaction" CONTENT-TYPE: text/xml ; charset="utf-8" HOST: 192.168.11.1:12345 Content-Length: 4935 <?xml version="1.0"?><s:envelope s:encodingstyle="http://schemas.xmlsoap.org/soap /encoding/" xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"> <s:body> <u:x_upnpcontrolaction xmlns:u="urn:schemas:service:x_upnpcontrol:1"> <Element1>a</Element1> <Element2>a</Element2> </u:x_upnpcontrolaction> </s:body> </s:envelope> <?xml version="1.0"?><s:envelope s:encodingstyle="http://schemas.xmlsoap.org/soap /encoding/" xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"> <s:body> <u:x_upnpcontrolaction xmlns:u="urn:schemas:service:x_upnpcontrol:1"> <Element1>a</Element1> <Element2>a</Element2> </u:x_upnpcontrolaction> </s:body> </s:envelope>... ( 赤 字 部 分 を 12 回 繰 り 返 し)... <?xml version="1.0"?><s:envelope s:encodingstyle="http://schemas.xmlsoap.org/soap /encoding/" xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"> <s:body> <u:x_upnpcontrolaction xmlns:u="urn:schemas:service:x_upnpcontrol:1"> <Element1>a</Element1> <Element2>a</Element2> </u:x_upnpcontrolaction> </s:body> </s:envelope> 33

4.5. JPEG 画 像 のテストデータ この 節 では Exif 形 式 の 要 素 を 細 工 した JPEG 画 像 (1) (2)を 紹 介 する 表 4-6 はテストデータ(1)の 細 工 箇 所 と 細 工 方 法 表 4-7 はテストデータ(2)の 細 工 箇 所 と 細 工 方 法 を 示 している 表 4-6 JPEG 画 像 (Exif 形 式 )のテストデータ(1) データの どの 部 分 SOF セグメントの 垂 直 ライン 数 どのように 細 工 したか 特 定 の 値 ( 特 定 の 脆 弱 性 検 出 に 特 化 した 値 )に 細 工 した 関 連 : 3.2.2(a) 表 4-7 JPEG 画 像 (Exif 形 式 )のテストデータ(2) データの どの 部 分 Exif 形 式 のセグメント 構 造 どのように 細 工 したか データ 構 造 そのものを 細 工 した 関 連 : 3.2.2(b) 4 4.5.1. JPEG 画 像 (Exif 形 式 )のテストデータ(1) このテストデータは SOF0 セグメントの 垂 直 ライン 数 を 細 工 した JPEG 画 像 である 図 19 に このテストデータ(1)の 細 工 箇 所 と 細 工 方 法 を 図 示 した Exif 形 式 には 画 像 データに 関 する 情 報 ( 画 像 の 幅 や 高 さなど)を 記 録 する Start of Frame(SOF)セグメントという 領 域 がある そして この SOF セグメントには 画 像 の 高 さを 意 味 する 垂 直 ライン 数 が 含 まれている 元 の JPEG 画 像 の 垂 直 ライン 数 は 480( 単 位 :pixel)であったが( 図 19 の 青 色 部 分 ) これを 0 に 置 き 換 えた( 図 19 の 赤 色 部 分 ) 図 20 は JPEG 画 像 解 析 ツール Jpeg Analyzer plus 24 でこのテストデータを 表 示 した 様 子 を 示 している 図 20 の 赤 枠 部 分 に 注 目 してほしい 640[0] x 0[0] pixel... という 文 字 列 を 確 認 できる この 0[0] pixel が 画 像 の 垂 直 ライン 数 を 示 している 24 デジカメ 画 像 の Exif 情 報 を 詳 細 に 表 示 する 画 像 ファイル 解 析 ソフト JpegAnalyzer Plus http://homepage3.nifty.com/kamisaka/jpeganalyzer/ ダウンロード URL http://www.vector.co.jp/soft/dl/win95/art/se257653.html 34

図 19 テストデータ(1)の 細 工 箇 所 と 細 工 方 法 図 20 JpegAnalyzer Plus でテストデータ(1)を 表 示 した 様 子 35

4.5.2. JPEG 画 像 (Exif 形 式 )のテストデータ(2) このテストデータは Exif 形 式 の 規 格 25 と 異 なるようにセグメント 構 造 を 細 工 した JPEG 画 像 である 図 21 は テストデータ(2)のセグメント 構 造 を 示 している このセグメント 構 造 を Exif 形 式 の 規 格 と 照 らし 合 わせてみると 次 の 違 いがある 画 像 の 先 頭 を 示 す Start of Image(SOI)セグメントの 次 に SOF0 セグメント 26 が 存 在 する Exif 形 式 の 規 格 によると SOI セグメントの 後 に APP1 セグメントが 続 く しかし このテストデータで は SOI セグメントの 後 に SOF0 セグメントが 続 いている Application Segment 1(APP1)セグメントだけではなく Application Segment 0(APP0)が 存 在 する Exif 形 式 の 規 格 では APP1 セグメントに 言 及 しているが APP0 セグメント 27 には 言 及 していない 図 22 は Jpeg Analyzer plus でこのテストデータを 表 示 した 様 子 を 示 している 図 22 の 赤 枠 部 分 に 注 目 してほしい SOF0 と APP0 という 文 字 列 が 確 認 できるだろう また 図 22 の 中 央 部 分 の 反 転 部 分 を みていただくと この 部 分 でも SOF0 という 文 字 列 を 確 認 できる このテストデータには SOF0 セグメントが 2 つ 存 在 している また Jpeg Analyzer plus も 警 告 メッセージを 出 力 しているように SOI セグメントの 後 に 続 く SOF0 セグメントが 異 常 な 値 となっていた 結 果 的 に このテストデータのどの 値 で 問 題 が 生 じたか 実 際 には 分 からない SOI SOF APP0 APP1 COM DQT SOF0 DHT SOS SOIセグメントの 後 にSOF0セグメント が 存 在 する APP1セグメントだけではなく APP0 セグメントが 存 在 する 圧 縮 データ EOI 図 21 テストデータ(2)のセグメント 構 造 25 デジタルスチルカメラ 用 画 像 ファイルフォーマット 規 格 Exif 2.3 http://www.cipa.jp/std/documents/j/dc-008-2012_j.pdf 26 SOF セグメントには 画 像 データの 符 号 化 方 式 などの 違 いによって 複 数 の 種 類 がある SOF0 セグ メントはそのうちの 一 つである 27 JPEG 画 像 のデータ 形 式 の 一 つである JFIF 形 式 が 定 義 しているセグメントである 36

図 22 JpegAnalyzer Plus でテストデータ(2)を 表 示 した 様 子 28 28 コメントが 含 まれる COM セグメントの 値 には ファジングツールを 示 す 文 字 列 が 含 まれていたた め 伏 字 とさせていただいた 37

4.6. 無 線 LAN フレームのテストデータ この 節 では Information Element ( 以 降 IE )をランダムに 細 工 した 無 線 LAN フレームを 紹 介 する 表 4-8 は このテストデータの 細 工 箇 所 と 細 工 方 法 を 示 している データの どの 部 分 表 4-8 無 線 LAN フレームのテストデータ 無 線 LAN フレームの Information Element どのように 細 工 したか データ 構 造 そのものを 細 工 した 関 連 : 3.2.2(b) 1 3 このテストデータは MAC アドレス ff:ff:ff:ff:ff:ff に 送 信 された 無 線 LAN フレームである 図 23 は このテ ストデータの 一 部 を Wireshark で 表 示 した 様 子 を 示 している このテストデータには 無 線 LAN の 規 格 IEEE Std 802.11 29 で 取 り 扱 いが 明 確 に 決 まっていない IE や 実 際 のデータと 矛 盾 するデータ 長 が 設 定 さ れた IE が 複 数 含 まれていた 規 格 で 取 り 扱 いが 明 確 に 決 まっていない IE 実 際 のデータと 矛 盾 するデータ 長 が 設 定 された IE をそ れぞれ Tag Number 129 の IE ( 図 23 青 枠 部 分 ) Tag Number 15 の Schedule element ( 図 23 赤 枠 部 分 )で 例 示 しよう 図 23 ランダムに 細 工 した 無 線 LAN フレーム 29 IEEE Std 802.11-2012 http://standards.ieee.org/findstds/standard/802.11-2012.html 38

まず Tag Number 129 の IE をみてみよう 図 24 は 図 23 の Tag Number 129 の IE を 拡 大 した 様 子 を 示 している 図 24 から この IE のデータ 長 が 200 で 値 が 46be2 であることを 読 み 取 れる 無 線 LAN の 規 格 IEEE Std 802.11 では この IE を Reserved ( 予 約 )と 規 定 している 30 したがって Tag Number 129 の IE の 取 り 扱 いが 規 格 で 明 確 に 決 まっていないため 製 品 によってはこの IE を 解 釈 するときに 問 題 が 起 きる 可 能 性 がある 図 24 Tag Number 129 の IE のデータ 長 と 値 続 いて Tag Number 15 の Schedule element をみてみよう 図 25 は 図 23 の Tag Number 15 の Schedule element を 拡 大 した 様 子 を 示 している 図 25 から Tag Length 198 wrong, must be = 14 とい う 文 字 列 を 読 み 取 れる 無 線 LAN の 規 格 IEEE Std 802.11 では この Schedule element のデータ 長 を 14 バイト 31 と 規 定 してい る 32 しかし このテストデータにはデータ 長 に 14 バイトよりも 大 きい 198 バイトが 設 定 されている したがっ て テストデータの Schedule element には 実 際 のデータの 長 さと 異 なるデータ 長 が 設 定 されているため 製 品 によってはこれを 解 釈 するときに 問 題 が 起 きる 可 能 性 がある 図 25 Schedule element のデータ 長 と 値 30 p.474 8.4.2.1 General, "IEEE Std 802.11-2012" 31 IEEE Std 802.11-2012 では 厳 密 には Length として Tag Number の 1 バイト Length の 1 バイトの 計 2 バイトを 除 いた 12 バイトを 定 義 している 32 p.579 8.4.2.36 Schedule element, "IEEE Std 802.11-2012" 39

5. テストデータに 関 する 知 識 の 活 用 3 章 4 章 でファジングのテストデータにおける 考 え 方 およびテストデータの 実 例 を 紹 介 してきた これに よって ファジングツールがどのようなテストデータを 作 るのか 理 解 いただけたと 思 う ファジングツールは 対 象 製 品 が 受 け 取 るデータを 様 々な 方 法 で 細 工 してテストデータを 作 る しかし あ らゆるテストデータでファジングを 実 施 すると 膨 大 な 時 間 がかかってしまう そこで 様 々な 考 え 方 でファジン グツールが 開 発 されている 33 例 えば 時 間 が 掛 かったとしても 可 能 な 限 り 多 くのテストデータでファジン グを 実 施 する ツールがあれば 時 間 短 縮 を 意 識 して データ 構 造 の 一 部 分 のみ 細 工 したテストデータで ファジングを 実 施 する ツールもある ファジングツールのテストデータを 把 握 すると テストデータの 網 羅 性 を 高 めて 効 果 的 なファジングを 実 践 できる さらに 本 書 で 学 んだ 知 識 をファジングツールの 独 自 開 発 に 役 立 てることもできる 5.1. 一 歩 進 んだ 知 識 の 活 用 :ファジングツールの 独 自 開 発 製 品 のなかには 既 存 のファジングツールでその 製 品 に 合 わせたテストデータを 送 れずに 既 存 のツー ルでファジングを 実 施 できないものがある このような 製 品 に 対 してファジングを 実 施 する 場 合 製 品 開 発 企 業 および 研 究 者 が 製 品 に 合 わせたファジングツールを 独 自 に 開 発 する 方 法 がある これまでは ファジングにおける テストデータ を 体 系 的 にまとめている 資 料 は 少 なかったため 製 品 に 合 わせたテストデータを 検 討 することが 難 しかったと 考 える 実 際 に ファジングを 実 践 している 製 品 企 業 か ら 自 社 製 品 向 けのファジングツールを 開 発 したいが 自 社 の 技 術 者 ではファジングツールの 開 発 が 難 し い という 課 題 を 伺 った そこで 本 書 で 紹 介 したテストデータの 考 え 方 (データ 構 造 の どの 部 分 を どのように 細 工 するか)を 製 品 に 合 わせた テストデータ の 検 討 に 活 用 いただけるだろう IPA でも 活 動 で 培 ったテストデータの 知 識 をふまえて JPEG テスト 支 援 ツール ifuzzmaker を 開 発 した 本 書 がファジングツールの 独 自 開 発 の 一 助 となることを 期 待 している 33 商 用 製 品 FFR Raven Codenomicon Defensics オープンソースソフトウェアの Taof の 3 つのファジングツールの 特 徴 を 以 下 のレポートで 考 察 している IPA: 製 品 の 品 質 を 確 保 する セキュリティテスト に 関 するレポート 4.5 [2nd ステップ] 商 用 製 品 を 活 用 したファジング https://www.ipa.go.jp/about/technicalwatch/20120920.html 40

5.1.1. 活 用 事 例 :JPEG テスト 支 援 ツール ifuzzmaker ifuzzmaker とは JPEG 画 像 を 読 み 込 む 機 能 を 持 つ 製 品 に 対 するファジングを 支 援 するツールであ る この ifuzzmaker では それらの 製 品 に 対 するファジングで 使 うテストデータを 作 ることができる 図 26 に ifuzzmaker で 作 ったテストデータを 使 ったファジングのイメージを 図 示 した 幅 広 く 製 品 開 発 者 に 活 用 されるよう IPA では 利 用 マニュアルとともに ifuzzmaker をオープンソースソフ トウェアとして 公 開 している 図 26 ifuzzmaker で 作 ったテストデータを 使 ったファジング(イメージ 図 ) ifuzzmaker の 概 要 https://www.ipa.go.jp/security/vuln/ifuzzmaker/index.html 対 象 利 用 者 JPEG 画 像 を 扱 う 情 報 家 電 やソフトウェア 製 品 の 関 係 者 ( 開 発 者 や 品 質 保 証 担 当 者 などを 想 定 ) 動 作 環 境 OS :Windows 7 SP1 Windows 8.1 Windows 10 上 記 OSは 32bit 版 と 64bit 版 で 動 作 確 認 済 み CPU :1GHz 以 上 の x86 互 換 プロセッサ メモリ:1GB 以 上 の 空 きメモリ HDD :1GB 以 上 の 空 き 領 域 機 能 JPEG 画 像 を 読 み 込 む 機 能 に 対 するファジングで 使 う テスト JPEG 画 像 を 作 ること 利 用 者 が 指 定 した Exif 形 式 の JPEG 画 像 を 作 ること 41

6. おわりに 2011 年 8 月 からファジングなどの 脆 弱 性 検 出 技 術 の 普 及 推 進 を 目 的 とした 脆 弱 性 検 出 の 普 及 活 動 を IPA が 始 めてから 2 年 以 上 が 経 過 した 活 動 当 初 よりも ファジング を 知 っている 技 術 者 もふえ 少 しずつ 日 本 でも 製 品 開 発 にファジングの 導 入 を 検 討 する 企 業 が 出 てきた しかし 本 書 で 取 り 上 げたファジングに おけるテストデータの 理 解 など 企 業 が 製 品 開 発 の 現 場 でファジングを 活 用 するときの 課 題 はいくつもある 今 後 も IPA ではファジングの 利 用 が 広 がるための 活 動 を 継 続 していきたい 本 書 が 製 品 開 発 におけるファジングの 活 用 ひいては 製 品 開 発 における 脆 弱 性 低 減 の 一 助 となれば 幸 いである 7. 本 書 に 関 連 する 仕 様 / 規 格 仕 様 名 / 規 格 名 Exif (Exchangeable image file format) HTTP (Hypertext Transfer Protocol) IEEE802.11 IP (Internet Protocol) TCP (Transmission Control Protocol) UPnP (Universal Plug and Play) URL デジタルスチルカメラ 用 画 像 ファイルフォーマット 規 格 Exif 2.3: http://www.cipa.jp/std/documents/j/dc-008-2012_j.pdf (2016 年 2 月 確 認 ) RFC2616: http://tools.ietf.org/html/rfc2616 (2016 年 2 月 確 認 ) IEEE802.11-2012: http://standards.ieee.org/findstds/standard/802.11-2012.html (2016 年 2 月 確 認 ) RFC791: http://tools.ietf.org/html/rfc791 (2016 年 2 月 確 認 ) RFC793: http://tools.ietf.org/html/rfc793 (2016 年 2 月 確 認 ) UPnP Device Architecture 1.1: http://upnp.org/specs/arch/upnp-arch-devicearchitecture-v1.1.pdf (2016 年 2 月 確 認 ) 42

付 録 : 検 出 できるテストデータが 分 かる 脆 弱 性 情 報 IPA では US-CERT 34 と Exploit Database 35 の 2 つのウェブサイトを 中 心 に 2011 年 1 月 から 2013 年 6 月 の 期 間 に 公 開 された 脆 弱 性 情 報 の 中 から 脆 弱 性 の 説 明 や 実 証 コードからその 脆 弱 性 を 検 出 できるテストデータが 分 かるものを 調 査 した 下 表 はその 調 査 結 果 を 示 している 本 付 録 をご 活 用 いただく 場 合 対 象 とした 期 間 に 公 表 された 脆 弱 性 情 報 をすべて 調 査 したわけではないこと に 注 意 していただきたい No 製 品 名 製 品 種 別 脆 弱 性 を 検 出 できるテストデータ(URLの 情 報 をもとに 作 成 ) URL 脆 弱 性 が 存 在 した 機 能 脆 弱 性 が 存 在 した 箇 所 1 WL2600CAM /aaa (3000 個 a) POE2600HDなど IPカメラ http://www.exploit-db.com/exploits/26174/ ウェブサービス 機 能 HTTPリクエストラインのURI 2 ストリーミング 機 能 aircamシリーズ IPカメラ rtsp://<ipアドレス>/aaa (271 個 のA)0x78 0x56 0x34 0x12/live/ch00_0 http://www.coresecurity.com/advisories/buffer-overflow-ubiquiti-aircam-rtsp-service (RTSP 機 能 ) DESCRIBEリクエストにおけるURI 3 独 自 サービス データ 全 体 Xpient POS system POSシステム 1 1 http://www.coresecurity.com/advisories/xpient-cash-drawer-operation-vulnerability (7510/tcp) (データを 受 け 付 けることを 想 定 しないようである) 4 AR1220 ルータ 文 字 列 4096 個 の A http://blog.emaze.net/2013/05/multiple-buffer-overflows-on-huawei.html SNMP 機 能 SNMPv3 USMの AuthoritativeEngineID および UserName 5 MayGion IP cameras IPカメラ /AAA (3000 個 A).html http://www.coresecurity.com/advisories/maygion-ip-cameras-multiple-vulnerabilities ウェブサービス 機 能 HTTPリクエストラインのURI 6 PT7135 IPカメラ 文 字 列 1000 個 の a 文 字 列 10000 個 の a http://www.coresecurity.com/advisories/vivotek-ip-cameras-multiple-vulnerabilities ストリーミング 機 能 (RTSP 機 能 ) DESCRIBEリクエストにおける Authorizationヘッダ 7 D6000 スマートテレビ \n\n\n\t\t\t\thacked!\n\n\n\n\n 文 字 列 1040 個 の a http://www.exploit-db.com/exploits/18751/ スマフォアプリとの 連 携 機 能 (55000/tcp) 連 携 するためのプロトコルにおける name 値 およびMACアドレス 値 8 MegaDome AV1355DN IPカメラ どんなデータでも 構 わない (NmapやNessusのテストデータでもOK) http://www.kb.cert.org/vuls/id/375180 DHCPサーバ 機 能 (69/udp) データ 全 体 (データを 受 け 付 けることを 想 定 しないようである) 9 TL-WR740N ルータ /... (ドット. を3つ 付 与 したもの) http://www.zeroscience.mk/en/vulnerabilities/zsl-2013-5135.php ウェブサービス 機 能 HTTP リクエストラインのURI 10 Broadcom UPnP Stack UPnPライブラリ 書 式 文 字 列 http://www.defensecode.com/public/defensecode_broadcom_security_advisory.pdf UPnP 機 能 11 Intel/Portable SDK for UPnP DeviceUPnPライブラリ uuid:schemas:device:aaa...aaa:anything ( 値 の 一 部 分 に 極 端 に 長 い 文 字 列 を 含 む) https://community.rapid7.com/docs/doc-2150 UPnP 機 能 12 改 行 コード(CR+LF)を 除 外 した 値 UPnP 機 能 MiniUPnP UPnPライブラリ 過 度 に 長 いクォートされたメソッド https://community.rapid7.com/docs/doc-2150 13 # (シャープ 記 号 ) を 欠 いた SOAPAction ヘッダ UPnP 機 能 " ( 二 重 引 用 符 ) を 欠 いた SOAPAction ヘッダ UPnP Controlにおける SetConnectionType アクションのNewConnectionType 要 素 SSDPにおけるM-SEARCHリクエストに おける STヘッダ SSDPにおけるM-SEARCHリクエストに おける STヘッダ UPnP ControlにおけるSOAPActionヘッダ 14 複 数 のプリンタ プリンタ PCLで 規 定 されていない 文 字 ( 制 御 文 字 など) https://viaforensics.com/security/exploiting-printers-via-jetdirect-vulns.html JetDirect 機 能 PCL (Printer Control Language)で 書 かれたデータ 15 E585u-82 モバイルルータ Authorization: Basic\r\n\r\n http://www.kb.cert.org/vuls/id/871148 ウェブサービス 機 能 HTTP Authorizationヘッダ 16 BCM4325 IEEE802.11のBeaconフレームにおける 無 線 LANチップセット 65535 (0xff 0xff) http://www.coresecurity.com/content/broadcom-input-validation-bcm4325-bcm4329 無 線 LAN 機 能 BCM4329 RSN Information Element(IE) のAuthentication suites count 17 KDL-32CX525 スマートテレビ 一 定 数 のTCP-SYNセグメント http://www.exploit-db.com/exploits/18705/ TCP/IP 処 理 機 能 TCPセグメント 18 Cisco TelePresence Series ビデオ 会 議 システム 4x8 a"s http://www.exploit-db.com/exploits/17871/ SIP 処 理 機 能 SIP INVITEリクエストのMACアドレス 19 SoundPoint IP 335 IP 電 話 Authorization: Basic\r\n\r\n http://www.exploit-db.com/exploits/16068/ ウェブサービス 機 能 HTTP Authorizationヘッダ 20 CMNC-200 Full HD IPカメラ 文 字 列 512 個 の A https://www.trustwave.com/spiderlabs/advisories/twsl2010-006.txt ウェブサービス 機 能 HTTP Cookieヘッダ 以 上 34 http://www.kb.cert.org/vuls/ 35 https://www.exploit-db.com/ 1

更 新 履 歴 更 新 日 更 新 内 容 2013 年 11 月 7 日 第 1 版 発 行 2016 年 3 月 31 日 第 1 版 第 2 刷 発 行 p.41 ifuzzmaker の 概 要 更 新 p.42 本 書 に 関 する 仕 様 / 規 格 更 新 脚 注 内 URL 修 正

編 集 責 任 金 野 千 里 執 筆 者 勝 海 直 人 協 力 者 鵜 飼 裕 二 園 田 道 夫 澤 田 迅 ( 株 式 会 社 IT 働 楽 研 究 所 ) 栗 栖 正 典 板 橋 博 之 岡 崎 圭 輔 山 下 勇 太 相 馬 基 邦 ファジング 実 践 資 料 (テストデータ 編 ) ~ 効 果 的 なファジングツールの 選 定 につながるテストデータの 理 解 ~ [ 発 行 ] 2013 年 11 月 7 日 第 1 版 2016 年 3 月 31 日 第 1 版 第 2 刷 [ 著 作 制 作 ] 独 立 行 政 法 人 情 報 処 理 推 進 機 構 技 術 本 部 セキュリティセンター 情 報 セキュリティ 技 術 ラボラトリー