SQL注入技术和跨站脚本攻击的检测(2)_MySQL
2.3 典型的 SQL 注入攻击的正则表达式
//w*((/%27)|(/’))((/%6F)|o|(/%4F))((/%72)|r|(/%52))/ix
解释:
/w* - 零个或多个字符或者下划线。
(/%27)|/’ - 单引号或它的hex等值。
(/%6 F)|o|(/%4 F))((/%72)|r|-(/%52) -‘or’的大小写以及它的hex等值。
union’SQL 查询在SQL注入各种数据库中攻击中同样是很常见的。如果前面的正则表达式仅仅检测单引号或则其他的SQL meta characters ,会造成很多的错误存在。你应该进一步修改查询,检测单引号和关键字‘union’。这同样可以进一步扩展其他的SQL关键字,像’select’, ’insert’, ’update’, ’delete’, 等等。
2.4 检测SQL注入,UNION查询关键字的正则表达式
/((/%27)|(/’))union/ix
(/%27)|(/’) - 单引号和它的hex等值
union - union关键字
可以同样为其他SQL查询定制表达式,如 >select, insert, update, delete, drop, 等等.
如果,到这个阶段,攻击者已经发现web应用程序存在SQL注入漏洞,他将尝试利用它。如果他认识到后端服务器式MS SQL server,他一般会尝试运行一些危险的储存和扩展储存过程。这些过程一般以‘sp’或‘xp’字母开头。典型的,他可能尝试运行 ‘xp_cmdshell’扩展储存过程(通过SQL Server执行Windows 命令)。SQL服务器的SA权限有执行这些命令的权限。同样他们可以通过xp_regread, xp_regwrite等储存过程修改注册表。
2.5 检测MS SQL Server SQL注入攻击的正则表达式
/exec(/s|/+)+(s|x)p/w+/ix
解释:
exec - 请求执行储存或扩展储存过程的关键字
(/s|/+)+ - 一个或多个的空白或它们的http等值编码
(s|x) p- ‘sp’或‘xp’字母用来辨认储存或扩展储存过程
/w+ - 一个或多个字符或下划线来匹配过程的名称
3. 跨站脚本(CSS)的正则表达式
当发动CSS攻击或检测一个网站漏洞的时候, 攻击者可能首先使简单的HTML标签如(粗体),(斜体)或(下划线),或者他可能尝试简单的 script标签如<script>alert("OK")</script>. 因为大多数出版物和网络传播的检测网站是否有CSS漏洞都拿这个作为例子。这些尝试都可以很简单的被检测出来。 然而,高明点的攻击者可能用它的hex值替换整个字符串。这样<script>标签会以%3C%73%63%72%69%70%74%3E出 现。 另一方面,攻击者可能使用web代理服务器像Achilles会自动转换一些特殊字符如<换成%3C、>换成%3E.这样攻击发生时,URL 中通常以hex等值代替角括号。 </script>
下列正则表达式将检测任何文本中包含的HTML的。它将捉住试图使用、、或<script>。这正则表达式应该忽略大小写。我们需要同时检测角括号和它的hex等值(% 3C|<)。检测hex进制转化的整个字符串,我们必须检测用户输入的数字和%号,即使用[a-z0-9%] 。这可能会导致一些错误出现,不是大部分会检测到真实攻击的。 </script>
3.1 一般 CSS 攻击的正则表达式
/((/%3C)|)/ix
解释:
((/%3C)|((/%2F)|//)*-结束标签/或它的 hex等值
[a-z0-9/%]+ -检查标签里的字母或它hex等值
((/%3E)|>) -检查>或它的hex等值
Snort 规则:
alert tcp $EXTERNAL_NET any -> $HTTP_SERVERS $HTTP_PORTS (msg:"NII Cross-site scripting attempt"; flow:to_server,established; pcre:"/((/%3C)|)/i"; classtype:Web-application-attack; sid:9000; rev:5;)
跨站脚本同样可以使用技术。现行默认的snort规则可以被轻易避开。
3.2章节提供了防止这种技术的方法。
3.2 "
/((/%3C)|)/I
解释:
(/%3 C)|(/%69)|i|(/%49))((/%6D)|m|(/%4D))((/%67)|g|(/%47) -’img’字母或它的大小写hex等值的变化组合
[^/n]+ -除了换行符以外的任何跟随(/%3E)|>) ->或它的hex等值
3.3 CSS 攻击的极端的正则表达式
/((/%3C)|)/I
解释:
这个规则简单寻找。由于你的web服务器和web应用程序的构架,这个规则可能产生一些错误。但它能保证捉住任何CCS或者类似CSS的攻击。
总结:
在 这篇文章中,我们提出了不同种类的正则表达式规则来检测SQL注入和跨站脚本攻击。有些规则简单而极端,一个潜在的攻击都将提高警惕。但这些极端的规则可 能导致一些主动的错误。考虑到这点,我们修改了这些简单的规则,利用了另外的样式,他们可以检查的更准确些。在这些网络应用成的攻击检测中,我们推荐将这 些作为调试你IDS或日志分析方法的起点。再经过几次修改后,在你对正常网交易部分的非恶意应答进行评估以后,你应该可以准备的检测那些攻击了。
参考
1. SQL Injection
http://www.spidynamics.com/papers/SQLInjectionWhitePaper.pdf
2. Cross Site Scripting FAQ http://www.cgisecurity.com/articles/xss-
faq.sHTML
3. The Snort IDS http://www.snort.org
4. Perl-compatible regular expressions (pcre) http://www.pcre.org
5. Web application proxy, Achilles http://achilles.mavensecurity.com
3. Advanced SQL Injection
http://www.nextgenss.com/papers/advanced_sql_injection.pdf
7. Secure Programming HOWTO, David Wheeler www.dwheeler.com
8. Threats and Countermeasures, MSDN, Microsoft

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











入力方法を英語に調整し、Shift キーとマイナス キーを押したままにします。チュートリアルの適用モデル: Lenovo AIO520C システム: Windows 10 Professional エディション: Microsoft Office Word 2022 分析 1 まず、入力方法の中国語と英語の入力を確認し、英語に調整します。 2 次に、キーボードの Shift キーとマイナス キーを同時に押します。 3 インターフェイスをチェックして、下線付きの単語を確認します。補足:Word文書に下線を素早く入力する方法 1. Wordで下線を入力する必要がある場合は、マウスでスペースを選択し、フォントメニューで入力する下線の種類を選択します。概要/注意事項: 続行する前に必ず入力方法を英語に変更してください。そうしないと、アンダースコアを正常に入力できません。

Word でテキストを入力するとき、説明や強調のために一部の位置に下線を引く必要がある場合がありますが、WPS 文書内の空白の下線が印刷できないのはなぜでしょうか。アンダーラインはどのように引けばよいのでしょうか?以下で編集者が詳しく紹介しますので、見てみましょう。 WPS ドキュメントでは、図に示すように空白スペースに下線を引くことができます。どうやってするの?詳しい操作方法は以下をお読みください。図の文書を例として、空白スペースに下線を引く方法を示します。画像の「名前」のコロンの右側にカーソルを置き、キーボードのスペースバーを押します。デモンストレーションを容易にするために、以下に示すようにフォント サイズを大きくしています。カーソルが設定位置に到達したら、放さずにクリックしたままにして、図に示すように左側のコロンの横にドラッグします。 3. 次に、図の矢印で示されている「下線」アイコンをクリックします。絵。

社会の発展に伴い、テクノロジーも急速に発展し、オフィスには電子機器が標準装備されています。現在、オフィスソフトにはさまざまな種類があります。オフィスソフトの中でもExcelは今でもよく使われています。設定を表で行うこともあります。 . これらのコンテンツを強調するために、異なる色のフォントを選択したり、フォントを濃くしたり、強調するために下線を引いたりします。フォントの設定は簡単ですが、誰もが下線の追加方法を知っているわけではありません。編集者今日は初心者の友達に教えますエクセルで下線を引く方法。 1. Excel を開いて、下の図に示すように、いくつかの単語を入力します。 2. 以下の図に示すように、テキストを選択し、右クリックして「セルの書式設定」オプションを選択します。 3. 「単一の下線」を見つけて、

css aで下線を解除する方法: 1. HTMLサンプルファイルを作成する; 2. aタグを本文に追加する; 3. 指定したaに「#none{text-decoration: none;}」を追加して下線を解除する鬼ごっこ。

今日はどのような設定を変更したのかわかりませんが、vim でプログラムを書いているときに、シングルクォーテーションもダブルクォーテーションも入力できないことに気づきました。二重引用符を使用すると、プログラム エラーが発生します。この問題の原因は、キーボードのレイアウトが実際の状況と一致しないため、変更する必要があるためです。一重引用符または二重引用符を入力できない場合の解決策: (注: デスクトップが英語の場合は、自分で翻訳してください。) 1. [システム] --> [管理] を選択 --> [キーボード] をクリックし、[American International] を [American] に変更します。スタイル! 2. 「システム」-->「環境設定の選択」-->「キーボードの選択」をクリックします。設定が下の図と一致しているかどうかを確認してください。その後、vim ツールを再度開くと、問題は解決されるはずです。

Word の下線を使用すると、単語、語句、文を強調または強調表示したり、トーンや焦点を強調したり、テキストの一貫性と読みやすさを高めることができます。下線を使用すると、読者の注意を引き、重要な情報をより目立たせることができます。下線を使用してリスト内の項目を表すこともでき、一連の単語や文章を組み合わせて明確なリストを作成し、文書の構成と読みやすさを向上させます。 Word で下線を引く方法はたくさんありますが、一般的な方法をいくつか紹介します。 Word で下線を引く方法 1: キーボード ショートカットを使用する: 文書内で「Shift+下線キー (テンキーのマイナス記号キー)」を押して、テキストに下線を作成します。方法 2、自動フォーマットを使用する: Enter

R の背景を少し説明します。 R は、Ross Ihaka と Robert Gentleman によって開発され、1993 年に初めて導入されたプログラミング言語および分析ツールです。同時に、豊富な統計およびグラフィック技術ライブラリを備えた無料のオープンソース ソフトウェアでもあります。 R は、データの取得、クリーニング、分析、視覚化、表示のためにアナリスト、統計学者、研究者によって最もよく使用されるツールの 1 つであり、IT、銀行、ヘルスケア、金融などの多くの業界で R が使用されています。目的 データ サイエンティストは、R プログラミング言語を使用して、データを収集し、統計分析を実行し、視覚化を作成できます。グラフィック表現に使用できます。 R は機械学習と深層学習の両方に使用できます

PHP では、一重引用符と二重引用符は 2 つの一般的な文字列ラッピング方法であり、使用される際の特性とルールが異なります。この記事では、一重引用符と二重引用符の使用規則をそれぞれ分析し、読者が両者の違いをよりよく理解できるように具体的なコード例を示します。 1. シングルクォートの使用規則: シングルクォーテーション内の内容はそのまま出力され、変数やエスケープ文字は解析されません。これは、一重引用符内では、PHP が文字列を通常の文字のシーケンスとして認識し、内容に対して何も行わないことを意味します。一重引用符内で
