2015-02-18 8 views
10

अब मैं एचटीएमएल शोधक पुस्तकालय की तलाश में हूं। और मैंने पाया है कि दो "उल्लू" पुस्तकालय हैं। पहला https://code.google.com/p/owasp-java-html-sanitizer/ है और दूसरा https://www.owasp.org/index.php/Category:OWASP_AntiSamy_Project है।जावा: ओवास्प एंटीस्मी बनाम ओवास्प-जावा-एचटीएमएल-sanitize

मेरा प्रश्न है - तुलना करते समय पेशेवर और विपक्ष क्या हैं।

उत्तर

16

ओडब्ल्यूएएसपी जावा एचटीएमएल सैनिटाइज़र एंटीसामी की तुलना में नई परियोजना है। इन परियोजनाओं के लक्ष्य समान हैं - एक्सएसएस को रोकने और अन्य अवांछित सामग्री को फ़िल्टर करने के लिए एचटीएमएल को स्वच्छ करना। हालांकि उनका दृष्टिकोण अलग है। प्रत्येक दृष्टिकोण में इसके ट्रेडऑफ होते हैं ताकि आपको अपनी आवश्यकताओं के आधार पर समाधान का चयन करना चाहिए। संक्षेप में एचटीएमएल सैनिटाइज़र का उपयोग करना आसान और तेज़ है, दूसरी तरफ यह कम लचीला है। हालांकि यह ज्यादातर उपयोगकर्ताओं के लिए पर्याप्त होना चाहिए। ध्यान दें कि एंटीसामी न केवल एचटीएमएल बल्कि सीएसएस को संसाधित कर सकती है।

Here is message ओवस्प मेलिंग सूचियों से एचटीएमएल सैनिटाइज़र प्रोजेक्ट के निर्माण का अनुरोध करते हुए, इसके कुछ फायदों और एंटीसामी से मतभेदों की सूची सहित।

मैं एक नई ओडब्ल्यूएएसपी परियोजना शुरू करना चाहता हूं जो एंटीसामी के समान है।

मैं "OWASP जावा एचटीएमएल प्रक्षालक" और पर पहले से ही कोड उपलब्ध है इस परियोजना के कॉल करने के लिए करना चाहते हैं:

https://code.google.com/p/owasp-java-html-sanitizer/

यह काजा परियोजना है कि गूगल द्वारा दान किया गया था से कोड है। यह बल्कि उच्च प्रदर्शन और कम स्मृति उपयोग है।

  1. इस कोड को 4 एक्स डोम मोड में AntiSamy सफ़ाई की गति और 2X SAX मोड में AntiSamy की गति
  2. उपयोग करने के लिए बहुत आसान प्रदान करता है। यह सरल प्रोग्रामेटिक पॉजिटिव नीति कॉन्फ़िगरेशन (नीचे देखें) के लिए अनुमति देता है। कोई एक्सएमएल कॉन्फ़िगरेशन नहीं।
  3. यह विभिन्न सुरक्षा खामियों कि निको HTML पार्सर इसके साथ लाया
  4. सक्रिय अपने आप को और गूगल के AppSec टीम की ओर से माइक शमूएल द्वारा बनाए रखा से ग्रस्त नहीं है
  5. पहले से ही AntiSamy की इकाई का 80% गुजर प्लस कई और अधिक परीक्षण
  6. केवल 3 निर्भर जार फ़ाइलें
  7. यह एक शुद्ध जावा 6 प्रोजेक्ट है और जावा 5 या उससे नीचे का समर्थन नहीं करता है (कृपया ध्यान दें एंटीसामी 1.4+ का समर्थन करता है)।

हम वर्तमान में अल्फा में हैं - लेकिन जल्द ही उत्पादन तैयार होंगे और जल्द ही तैयार होंगे।

नमूना कार्यक्रम संबंधी नीति उदाहरण:

 // A VERY SIMPLE WHITELISTING POLICY 
    final ImmutableSet<String> okTags = ImmutableSet.of(
     "a", "b", "br", "div", "i", "img", "input", "li", 
     "ol", "p", "span", "ul"); 

    final ImmutableSet<String> okAttrs = ImmutableSet.of(
     "div", "checked", "class", "href", "id", "target", "title", "type"); 

आप क्या सोचते हैं? क्या थोड़ा सम्मानजनक प्रतियोगिता अच्छी बात है?

  • जिम
+0

लेकिन साथ एचटीएमएल प्रक्षालक आप एक नीति निर्धारित करने की और AntiSamy पहले से ही नीतियों, क्या सामान्य पर्याप्त HTMLs के लिए वास्तव में सहायक हो सकता है की पूर्व निर्धारित सेट होता है। –

संबंधित मुद्दे