1

ASP.NET を使用して Web サイトを構築しています。そのユーザーに、html5/css/javascript コードをテストする機会を提供したいと考えています。

この目的を達成するために、私は W3School に似た Try It Yourself エディターを実現しました。

このエディターは、POST を介して、現在のページのテキスト領域から、テキスト領域の横にある iframe として視覚化された TryIt.aspx ページに HTML コードを送信します。

TryIt.aspx の背後にあるコードは次のとおりです。

    protected void Page_Load(object sender, EventArgs e)
    {
        RunScriptCode();            
    }

    private void RunScriptCode()
    {
        string resultValue;

        try
        {
            HttpContext c = HttpContext.Current;
            NameValueCollection f = c.Request.Form;
            resultValue = f["textareacodeinput"];
            Response.Headers.Add("X-XSS-Protection", "0");
            if (resultValue != null)
            {
                Response.Write(resultValue);
            }
        }
        catch (Exception ex)
        {
            Response.Write(ex.Message);
        }
    }

したがって、resultValue現在のページから投稿された入力テキスト領域内の HTML コードを取得します。このコードは、TryIt.aspx 経由で HTML として書き込まれますResponse.Write(resultValue)

Response.Headers.Add("X-XSS-Protection", "0");Chrome でクロスサイト スクリプティング フィルターを無効にするヘッダーを追加しました。

さて、この単純な Try It Yourself コード エディターにはデータベースが含まれていないため、XSS に対するセキュリティを実装しないことを考えました。

とにかく、私の考えが正しいのか、それとも私の構築方法が、私の Web サイトやサイトを公開している ASP.NET サーバーを悪用できる XSS 攻撃を受けやすいのでしょうか。

誰かが私にいくつかの提案を手伝ってもらえますか?

大変感謝します。

4

1 に答える 1

0

私の考えは正しいと思います。

Google で検索した後、OWASP Zed Attack Proxyという Web サイトの脆弱性スキャナーをダウンロードし、Web サイトを攻撃してそのセキュリティを検証しました。

スキャンの結果、重大な負担は明らかになりませんでした。

どうもありがとうございました。

于 2013-11-06T16:07:30.520 に答える