| प्लगइन का नाम | ForumWP |
|---|---|
| कमजोरियों का प्रकार | क्रॉस-साइट स्क्रिप्टिंग (XSS) |
| CVE संख्या | CVE-2025-13746 |
| तात्कालिकता | मध्यम |
| CVE प्रकाशन तिथि | 2026-01-06 |
| स्रोत URL | CVE-2025-13746 |
महत्वपूर्ण: ForumWP <= 2.1.6 में संग्रहीत क्रॉस-साइट स्क्रिप्टिंग (XSS) — वर्डप्रेस साइट मालिकों को अब क्या करना चाहिए
तारीख: 6 जनवरी 2026 | लेखक: हांगकांग सुरक्षा विशेषज्ञ
ForumWP — फोरम और चर्चा बोर्ड प्लगइन (संस्करण ≤ 2.1.6) में एक नई प्रमाणित संग्रहीत क्रॉस-साइट स्क्रिप्टिंग (XSS) भेद्यता का खुलासा किया गया (CVE‑2025‑13746)। एक प्रमाणित उपयोगकर्ता जिसके पास सब्सक्राइबर भूमिका है, अपने प्रदर्शन नाम के माध्यम से स्क्रिप्ट सामग्री इंजेक्ट कर सकता है जो, जब कुछ फोरम दृश्य में प्रस्तुत किया जाता है, स्थायी हो जाता है और अन्य उपयोगकर्ताओं के ब्राउज़र में निष्पादित होता है, जिसमें विशेषाधिकार प्राप्त उपयोगकर्ता भी शामिल हैं। विक्रेता ने संस्करण 2.1.7 में एक पैच जारी किया — यदि आप ForumWP चला रहे हैं तो तुरंत अपडेट करें।.
यह सलाह एक व्यावहारिक, चरण-दर-चरण मार्गदर्शिका प्रदान करती है: समस्या क्या है, इसका कैसे शोषण किया जा सकता है, इसे जल्दी कैसे पहचानें, तात्कालिक शमन जो आप अभी लागू कर सकते हैं, और भविष्य के जोखिम को कम करने के लिए दीर्घकालिक सख्ती के उपाय।.
सामग्री की तालिका
- सारांश: मुख्य समस्या
- यह क्यों खतरनाक है
- तकनीकी विश्लेषण (यह कैसे काम करता है)
- कौन जोखिम में है और सामान्य शोषण परिदृश्य
- तात्कालिक कार्रवाई (कुछ मिनटों के भीतर)
- अनुशंसित WAF / वर्चुअल पैच नियम (उदाहरण)
- पहचान: पता करें कि क्या आप पहले से ही समझौता कर चुके हैं
- सफाई और सुधार (सुरक्षित, विश्वसनीय कदम)
- सख्ती और डेवलपर सुधार (कोडिंग उदाहरण)
- घटना प्रतिक्रिया चेकलिस्ट
- दीर्घकालिक रोकथाम रणनीतियाँ
- व्यावहारिक उदाहरण और स्क्रिप्ट
- समापन विचार
सारांश: मुख्य समस्या
- भेद्यता: ForumWP प्लगइन (≤ 2.1.6) में प्रदर्शन नाम क्षेत्र के माध्यम से प्रमाणित (सब्सक्राइबर+) संग्रहीत XSS।.
- CVE: CVE‑2025‑13746।.
- गंभीरता: मध्यम (CVSS 6.5) — शोषण प्रभावशाली हो सकता है (सत्र चोरी, अनधिकृत क्रियाएँ, स्थायी विकृति, मैलवेयर वितरण) और इसके लिए एक प्रमाणित उपयोगकर्ता को पेलोड इंजेक्ट करने की आवश्यकता होती है जो बाद में अन्य उपयोगकर्ताओं को प्रस्तुत किया जाता है।.
- में ठीक किया गया: ForumWP 2.1.7।.
- शोषण के लिए उपयोगकर्ता इंटरैक्शन की आवश्यकता होती है (जैसे, एक विशेषाधिकार प्राप्त उपयोगकर्ता एक धागे को देख रहा है जहां दुर्भावनापूर्ण प्रदर्शन नाम प्रस्तुत किया गया है)।.
यदि आप ForumWP का उपयोग करके सामुदायिक फोरम होस्ट करते हैं, तो इसे उच्च प्राथमिकता के रूप में मानें: स्टोर किया गया XSS स्थायी है और अक्सर अनुवर्ती हमलों की ओर ले जाता है।.
यह क्यों खतरनाक है
स्टोर किया गया XSS सर्वर (डेटाबेस या सामग्री) पर दुर्भावनापूर्ण पेलोड को स्टोर करता है और प्रभावित सामग्री को लोड करने वाले किसी भी आगंतुक को प्रभावित करता है। इस मामले में:
- हमले का वेक्टर: एक प्रमाणित उपयोगकर्ता (सदस्य) अपने प्रदर्शन नाम को HTML/JavaScript शामिल करने के लिए अपडेट करता है जिसे सहेजा जाता है।.
- हमले की स्थिरता: display_name फोरम थ्रेड्स, लेखक बैज, हाल की पोस्ट, उपयोगकर्ता सूचियों में उपयोग किया जाता है - एकल इंजेक्शन कई पृष्ठों को खतरे में डाल सकता है।.
- प्रभाव: मनमाना JavaScript निष्पादन (रीडायरेक्ट, DOM हेरफेर, कुकी/टोकन चोरी), प्रशासकों/मॉडरेटर के ब्राउज़र में किए गए विशेषाधिकार प्राप्त क्रियाएँ, ड्राइव-बाय डाउनलोड या दुर्भावनापूर्ण साइटों पर रीडायरेक्ट, और स्थायी विकृति से प्रतिष्ठा को नुकसान।.
क्योंकि पेलोड स्थायी है और संभवतः कई उपयोगकर्ताओं द्वारा देखा जाएगा, यहां तक कि निम्न-विशेषाधिकार वाले खाते भी महत्वपूर्ण घटनाओं में बढ़ सकते हैं।.
तकनीकी टूटना (क्या हो रहा है)
उच्च स्तर पर:
- प्लगइन फोरम टेम्पलेट्स के भीतर वर्डप्रेस उपयोगकर्ता प्रदर्शन नाम को स्वीकार करता है या प्रदर्शित करता है।.
- प्रोफ़ाइल संपादन से इनपुट (display_name) को सहेजने या फोरम टेम्पलेट्स में आउटपुट करते समय अपर्याप्त रूप से साफ़/एस्केप किया जाता है।.
- एक सदस्य display_name में HTML टैग या स्क्रिप्ट तत्व शामिल कर सकता है। जब टेम्पलेट कच्चे (या अपर्याप्त रूप से एस्केप किए गए) फ़ंक्शंस का उपयोग करके प्रदर्शन नाम को आउटपुट करता है, तो ब्राउज़र इंजेक्टेड JavaScript को निष्पादित करते हैं।.
सामान्य समस्याग्रस्त पैटर्न:
- उपयोगकर्ता इनपुट को बिना साफ़ किए स्टोर करना (उपयोगकर्ता मेटा या प्रोफ़ाइल फ़ील्ड में कच्चे POST डेटा को सहेजना)।.
- उपयोगकर्ता इनपुट को बिना एस्केप किए आउटपुट करना (जैसे, echo $user->display_name; के बजाय echo esc_html( $user->display_name );)।.
परिणाम: एक स्टोर किया गया स्क्रिप्ट तब निष्पादित होता है जब कोई भी पृष्ठ जो display_name को प्रिंट करता है, ब्राउज़र में लोड होता है।.
कौन जोखिम में है और सामान्य शोषण परिदृश्य
जोखिम में साइटें:
- WordPress साइटें जो ForumWP ≤ 2.1.6 चला रही हैं और जो सदस्यों को उनके प्रदर्शन नाम को संपादित करने की अनुमति देती हैं (डिफ़ॉल्ट WP व्यवहार)।.
- साइटें जहां फोरम पृष्ठों पर प्रशासक, मॉडरेटर, या अन्य विशेषाधिकार प्राप्त भूमिकाएँ जाती हैं।.
- साइटें जो प्रोफ़ाइल अपडेट एंडपॉइंट्स के लिए अनुरोध निरीक्षण या ब्लॉकिंग नियमों की कमी हैं।.
सामान्य शोषण परिदृश्य:
- हमलावर पंजीकरण करता है (या एक मौजूदा सदस्य का उपयोग करता है), प्रदर्शन नाम को एक स्क्रिप्ट पेलोड में सेट करता है। जब एक मॉडरेटर/व्यवस्थापक एक थ्रेड या उपयोगकर्ता सूची को देखता है, तो स्क्रिप्ट चलती है और विशेषाधिकार प्राप्त उपयोगकर्ता के ब्राउज़र के माध्यम से क्रियाएँ कर सकती है।.
- पेलोड एक बाहरी स्क्रिप्ट लोड करता है ताकि मैलवेयर वितरित किया जा सके या उपयोगकर्ताओं को फ़िशिंग पृष्ठों पर पुनर्निर्देशित किया जा सके।.
- स्थायी विकृति: स्क्रिप्ट DOM को बदलती हैं ताकि फ़िशिंग बैनर या विज्ञापन इंजेक्ट किए जा सकें।.
जब सार्वजनिक पंजीकरण की अनुमति होती है तो हमले का स्तर कम होता है - खुले पंजीकरण को फोरम इंस्टॉलेशन के लिए एक उच्च जोखिम के रूप में मानें।.
तत्काल कार्रवाई जो आपको अब करनी चाहिए (कुछ मिनटों से एक घंटे तक)
- ForumWP को तुरंत 2.1.7 (या बाद में) पर अपडेट करें।. यह अंतिम समाधान है। यदि आप अब अपडेट कर सकते हैं, तो बिना देरी किए ऐसा करें।.
- यदि आप तुरंत अपडेट नहीं कर सकते हैं, तो अल्पकालिक शमन लागू करें:
- क्षमताओं को बदलकर अस्थायी रूप से यह सीमित करें कि कौन अपना प्रोफ़ाइल/प्रदर्शन नाम संपादित कर सकता है।.
- नए उपयोगकर्ता पंजीकरण को अक्षम करें (सेटिंग्स → सामान्य → सदस्यता) जब तक पैच न हो जाए।.
- नए खातों के लिए मजबूर मॉडरेशन या मैनुअल अनुमोदन करें।.
- संदिग्ध display_name मानों और इनलाइन स्क्रिप्टों को ब्लॉक करने के लिए अनुरोध-निरीक्षण नियम या WAF नियम लागू करें (उदाहरण नीचे दिए गए हैं)।.
- संदिग्ध display_name मानों के लिए स्कैन करें और स्क्रिप्ट टैग हटा दें (पता लगाने के प्रश्न नीचे दिए गए हैं)।.
- मॉडरेटरों और प्रशासकों को सूचित करें कि पैचिंग और सफाई पूरी होने तक संदिग्ध थ्रेड्स को देखने से बचें।.
अनुशंसित WAF / वर्चुअल पैच नियम (उदाहरण)
नीचे व्यावहारिक हस्ताक्षर हैं जिन्हें आप एक वेब एप्लिकेशन फ़ायरवॉल, रिवर्स प्रॉक्सी, या होस्ट-स्तरीय ModSecurity कॉन्फ़िग में वर्चुअल पैच के रूप में जोड़ सकते हैं जब तक आप प्लगइन को अपडेट नहीं करते। ये सामान्य पैटर्न हैं - अपने वातावरण के अनुसार समायोजित करें।.
सामान्य मार्गदर्शन:
- POST पैरामीटर जैसे display_name, उपनाम, user_login, first_name, last_name, और प्रोफ़ाइल अपडेट एंडपॉइंट्स (/wp-admin/profile.php, /wp-admin/user-edit.php, admin-ajax एंडपॉइंट्स) की जांच करें।.
- स्क्रिप्ट टैग, इवेंट हैंडलर्स (onerror/onload), javascript:, <svg onload, और एन्कोडेड समकक्षों वाले पेलोड को ब्लॉक या फ्लैग करें।.
- झूठे सकारात्मक से बचने के लिए पहले पहचान/लॉगिंग मोड में नियमों का परीक्षण करें।.
उदाहरण ModSecurity नियम (छद्म):
<!-- Example ModSecurity pseudo-rule -->
SecRule REQUEST_METHOD "^(POST|PUT)$" \
"chain,deny,status:403,msg:'Blocked possible stored XSS in user display name'"
SecRule ARGS_NAMES "(display_name|nickname|first_name|last_name|user_login)" \
"chain"
SecRule ARGS "(<\s*script\b|javascript:|onerror\s*=|onload\s*=|<\s*svg\b|%3Cscript%3E)" \
"t:lowercase,t:urlDecode,t:removeNulls"
क्लाउड/CDN WAF नियम (तार्किक):
- यदि /wp-admin/profile.php या AJAX उपयोगकर्ता अपडेट एंडपॉइंट पर POST किया गया है और कोई भी पैरामीटर स्क्रिप्ट पैटर्न्स को शामिल करता है, तो ब्लॉक करें और लॉग करें।.
- लक्षित प्लगइन फ्रंट-एंड रूट (admin-ajax.php, ForumWP द्वारा उपयोग किए जाने वाले REST एंडपॉइंट) और <script, javascript:, onerror=, onload=, <svg, और एन्कोडेड फॉर्म के लिए पेलोड की जांच करें।.
पहले पहचान मोड में नियम लागू करें और मॉनिटर करें। असत्य सकारात्मक के लिए ट्यून करें इससे पहले कि इनकार मोड में स्विच करें।.
पहचान: पता करें कि क्या आप पहले से ही समझौता कर चुके हैं
डेटाबेस और रेंडर की गई पृष्ठों में इंजेक्टेड display_name मान और संबंधित उपयोगकर्ता मेटा के लिए खोजें।.
डेटाबेस क्वेरी (उदाहरण):
SELECT ID, user_login, display_name FROM wp_users WHERE display_name LIKE '%<script%' OR display_name LIKE '%<svg%' OR display_name REGEXP '(<|%3C).*script'; SELECT user_id, meta_key, meta_value FROM wp_usermeta WHERE meta_value LIKE '%<script%' OR meta_value LIKE '%javascript:%' OR meta_value LIKE '%onerror=%';
WP-CLI त्वरित खोज:
wp db query "SELECT ID,user_login,display_name FROM wp_users WHERE display_name LIKE '%<script%';"
अन्य व्यावहारिक जांच:
- फोरम पृष्ठों को क्रॉल करें (wget/curl) और ज्ञात लेखक नामों के पास <script के लिए grep करें।.
- स्क्रिप्ट पेलोड्स को शामिल करने वाले प्रोफाइल एंडपॉइंट्स के लिए POST अनुरोधों के लिए सर्वर एक्सेस लॉग की जांच करें।.
- हाल के प्रोफाइल अपडेट के लिए एप्लिकेशन/प्लगइन लॉग का ऑडिट करें।.
Indicators of compromise (IOCs): display_name or nickname contains <script, javascript:, onerror=, or encoded equivalents like %3Cscript%3E.
यदि आप इंजेक्टेड सामग्री पाते हैं, तो पूर्ण जांच से पहले विनाशकारी कार्यों (जैसे, उपयोगकर्ता खातों को हटाना) से बचें; इंजेक्टेड सामग्री बैकअप या अन्य सामग्री क्षेत्रों में मौजूद हो सकती है।.
सफाई और सुधार (सुरक्षित, विश्वसनीय कदम)
- आगे के जोखिम को रोकने के लिए फोरम के लिए साइट को रखरखाव या केवल पढ़ने के मोड में डालें।.
- किसी भी सफाई से पहले साइट का बैकअप लें (फाइलें + डेटाबेस)।.
- display_name मानों को प्रोग्रामेटिक रूप से साफ करें - केवल मैनुअल संपादनों पर निर्भर न रहें।.
display_name को साफ करने के लिए उदाहरण PHP/WP-CLI स्क्रिप्ट:
<?php
- पोस्ट, टिप्पणियों और उपयोगकर्ता मेटा की जांच करें कि क्या एम्बेडेड स्क्रिप्ट हैं और आवश्यकतानुसार स्वच्छता/हटाएँ।.
- उन विशेषाधिकार प्राप्त उपयोगकर्ताओं के लिए व्यवस्थापक पासवर्ड और एप्लिकेशन टोकन बदलें जिन्होंने प्रमाणित होते समय संक्रमित पृष्ठ देखे हो सकते हैं।.
- फ़ाइलों और डेटाबेस का पूर्ण मैलवेयर स्कैन चलाएँ; बैकडोर या अपरिचित फ़ाइलें हटाएँ।.
- अनुसूचित कार्यों (wp_cron) और सक्रिय प्लगइन्स की जांच करें कि क्या स्थायी तंत्र हैं।.
- 2.1.7+ पर पैच करने के बाद, सामान्य संचालन को फिर से सक्षम करें और पुनरावृत्ति के लिए लॉग को ध्यान से मॉनिटर करें।.
महत्वपूर्ण: बैकअप और परीक्षण के बिना उत्पादन में बल्क खोज-प्रतिस्थापन से बचें। उत्पादन में लागू करने से पहले स्टेजिंग पर wp‑cli खोज-प्रतिस्थापन का सावधानी से उपयोग करें।.
हार्डनिंग और डेवलपर सुधार (कोड स्तर)
दो ट्रैक: सर्वर/ऑप्स शमन और थीम/प्लगइन्स में कोड हार्डनिंग।.
A — इनपुट के लिए सर्वोत्तम प्रथाएँ
- लिखने पर इनपुट की स्वच्छता: display_name या उपनाम को सहेजते समय sanitize_text_field() या मजबूत फ़िल्टर का उपयोग करें।.
- आउटपुट पर एस्केप करें: संदर्भ के आधार पर esc_html(), esc_attr(), या esc_url() का उपयोग करें।.
- सुरक्षित स्ट्रिंग्स को स्टोर करना पसंद करें और रेंडर समय पर डिस्प्ले को फॉर्मेट करें।.
B — प्रोफ़ाइल सहेजने पर स्वच्छता लागू करें (उदाहरण)
add_action( 'profile_update', 'hksec_sanitize_display_name_on_update', 10, 2 );
function hksec_sanitize_display_name_on_update( $user_id, $old_user_data ) {
$user = get_userdata( $user_id );
if ( ! $user ) return;
$display = isset( $_POST['display_name'] ) ? $_POST['display_name'] : $user->display_name;
$clean_display = sanitize_text_field( wp_strip_all_tags( $display ) );
if ( $clean_display !== $user->display_name ) {
wp_update_user( array( 'ID' => $user_id, 'display_name' => $clean_display ) );
}
}
C — टेम्पलेट में प्रिंट करते समय एस्केप करें
बुरा:
echo $उपयोगकर्ता->प्रदर्शन_नाम;
अच्छा:
echo esc_html( $उपयोगकर्ता->प्रदर्शन_नाम );
D — यदि सीमित HTML की आवश्यकता है
केवल आवश्यक होने पर एक सख्त KSES श्वेतसूची का उपयोग करें:
$allowed = wp_kses_allowed_html( 'post' );
केवल तब अनुमति दें जब आप जोखिमों को पूरी तरह से समझते हों।.
ई — प्लगइन/टेम्पलेट समीक्षा
- सभी टेम्पलेट्स का ऑडिट करें जो उपयोगकर्ता-प्रदान किए गए फ़ील्ड को आउटपुट करते हैं और esc_* फ़ंक्शंस का सही उपयोग सुनिश्चित करें।.
- JavaScript संदर्भों या HTML विशेषताओं में बिना एस्केप किए गए मानों को इंजेक्ट करने से बचें।.
घटना प्रतिक्रिया चेकलिस्ट (चरण-दर-चरण)
- कमजोरियों की उपस्थिति की पुष्टि करें (प्लगइन संस्करण ≤ 2.1.6)।.
- ForumWP को तुरंत 2.1.7 पर पैच करें।.
- यदि आप तुरंत पैच नहीं कर सकते:
- अनुरोध निरीक्षण/WAF नियमों को आभासी पैच के रूप में लागू करें।.
- प्रोफ़ाइल संपादन और उपयोगकर्ता पंजीकरण को प्रतिबंधित करें।.
- वर्तमान साइट का बैकअप लें (फाइलें + DB)।.
- संदिग्ध display_name और usermeta प्रविष्टियों के लिए DB को स्कैन करें; निष्कर्षों को दस्तावेज़ करें।.
- स्क्रिप्टेड विधियों के साथ दुर्भावनापूर्ण मानों को साफ़ करें या हटा दें।.
- व्यवस्थापक क्रेडेंशियल और API कुंजियों को घुमाएँ।.
- बैकडोर के लिए फ़ाइलों, अनुसूचित कार्यों और सक्रिय प्लगइनों को स्कैन करें।.
- घटना और उठाए गए कार्यों के बारे में मॉडरेटर/व्यवस्थापकों को सूचित करें।.
- कम से कम 30 दिनों के लिए लॉग और साइट के व्यवहार की निगरानी करें।.
- पैच प्रबंधन और पहचान प्रथाओं की समीक्षा और अद्यतन करें।.
दीर्घकालिक रोकथाम रणनीतियाँ
- एक पैचिंग नीति स्थापित करें: महत्वपूर्ण/सुरक्षा पैच को 24–72 घंटों के भीतर लागू करें।.
- प्रकटीकरण विंडो के दौरान शोषण प्रयासों को रोकने के लिए अनुरोध निरीक्षण या आभासी पैचिंग लागू करें।.
- पंजीकरण प्रवाह को मजबूत करें: ईमेल पुष्टि, मैनुअल अनुमोदन की आवश्यकता करें, या सामुदायिक फोरम के लिए पंजीकरण को आमंत्रित उपयोगकर्ताओं तक सीमित करें।.
- कस्टम थीम और प्लगइन्स में सख्त इनपुट सफाई और आउटपुट एस्केपिंग को लागू करें।.
- उपयोगकर्ता इनपुट को संभालने वाले प्लगइन्स के लिए नियमित कोड ऑडिट और सुरक्षा समीक्षाएँ करें।.
- एक घटना प्रतिक्रिया प्लेबुक बनाए रखें और टेबलटॉप अभ्यास चलाएँ।.
- हाल के बैकअप रखें और नियमित रूप से पुनर्स्थापना प्रक्रियाओं को मान्य करें।.
- अपने वातावरण में प्लगइन्स के लिए भेद्यता फ़ीड की निगरानी करें और जहाँ उपलब्ध हो, विक्रेता सुरक्षा सलाहकारों की सदस्यता लें।.
व्यावहारिक उदाहरण और स्क्रिप्ट जो आप अभी उपयोग कर सकते हैं
- त्वरित WP‑CLI खोज (टैग के साथ display_name):
wp db query "SELECT ID,user_login,display_name FROM wp_users WHERE display_name LIKE '%<script%' OR display_name LIKE '%<svg%';"
- सभी display_name से स्क्रिप्ट टैग को सुरक्षित रूप से हटा दें (पहले स्टेजिंग पर परीक्षण करें):
wp eval-file sanitize-display-names.php
- अस्थायी क्षमता प्रतिबंध — सब्सक्राइबर्स को प्रोफाइल संपादित करने से रोकें (अस्थायी रूप से mu‑plugin या theme functions.php में जोड़ें):
function hksec_restrict_subscriber_profile_edit() {;पैच और सफाई के बाद इस परिवर्तन को हटा दें।.
समापन विचार — क्या लेना है
- डिस्प्ले नामों के माध्यम से संग्रहीत XSS फोरम सॉफ़्टवेयर में एक महत्वपूर्ण जोखिम है। निम्न-privilege खाते स्थायी, खतरनाक पेलोड बना सकते हैं।.
- सबसे महत्वपूर्ण क्रियाएँ: ForumWP को 2.1.7 (या बाद में) अपडेट करें और उपयोगकर्ता डेटा को स्कैन और साफ करें।.
- जबकि आप सुधार कर रहे हैं, जोखिम को कम करने और प्रयास किए गए सबमिशन को अवरुद्ध करने के लिए आभासी पैच लागू करें या निरीक्षण नियमों का अनुरोध करें।.
- इस घटना का उपयोग पैच प्रबंधन को मजबूत करने, कोड में इनपुट/आउटपुट स्वच्छता में सुधार करने और भविष्य की समस्याओं के लिए पहचान/निगरानी लागू करने के लिए करें।.
यदि आपको अनुरोध निरीक्षण नियम लागू करने, अपने डेटाबेस को स्कैन करने, या अपने फोरम को सुरक्षित रूप से साफ़ और पुनर्स्थापित करने में सहायता की आवश्यकता है, तो एक योग्य सुरक्षा सलाहकार या घटना प्रतिक्रिया प्रदाता से संपर्क करें जो वर्डप्रेस वातावरण को समझता है और तेजी से कार्य कर सकता है।.
सतर्क रहें और नियमित रूप से प्लगइन्स को अपडेट करें — कई उल्लंघन बुनियादी स्वच्छता के साथ टाले जा सकते हैं।.
— हांगकांग सुरक्षा विशेषज्ञ