この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。
建築家
建築家
リスト
放送
茶屋
インテリジェントAI会話
.NETキャリア&テクニカルカレッジ
ちっちゃいなクズブログ
この版
利用者
Architect_Programmer_Code農業ネットワーク
»
建築家
›
プログラミング
›
.Net/C#
›
c#および asp.net SQLインジェクションフィルタリングメソッドを防止します
眺める:
23797
|
答える:
2
[インターフェース]
c#および asp.net SQLインジェクションフィルタリングメソッドを防止します
[リンクをコピー]
クズども
掲載地 2015/04/19 23:54:16
|
|
|
|
プレゼンには asp.net を使ってるんだ、へへ
フロントデスクコード:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="sqltest.aspx.cs" Inherits="TestWeb.sqltest" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="txtsql" runat="server"></asp:TextBox>
<asp:Button ID="btnsql" runat="server" Text="注入" onclick="btnsql_Click" />
</div>
</form>
</body>
</html>
コードをコピーします
背景コード:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace TestWeb
{
public partial class sqltest : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btnsql_Click(object sender, EventArgs e)
{
if (zhuru.ProcessSqlStr(txtsql.Text))
{
Response.Write("安全");
}
else {
Response.Write("危险");
}
}
}
}
コードをコピーします
zhuru.csクラスコード:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Text.RegularExpressions;
namespace TestWeb
{
public class zhuru
{
public static bool ProcessSqlStr(string inputString)
{
string SqlStr = @"and|or|exec|execute|insert|select|delete|update|alter|create|drop|count|\*|chr|char|asc|mid|substring|master|truncate|declare|xp_cmdshell|restore|backup|net +user|net +localgroup +administrators";
try
{
if ((inputString != null) && (inputString != String.Empty))
{
string str_Regex = @"\b(" + SqlStr + @")\b";
Regex Regex = new Regex(str_Regex, RegexOptions.IgnoreCase);
//string s = Regex.Match(inputString).Value;
if (true == Regex.IsMatch(inputString))
return false;
}
}
catch
{
return false;
}
return true;
}
}
}
コードをコピーします
先の:
C#. SQLインジェクション攻撃を防ぐための.NET
次に:
既知のLAN IPアドレスのホスト名を確認する方法
関連記事
•
.NET/C# は .NET SDK と .NET CLI テレメトリをオフにします
•
. NET6における優先度キュー
•
ASP.NET Core(32)はKeyedServicesの鍵サービスの注入に依存しています
•
Nginxリバースプロキシ ASP.NET コアはUDS通信を使用します
•
.NET/C# 依存注入サービス登録 Scrutor ツール
•
[ターン]。 NET/C#はどのようにしてインスタンスがどれだけのメモリを占有しているかを計算しているのですか?
•
フロントエンドフレームワークはComponent-Partyオープンソースプロジェクトを学習します
•
.NET/C# はオブジェクト(クラスインスタンス)内の文字列の非空文字列をデスペース化します。
•
.NET/C# 正規表現 正規表現マッチング抽出
•
.NET/C# メソッド ImplOptions.AggressiveInlining パフォーマンス最適化
クズども
地主
|
掲載地 2022/02/07 19:33:01
|
Javaの動的スプライシングされたSQL文はデータベース注入を防止します
https://www.itsvse.com/thread-10249-1-1.html
pdang
掲載地 2022/03/06 10:40:43
|
学びましょう
閲覧したセクション
ごみ箱
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。
Mail To:help@itsvse.com