11.05.2014 Views

OWASP テスティングガイド

OWASP テスティングガイド

OWASP テスティングガイド

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

ComplexObject[] anArray = new ComplexObject[NumOfObjects]; // wrong!<br />

ブラチクボチクステステ 及 びびその 例<br />

テシソーは、 上 記 のようにアプヨクーサュヱケード 内 で 使 用 される 名 前 と 値 のヘアとして 数 値 が 送 信 されるところを 探 します。<br />

その 値 に 非 常 に 大 きな 数 値 を 設 定 し、コーバの 反 応 が 続 いているかどうか 確 認 します。 割 り 当 てを 続 ける 間 、コーバのパフ<br />

ェーボヱシが 落 ち 始妵 めるまで 少 しの 間 待 つ 必 要 があるかもしれません。<br />

上 記 の 例 では、”numberofobjects”という 名 前 と 値 のヘアでコーバに 大 きな 数 値 を 送 ることによってコーブリットは 多 くの 複<br />

雑 なエブザェキトを 作 成 しようとします。ほとんどのアプヨクーサュヱではヤーゴの 直 接 入 力 をこうした 目 的 で 使 用 しませんが、<br />

この 脆 弱 性 の 例 は hidden フィーラドや、フェーマが 送 信 されるときにキョイアヱト 上 の JavaScript 内 で 計 算 された 値 を 使 っ<br />

た 場 合 に 見 られます。<br />

アプヨクーサュヱにおいてこのソイプの 攻 撃 用 のプキトラとして 使 用 される 数 値 フィーラドがない 場 合 、 同 様 の 結 果 は 連連 続 的<br />

にエブザェキトを 割 り 当 てることによって 実 現 できるかもしれません。 注 目 すべき 例 としては、E ケボーシコイトがあります。ア<br />

プヨクーサュヱによってヤーゴの 電 子婡 ォート 内 のアイテマ 数 の 上 限 がどの 時 点 においても 設 定 されていない 場 合 、ォートエ<br />

ブザェキトがコーバのミムヨをいっぱいにするまでヤーゴのォートにアイテマを 追 加 し 続 けるシキヨプトを 書 くことができます。<br />

ギレーボチクステステ 及 びびその 例<br />

アプヨクーサュヱの 内 部邪 についてある 程 度 詳 細 に 知 っていれば、ヤーゴによって 割 り 当 てられるエブザェキトの 場 所 を 知 るの<br />

に 役 立 つかもしれません。ただし、テシト 手 法 はブョッキペッキシテシトと 同 じパソーヱで 行 います。<br />

4.9.5 ループカウンヱタとしてのヤーザ 入 力 (<strong>OWASP</strong>-DS-005)<br />

概 要<br />

このテシトでは、 全 体 のパフェーボヱシを 悪 化 させるために、アプヨクーサュヱに 対 して 高 いケヱピャーティヱギヨセーシが 必<br />

要 なケードスギミヱトをラープさせることができるかどうかをタェッキします。<br />

この 問 題 の 説 明<br />

前 述 したヤーゴが 指 定 したエブザェキトの 割 り 当 ての 問 題 と 同 様 に、ヤーゴが 直 接 あるいは 間 接 的 にラープ 機 能 のォウヱ<br />

ソとして 使 用 される 値 を 指 定 できる 場 合 、コーバに 対 してパフェーボヱシの 問 題 を 引 き 起 こすことができる 可 能 性 があります。<br />

以 下 は Java で 書 かれた 脆 弱 なケードの 例 です:<br />

public class MyServlet extends ActionServlet {<br />

public void doPost(HttpServletRequest request, HttpServletResponse response)<br />

throws ServletException, IOException {<br />

. . .<br />

String [] values = request.getParameterValues("CheckboxField");<br />

// Process the data without length check for reasonable range – wrong!<br />

for ( int i=0; i

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!