2016-03-25 14 views
2

Binlerce satırda birçok bağlantı enjekte eden saldırıya uğramış bir veritabanına yardımcı olmak için danıştım.Mysql arama ve regex ile kaldır

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

Esasen ben en hızlı arıyorum text-decoration:none;color:#676c6c

bir stil özelliği içeren TÜM A etiketleri silmek gerekir:

bağlantı enjeksiyonu temel biçimi aşağıdaki gibi hep görünüyor çözüm. Düzenli ifadeler veya başka bir şey olsun, herhangi bir rehberlik takdir edilmektedir. Teşekkür ederim!

+1

Lütfen silmek istediğiniz tam olarak bir örnek verin. –

+0

Neden bir HTML ayrıştırıcısı kullanmıyor ve elemanların üzerinde yinelemek istemiyor musunuz? Bunu düzenli bir ifadeyle yapmak genellikle çok kötü sonuçlara yol açar. Bu, PHP gibi bir betik dilinde doğrudan MySQL'den daha iyi yapılır. – tadman

+0

Neden sadece yedeklemeden geri yüklenmiyor? Uygulamayı ve veritabanı güvenliğini ele almalı, yedeklemeden geri yüklemeyi ve sonra düzeltme ekini kullanmalısınız. – Sammitch

cevap

2

Bu regex'i kullanarak enjekte edilen bağlantıları arayabilirsiniz.

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

Bu style="text-decoration:none;color:#676c6c" ile <a></a> arayacaktır. Bu diğer bağlantılara dokunmayacak.

Regex101 Demo

Ayrıca MySql yerini almadığını nasıl bu answer kontrol etmelidir.