私のクライアントが持っているデータベースがハッキングされました。データの再構築を試みています。このサイトでは、SQL Server データベースを使用して従来の ASP を実行しています。ハッカーの弱点がどこにあるのかを突き止め、今のところその侵入口を取り除いたと思います。
データベース内のすべてのテキスト列には、いくつかの html マークアップとインラインの script/js タグが追加されました。
フィールドの例を次に示します。
all</title><script>
document.write("<style>.aq21{position:absolute;clip:rect(436px,auto,auto,436px);}</style>");
</script>
<div class=aq21>
<a href=http://samedaypaydayloansonlineelqmt.com >same day payday loans online</a>
<a href=http://samedaypaydayloan
この例は、列のUsers
表にありました。UserRights
初期値は でしたがall
、追加されたリンクが表示されます。
データベース内の各テーブルの各列のすべてのフィールドを検索し、この余分なマークアップを削除する正規表現スクリプトを作成する必要があります。
基本的に、 を一致させようとすると</table>
、その文字列とそれに追加するすべてのものを空白の文字列に置き換えることができます。
これらの追加された文字列はすべて、同じ列の各フィールドで同じです。ただし、各テーブルには複数の列があります。
これは私がこれまで行ってきたことであり、ハッキングされた部分を置き換えていますが、私の正規表現のスキルは....うまくいきませんが、素敵な正規表現がおそらく私を助けてくれるでしょう。
UPDATE [databasename.[db].[databasetable]
set
UserRights = replace(UserRights,'</title><script>document.write("<style>.aq21{position:absolute;clip:rect(436px,auto,auto,436px);}</style>");</script><div class=aq21><a href=http://samedaypaydayloansonlineelqmt.com >same day payday loans online</a><a href=http://samedaypaydayloan','');
正規表現のヘルプやヒントをいただければ幸いです。