2016-11-19 4 views
0

エラー:(テキストボックスに入力としてHTMLコードを取得し、それをデータベースに格納されている)

A potentially dangerous Request.Form value was detected from the client (ctl00$ContentPlaceHolder1$htmlCode="table style="backgr...")

はコード:

SqlConnection n_con = new SqlConnection(constring); 
    n_con.Open(); 
    string N_Query = "update imageAd set code = '"+textbox1.text+"' where id = '" + id + "'"; 
    SqlCommand N_cmd = new SqlCommand(N_Query, n_con); 
    N_cmd.ExecuteNonQuery(); 
+0

「SQL 2008 Simple」とは何ですか? – halfer

+0

パラメータ化されたクエリについて、特に@jafarbtech –

答えて

2

設定validateRequest="false"<%@ Page ... %>ディレクティブで.aspxの中で

.NET 4ではもう少し作業が必要な場合があります。場合によっては<httpRuntime requestValidationMode="2.0" />をweb.configに追加する必要があります

注:しかし、これによってスクリプトインジェクションとSQLインジェクション攻撃がそのページで可能になります。なぜそれが "潜在的に危険な"ことを示しているのですか?あなたがこのページから入力したhtmlを表示するとき、それを防ぐにはLbel1.Text = Server.HtmlEncode(TextBox1.Text)を使用してください。あなたはウェブページの管理者側で使用している場合、それをネゴシエートできます

+1

Ermのようなリクエストの検証を無効にすると、このクエリには膨大なSQLインジェクションの脆弱性がありますが、答えに言及する価値はありません。 – halfer

+0

はいありがとうございます。私が追加しました – jafarbtech

関連する問題