1

次の Coldfusion コードは、静的コード アナライザー Veracode.com によってテストされました。

<cfloop from="1" to="3" index="kontakt_idx">
    <tr class="rowclass#htmleditformat(kontakt_idx +1)#">
        <td>..</td>
    </tr>
</cfloop>

私は結果を得る:

Attack Vector: coldfusion.runtime.Cast._double
Description: This call to coldfusion.runtime.Cast._double() contains a cross-site scripting (XSS) flaw.

Veracode は、Coldfusion コード自体をスキャンしません。アドビが提供するツールでプリコンパイルする必要があります。ただし、Veracode Web サイトに表示される結果は、正しい行番号を示しています。したがって、私は間違った行を指しているのではないかと疑っています。HTMLEditFormat()最初のスキャン結果が戻ってきた後に入れましたが、エラーは残ります。

このコードはどのようにして XSS を引き起こすのでしょうか? 呼び出しcoldfusion.runtime.Cast._doubleで XSS が発生する可能性はありますか? 無効な値が double にキャストされると、Coldfusion は例外をスローします。Form-scope 変数を使用していたときに、同様のエラーが発生しました。場合によっては、フォームの使用を単純に置き換えることができます。cfloop from toI got resultの別の発生時Attack Vector: coldfusion.runtime.Cast._int。なぜ Veracode は double へのキャストと int へのキャストがあると主張することがありますか?

この場合、どうすればいいのかまったくわかりません。Form スコープの変数が計算で使用されている場合、どうすればよいでしょうか。まずアプリケーションを保護し、次に Veracode を満たすために。

4

1 に答える 1