2016-03-25 12 views
2

何千もの行のリンクインジェクションがたくさんあるハッキングされたデータベースを手助けするために相談しました。正規表現でMysqlを検索して削除する

リンク注入の基本的な形式は、次のようにいつものように見える:

<a href="http://SOME-RANDOM-LINK-HERE.com/" style="text-decoration:none;color:#676c6c">SOME RANDOM TEXT HERE</a> 

基本的に私は私が最速を探していますtext-decoration:none;color:#676c6c

のスタイル属性が含まれているすべてのタグを削除する必要があります溶液。それが正規表現であろうと何か他のものであろうと、どんな指針も大変ありがたいです。ありがとうございました!

+1

削除したいものの例を挙げてください。 –

+0

HTMLパーサーを使用して要素を反復処理して、望ましくないものを削除してみませんか?これを正規表現で行うと、通常は非常に悪い結果につながります。これは、PHPのようなスクリプティング言語で直接行うよりも、MySQLで直接行う方がよい。 – tadman

+0

単にバックアップから復元するのはなぜですか?アプリケーションとデータベースが侵害されたとみなし、バックアップから復元してパッチを適用する必要があります。 – Sammitch

答えて

2

この正規表現を使用して注入リンクを探すことができます。

正規表現:<a .*? style="text-decoration:none;color:#676c6c".*?>.*?<\/a>

これはstyle="text-decoration:none;color:#676c6c"<a></a>を探します。これは他のリンクには触れません。

Regex101 Demo

また、MySQLで置き換えを行う方法についてこのanswerをチェックする必要があります。

関連する問題