2010-12-07 24 views
6

HTML kaynağından tüm potentially dangerous elements or bogus html tag (such as bad links) kaldırmak zorunda olan PHP sınıfı yazıyorum.php içinde HTML temizleme php

Genellikle HTML Purifier library veya benzeri kitaplık,
kullanır, ancak bu projede kendi kendine yazılmış kod gerekir.

iki koşul vardır:

  1. O 3KB kodundan daha olamaz
  2. o

Ben iş yapabilirdi şeyler yazdım gerçekten hızlı yürütmek olmalıdır: http://pihost.pl/purify.php
ama

Kullanılacak kadar güvenli olup olmadığını bilmiyorum:
Düzgün test etmek için herhangi bir yolu var mı?
Veya birileri böyle hızlı, küçük ve test edilmiş bir kütüphaneye sahip olabilir mi?

+1

"Potansiyel olarak tehlikeli elementler" ile ne demek istiyorsun? – Ben

+0

javascript, flash ve java öğeleri, "kötü linkler" – Ascon

+1

Güvenlik mem: * istenmeyen * öznitelikleri (onClick =) filtrelemek için tavsiye edilir, ama sadece * zararlı * içerik (img src = javascript) bir hata mesajı ile kefaletle tavsiye edilir. Kötü kokuyu temizlemeye çalışma, sadece bırak. – mario

cevap

1

Dikkate alınması gereken önemli bir şey - arıtıcınız bozuk/hatalı biçimlendirilmiş HTML'ye nasıl tepki veriyor? Bu durumla mücadele etmek için, HTML'yi temizlemek için önce temizlemeden önce PHP tidy'u çalıştırmanızı öneririm.

Eğer bir dizi test istiyorsanız, HTMLPurifier'ın kullandığı tests'u deneyebilirsiniz. http://ha.ckers.org/xss.html

Sen arıtma yoluyla bu çalıştırmayı deneyin ve diğer tarafa çıkıyor ne görebiliyordu:

0

Bu site örneği patlatır bir ton vardır.