पीएचपी फिल्टर मॉड्यूल को पूरी तरह से निष्क्रिय करने के लिए सभी इनपुट कैसे प्राप्त करें जो php इनपुट फिल्टर का उपयोग करें?


10

मैं एक बड़ी वेबसाइट पर PHP फ़िल्टर मॉड्यूल को अक्षम करना चाहता हूं, लेकिन सभी नोड्स, ब्लॉक और अन्य फ़ील्ड्स से गुजरने से जहां आप php फ़िल्टर का संभव उपयोग कर सकते हैं।

क्या एक सरल तरीका या तरीका हो सकता है कि एसक्यूएल प्रश्नों को चलाकर पता करें कि मेरी वेबसाइट पर php फ़िल्टर का उपयोग कहां किया जाता है?

जवाबों:


9

पहिया का फिर से आविष्कार करने के बजाय, बस सुरक्षा समीक्षा मॉड्यूल स्थापित करें , जिसमें निम्नलिखित जांच है:

PHP या जावास्क्रिप्ट सामग्री में (नोड्स और टिप्पणियां और Drupal 7 में फ़ील्ड)

ब्लॉक के लिए आप block_custom तालिका में प्रारूप कॉलम देख सकते हैं।

मुश्किल एक दृश्य है - मुझे अभी तक दृश्य रूप में बदमाश PHP का पता लगाने के लिए एक विश्वसनीय तरीका खोजना है।


1
मुझे लगता है कि अगर सिक्योरिटी रिव्यू लोग व्यू के लिए एक विश्वसनीय चेक नहीं जोड़ पाए , तो यह असंभव के लिए बस अगली बात हो सकती है।
मोलॉट

@ Mołot: बस उन विचारों को पुनः प्राप्त करने का एक तरीका मिला, जिन्होंने php को सक्षम किया है कृपया नीचे मेरा उत्तर देखें .. यह जानकर बहुत अच्छा लगेगा कि इसमें कोई डाउनसाइड या एज केस हैं ...
अनिल सागर 12

1
मुझे मिला "ठीक है अविश्वासित उपयोगकर्ता PHP इनपुट प्रारूप का उपयोग करने के लिए उपयोग नहीं करते हैं।" - नवीनतम संस्करण के साथ। जब मुझे सामने पृष्ठ पर php इनपुट प्रारूप के साथ एक ब्लॉक था, तो यह मुझे हरा मिला । इस समय आपका उत्तर बस असत्य लगता है।
23

इसलिए, मैं जो बता सकता हूं ... सिक्योरिटी रिव्यू मॉड्यूल आपको बताता है कि php फ़िल्टर का उपयोग किया जा रहा है ... न कि वे कौन से तत्व हैं जो वास्तव में इसका उपयोग कर रहे हैं, जो एक सच्चे सुरक्षा समीक्षा में सहायक होंगे। यह हालांकि एक अच्छी चेतावनी है कि आगे की जांच की आवश्यकता है।
जनरल रेडनेक


7

आप उन सभी विचारों को खोजने में सक्षम हो सकते हैं, जो MySQL में कमांड के नीचे चलने से php सक्षम हैं ...

SELECT vv.name , vd.display_options
FROM views_display AS vd
LEFT JOIN views_view AS vv ON vv.vid = vd.vid
WHERE vd.display_options REGEXP '.s:[3]+:"php".*'

view_display टेबल इस जानकारी को क्रमबद्ध प्रारूप में संग्रहीत करती है .... मैंने क्वेरी के ऊपर परीक्षण किया है जैसा कि अपेक्षित है .. आशा है कि यह PHP PHP पहेली को हल करने में मदद करता है :-)


1
अछा लगता है। इसे थोड़ा परखने की जरूरत होगी। इस दौरान मैंने संपादन की स्वतंत्रता ली और आपके द्वारा प्रश्न लिखने के तरीके को साफ किया (बिना इसे छूए तर्क, नाम आदि)।
मोलॉट

धन्यवाद :-) मैं सिर्फ सत्यापित करता हूं और मैं उन विचारों को देख सकता हूं जिनमें php सक्षम है .. चलो आशा करते हैं कि यह ओपी के लिए भी काम करे ..
अनिल सागर

1
यह सभी दृश्यों लिए काम नहीं करता है (जैसे कोड में परिभाषित उन), और कहा कि regex आसानी से झूठे सकारात्मक उत्पादन कर सकता है ... बेहतर कुछ नहीं से हालांकि मुझे लगता है कि :)
क्लाइव

Phpmyadmin का उपयोग करके आप बहुत आसानी से सभी तालिकाओं के सभी स्तंभों में खोज सकते हैं, php की खोज कर सकते हैं और मैन्युअल रूप से परिणामों के माध्यम से जा सकते हैं।
रॉबी

0

यदि डेटाबेस में दृश्य सहेजा जाता है तो केवल ऊपर अनिल सागर का कोड काम करता है। यदि दृश्य केवल कोड में है तो यह काम नहीं करेगा। इसलिए, मैंने थोड़ा सा स्निपेट लिखा है कि मैं डीबी के सभी विचारों को बचाने के लिए दौड़ता हूं। तब मैं MySQL स्निपेट का उपयोग php की सतह के लिए कर सकता हूँ।

  $views = views_get_all_views();
  foreach ($views as $view) {
    if (empty($view->disabled)) {
      $view->save();
      drupal_set_message('view saved: ' . check_plain($view->name));
    }
  }

0

पुराना सवाल है, लेकिन पहले मेरी Google खोज पर था।

एक कंट्राब मॉड्यूल है जो सभी PHP प्रविष्टियों को खोजने वाला है:

PHP खोजक

'PHP फ़ाइंडर' मॉड्यूल का उपयोग यह जानने के लिए किया जाता है कि PHP फ़िल्टर प्रारूप का उपयोग कहाँ किया जाता है, चाहे नोड, ब्लॉक या विचारों में।


नियमों में इस्तेमाल PHP के बारे में क्या?
पियरे.वीयरेंस
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.