2012-02-18 18 views
5

मैं "सिम्फनी सीएमएस" एप्लिकेशन के अंदर यह पाया, यह बहुत छोटा सा है:क्या यह कार्य xss पहचान के लिए पर्याप्त है?

https://github.com/symphonycms/xssfilter/blob/master/extension.driver.php#L100

और मैं यह चोरी और अपने आवेदन में इसका इस्तेमाल प्रदर्शन के लिए HTML के साथ स्ट्रिंग को साफ़ करने में की सोच रहा था। क्या आपको लगता है कि यह एक अच्छा काम करता है?

ps: मुझे पता है कि एचटीएमएल शोधक है, लेकिन यह बात बहुत बड़ी है। और मैं कुछ कम अनुमोदित पसंद करता हूं, लेकिन मैं अभी भी इसे कुशल बनाना चाहता हूं।


मैं इस पेज से तार के खिलाफ यह परीक्षण किया गया है: http://ha.ckers.org/xss.html। लेकिन अगर "एक्सएसएस लोकेटर 2" के खिलाफ विफल रहता है। सुनिश्चित नहीं है कि कोई भी साइट को हैक करने के लिए उस स्ट्रिंग का उपयोग कैसे कर सकता है :)

+1

यह कहता है: "[...] यह निर्धारित करेगा कि यह * संभावित रूप से * एक एक्सएसएस हमला है"। – Gumbo

उत्तर

7

नहीं, मैं इसका उपयोग नहीं करता। कई अलग-अलग हमले हैं जो सभी उस संदर्भ पर निर्भर करते हैं जिसमें डेटा डाला जाता है। एक एकल समारोह उन सभी को कवर नहीं करेगा। यदि आप नज़दीकी रूप से देखते हैं, तो वास्तव में केवल चार परीक्षण हैं:

// Set the patterns we'll test against 
$patterns = array(
    // Match any attribute starting with "on" or xmlns 
    '#(<[^>]+[\x00-\x20\"\'\/])(on|xmlns)[^>]*>?#iUu', 

    // Match javascript:, livescript:, vbscript: and mocha: protocols 
    '!((java|live|vb)script|mocha):(\w)*!iUu', 
    '#-moz-binding[\x00-\x20]*:#u', 

    // Match style attributes 
    '#(<[^>]+[\x00-\x20\"\'\/])style=[^>]*>?#iUu', 

    // Match unneeded tags 
    '#</*(applet|meta|xml|blink|link|style|script|embed|object|iframe|frame|frameset|ilayer|layer|bgsound|title|base)[^>]*>?#i' 
); 

कुछ और परीक्षण नहीं किया जाता है। हमलों के अलावा कि इन परीक्षणों का पता लगाने (झूठी सकारात्मक) नहीं है, यह गलती से कुछ हमले (झूठी नकारात्मक) के रूप में कुछ इनपुट की रिपोर्ट भी कर सकता है।

तो एक्सएसएस हमलों का पता लगाने की कोशिश करने के बजाय, बस उचित स्वच्छता का उपयोग करना सुनिश्चित करें।

1

मुझे लगता है कि यह तारों का परीक्षण करने के लिए एक अच्छा काम करता है, कम से कम मैं अपने परीक्षणों के अनुसार कह सकता हूं।

+1

यह उन्हें संचरित नहीं करता है, यह केवल – thelolcat

+0

याप का परीक्षण करने के लिए है, यही मेरा मतलब है। किसी भी भ्रम के लिए खेद है। – wadie

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