अपनी साइट को साफ़ करें और बनाए रखें

अपनी साइट को साफ़ रखने और आने वाले समय में होने वाली हैकिंग से बचने के लिए, आपको इनकी ज़रूरत होगी:

  • आपकी साइट के सर्वर का शेल या टर्मिनल एडमिन ऐक्सेस: वेब, डेटाबेस, फ़ाइलें
  • शेल या टर्मिनल कमांड का ज्ञान
  • कोड को समझना (जैसे कि PHP या JavaScript)
  • फ़ाइलों, डेटाबेस, और इमेज के साथ-साथ अपनी साइट का बैकअप बनाने के लिए स्टोरेज

अगली कार्रवाइयां

हम इस चरण में कई कार्रवाइयों को शामिल करेंगे:

  • अगर आपको लगता है कि हैकर का मकसद, लोगों की निजी जानकारी हासिल करना है, तो ज़्यादा संसाधन कहां मिलेंगे. जैसे, फ़िशिंग पेजों से.
  • Search Console में यूआरएल हटाएं का इस्तेमाल करने का विकल्प. इससे, हैकर के बनाए गए ऐसे नए, ग़ैर-ज़रूरी, और उपयोगकर्ता को दिखने वाले यूआरएल को तुरंत हटाया जा सकता है जिन्हें आपको Google Search के नतीजों में नहीं दिखाना है.
  • Search Console में, Google से अपने यूआरएल फिर से क्रॉल करने के लिए कहने का विकल्प. इससे, Google को उन पेजों को जल्दी प्रोसेस करने में मदद मिलती है जिन्हें आपको Google Search के नतीजों में दिखाना है. ये पेज नए या हाल ही में अपडेट किए गए हो सकते हैं.
  • सॉफ़्टवेयर का सबसे नया और सबसे सुरक्षित वर्शन इंस्टॉल करना.
  • ग़ैर-ज़रूरी या इस्तेमाल नहीं किए गए ऐप्लिकेशन या प्लगिन को हटाना, जिनकी वजह से आने वाले समय में आपकी साइट के लिए जोखिम बढ़ सकता है.
  • अच्छे कॉन्टेंट को वापस लाना और हैकर का कॉन्टेंट हटाना.
  • हैकर ने जिस कमज़ोरी का फ़ायदा उठाया है उसकी मुख्य वजह को ठीक करना.
  • सभी पासवर्ड बदलना.
  • अपनी साइट को सुरक्षित रखने की योजना बनाना.

1. सहायता पाने के संसाधन ढूंढना

अगर आपकी साइट से उपयोगकर्ता की गोपनीय जानकारी हासिल की गई है, तो साइट को साफ़ करने या किसी फ़ाइल को मिटाने से पहले, कारोबार से जुड़ी, नियमों के मुताबिक या कानूनी ज़िम्मेदारियों के बारे में सोचें. उदाहरण के लिए, ऐसा इसलिए हो सकता है, क्योंकि यह फ़िशिंग अटैक का हिस्सा थी. फ़िशिंग के मामलों में, antiphishing.org पर मददगार संसाधन मौजूद हैं. जैसे, अगर आपकी साइट को फ़िशर ने हैक कर लिया है, तो क्या करें दस्तावेज़.

2. हैकर के ज़रिए बनाए गए नए यूआरएल निकालने में तेजी लाने पर विचार करें

अगर हैकर ने पूरी तरह से नए और उपयोगकर्ताओं को दिखने वाले यूआरएल बनाए हैं, तो Search Console में यूआरएल हटाएं सुविधा का इस्तेमाल करके, इन पेजों को Google Search के नतीजों से तुरंत हटाया जा सकता है. यह करना ज़रूरी नहीं है. अगर आपने सिर्फ़ पेजों को मिटा दिया है और फिर अपने सर्वर को 404 स्टेटस कोड दिखाने के लिए कॉन्फ़िगर किया है, तो पेज समय के साथ Google के इंडेक्स से अपने-आप हट जाएंगे.

  • यूआरएल हटाने की सुविधा का इस्तेमाल करने का फ़ैसला, शायद इस बात पर निर्भर करेगा कि कितने नए और अनचाहे पेज बनाए गए हैं. ऐसा हो सकता है कि बहुत ज़्यादा पेजों को 'यूआरएल हटाएं' सुविधा में शामिल करना मुश्किल हो. साथ ही, इस बात पर भी फ़ैसला निर्भर करेगा कि इन पेजों से उपयोगकर्ताओं को क्या नुकसान हो सकता है. यूआरएल हटाने की सुविधा की मदद से सबमिट किए गए पेजों को खोज के नतीजों में कभी भी न दिखने के लिए, पक्का करें कि पेजों को अनचाहे और हटाए गए यूआरएल के लिए, 404 फ़ाइल नहीं मिली रिस्पॉन्स दिखाने के लिए भी कॉन्फ़िगर किया गया हो.
  • इस टूल का इस्तेमाल, पहले अच्छे रहे उन पेजों को हटाने का अनुरोध करने के लिए न करें जिन्हें सिर्फ़ हैकर ने नुकसान पहुंचाया है. इन पेजों के साफ़ हो जाने के बाद, हो सकता है कि ये खोज नतीजों में दिखें. यूआरएल हटाने की सुविधा सिर्फ़ उन पेजों के लिए है जिन्हें आपको कभी भी नतीजों में नहीं दिखाना है.

3. Google के ज़रिए अपने साफ़ पेज तैयार किए जाने में तेजी लाने पर विचार करें

अगर आपके पास नए या अपडेट किए गए साफ़ पेज हैं, तो Search Console में Google से अपने यूआरएल फिर से क्रॉल कराने के लिए कहें. इन यूआरएल को Google के इंडेक्स में सबमिट किया जा सकता है. यह ज़रूरी नहीं है; अगर इस चरण को छोड़ दिया जाता है, तो आपके नए या बदले गए पेजों को समय के साथ क्रॉल और प्रोसेस किया जा सकता है.

4. अपने सर्वर को साफ़ करना शुरू करें

नुकसान का आकलन और सुरक्षा से जुड़ी समस्या की पहचान करने के दौरान, आपने जो नोट लिए थे उनके आधार पर, अब अपनी साइट को साफ़ करने का समय आ गया है. इस चरण में, आपको जो पाथ अपनाना होगा वह इस बात पर निर्भर करता है कि आपके पास किस तरह का बैकअप उपलब्ध है:

  • साफ़ और वर्तमान बैकअप
  • साफ़ लेकिन पुराना बैकअप
  • कोई बैकअप उपलब्ध नहीं है

सबसे पहले, देखें कि आपकी साइट हैक होने से पहले उसका बैकअप लिया गया था या नहीं.

साफ़ और वर्तमान बैकअप

  1. अपने बैकअप को बहाल करें.
  2. उपलब्ध कोई भी बेहतर सॉफ़्टवेयर, अपडेट या पैच इंस्टॉल करें. इसमें, अगर सर्वर और सभी ऐप्लिकेशन, जैसे कि कॉन्टेंट मैनेजमेंट सिस्टम, ई-कॉमर्स प्लैटफ़ॉर्म, प्लगिन या टेंप्लेट का कंट्रोल आपके पास है, तो ओएस के लिए बने सॉफ़्टवेयर शामिल हैं.
  3. अपने सर्वर से ऐसे सॉफ़्टवेयर हटाएं जिनका इस्तेमाल साइट अब नहीं करती. जैसे, विजेट, प्लग इन या ऐप्लिकेशन.
  4. सुरक्षा कमज़ोरियों को ठीक करें.
  5. पक्का करें कि नुकसान का आकलन करें के दौरान मिली सभी समस्याओं को ठीक कर लिया गया हो.
  6. साइट से जुड़े सभी खातों के लिए, पासवर्ड एक बार फिर से बदलें. जैसे, एफ़टीपी ऐक्सेस, डेटाबेस ऐक्सेस, सिस्टम एडमिन, और सीएमएस खातों के लिए लॉगिन. यूनिक्स-आधारित सिस्टम पर:
passwd admin1

साफ़ लेकिन पुराना बैकअप

  1. अपनी मौजूदा साइट की डिस्क इमेज बना लें, भले ही वह अब भी संक्रमित हो रही हो. यह कॉपी सिर्फ़ सुरक्षा के लिए है. कॉपी को दूसरों से अलग करने के लिए, उसे 'मैलवेयर से संक्रमित' के तौर पर मार्क करें. यूनिक्स-आधारित सिस्टम पर, एक डिस्क इमेज नीचे दिए गए जैसा हो सकता है:
dd if=/dev/sda bs=1024 conv=noerror,sync | gzip -c -9 \
> /mirror/full-backup-20120125-infected.gz
  1. अपने सर्वर की फ़ाइल सिस्टम की बैकअप कॉपी बनाएं. इसमें इमेज और मीडिया फ़ाइलें भी शामिल हैं. अगर आपके पास एक डेटाबेस है, तो डेटाबेस का भी बैकअप लें.
tar -pczf full-backup-20120125-infected.tar.gz www/
mysqldump -u root -p --all-databases | gzip -9 \
> fulldb_backup-20120125-infected.sql
  1. अपने सर्वर पर साफ़ लेकिन पुराना बैकअप बहाल करें.
  2. देखें कि क्या आपके सर्वर पर मौजूद ऐसे सॉफ़्टवेयर (जैसे, विजेट, प्लग इन या ऐप्लिकेशन) को हटाया जा सकता है जिनका इस्तेमाल साइट अब नहीं करती.
  3. अगर सर्वर और सभी सॉफ़्टवेयर ऐप्लिकेशन, जैसे कि कॉन्टेंट मैनेजमेंट सिस्टम, ई-कॉमर्स प्लैटफ़ॉर्म, प्लगिन, और टेंप्लेट का कंट्रोल आपके पास है, तो ओएस के साथ सभी सॉफ़्टवेयर अपग्रेड करें. उपलब्ध सुरक्षा अपडेट और पैच देखना और उन्हें इंस्टॉल करना न भूलें.
  4. सुरक्षा कमज़ोरियों को ठीक करें.
  5. मैन्युअल तरीके से या अपने-आप काम करने वाले तरीके से, साइट diff को साफ़ बैकअप और मौजूदा संक्रमित कॉपी के बीच ट्रांसफ़र करें.
diff -qr www/ backups/full-backup-20120124/
  1. अपग्रेड किए गए सर्वर पर, कोई नया और बिना मैलवेयर वाला कॉन्टेंट अपलोड करें.
rsync -avz /backups/full-backup-20120124/www/clean-file.jpg /www/
  1. देखें कि नुकसान का आकलन करें में दिए गए हर यूआरएल को ठीक कर दिया गया है या नहीं.
  2. साइट से जुड़े सभी खातों के लिए एक बार और पासवर्ड बदलें (उदाहरण के लिए, एफ़टीपी ऐक्सेस, डेटाबेस ऐक्सेस, सिस्टम एडमिन, और कॉन्टेंट मैनेजमेंट सिस्टम खातों के लिए लॉगिन). यूनिक्स-आधारित सिस्टम पर:
$passwd admin1

कोई बैकअप उपलब्ध नहीं है

अपनी साइट के दो बैकअप बनाएं, भले ही उसमें अब भी मैलवेयर मौजूद हो. अतिरिक्त बैकअप होने पर, गलती से मिटाए गए कॉन्टेंट को वापस पाया जा सकता है. इसके अलावा, अगर कोई समस्या आती है, तो कॉन्टेंट को पहले जैसा करके फिर से कोशिश की जा सकती है. भविष्य में संदर्भ के लिए प्रत्येक बैकअप को "संक्रमित" लेबल करें.

आपके बैकअप में से एक आपकी साइट का डिस्क इमेज या "क्लोन वर्शन" होगा. इस फ़ॉर्मैट की मदद से, कॉन्टेंट को वापस लाना और भी आसान हो जाता है. आपके पास आपातकालीन स्थिति के लिए, डिस्क इमेज को सेव रखने का विकल्प होता है. यूनिक्स-आधारित सिस्टम पर, डिस्क की इमेज बनाने के लिए इस कोड का इस्तेमाल करें:

dd if=/dev/sda bs=1024 conv=noerror,sync | gzip -c -9 \
> /mirror/full-backup-20120125-infected.gz

दूसरा बैकअप आपके सर्वर से फ़ाइल सिस्टम की कॉपी होगी, जिसमें इमेज और मीडिया फ़ाइलें भी शामिल होंगी. अगर आपके पास डेटाबेस है, तो उसका भी बैक अप लें.

tar -pczf full-backup-20120125-infected.tar.gz www/
mysqldump -u root -p --all-databases | gzip -9 \
> fulldb_backup-20120125-infected.sql

अगर आपके पास डिस्क इमेज नहीं है, तो डेटाबेस के दो बैकअप और फ़ाइल सिस्टम के दो बैकअप लें.

बैकअप फ़ाइल सिस्टम की नई कॉपी (न कि सर्वर) पर साइट के कॉन्टेंट को हटाने के लिए, यह तरीका अपनाएं:

  1. अगर आपकी पिछली जांच में फ़ाइल की अनुमतियां बहुत आसानी से मिल गई थीं, तो उन्हें ठीक करें. पक्का करें कि आपने ऐसा बैकअप कॉपी पर किया हो, न कि सर्वर पर.
  2. इसके अलावा, बैकअप कॉपी में भी, नुकसान का आकलन करें से पता चलने वाले यूआरएल से जुड़ी सभी फ़ाइलों को मिटाएं. ये सर्वर कॉन्फ़िगरेशन फ़ाइलें, JavaScript, HTML या PHP हो सकती हैं.
  3. हैकर की ओर से बनाई गई नई फ़ाइलों को भी हटाना न भूलें (404 कोड दिखाएं). हो सकता है कि आपने Search Console में यूआरएल हटाने वाले टूल का इस्तेमाल करके, इन फ़ाइलों को सबमिट किया हो या नहीं.
  4. अगर कमज़ोरी आपके कोड या क्रैक किए गए पासवर्ड में है तो उसे ठीक करें. इनपुट की पुष्टि करने वाली लाइब्रेरी या सुरक्षा ऑडिट से मदद मिल सकती है.
  5. अगर आपकी साइट का डेटाबेस है, तो अपने बैकअप में हैकर-मॉडिफ़ाई किए गए रिकॉर्ड साफ़ करना शुरू करें. डेटाबेस से ग़ैर-ज़रूरी डेटा हटाने के बाद, कुछ और रिकॉर्ड की जांच करें. इससे यह पक्का किया जा सकेगा कि डेटाबेस में कोई ग़ैर-ज़रूरी डेटा नहीं है.
  6. साइट से जुड़े सभी खातों के लिए, पासवर्ड एक बार फिर से बदलें. उदाहरण के लिए, एफ़टीपी ऐक्सेस, डेटाबेस ऐक्सेस, सिस्टम एडमिन, और सीएमएस खातों के लिए लॉगिन. यूनिक्स-आधारित सिस्टम पर, इस कोड का इस्तेमाल करें:
$passwd admin1

इस स्थिति में, आपकी साइट की एक बार संक्रमित बैकअप कॉपी में केवल साफ़ डेटा होना चाहिए. इस साफ़ कॉपी को एक ओर रखें और कार्रवाई #5 पर जाएं.

5. गै़र-ज़रूरी सॉफ़्टवेयर हटाना

देखें कि क्या आपके पास अपने सर्वर से ऐसे सॉफ़्टवेयर को हटाने का विकल्प है जिनका इस्तेमाल साइट अब नहीं करती. जैसे, विजेट, प्लग इन या ऐप्लिकेशन. इससे सुरक्षा बढ़ सकती है और आने वाले समय में रखरखाव आसान हो सकता है.

6. सभी सर्वर साफ़ करें

  1. केवल एक को बेहतर न बनाएं, एक साफ़ इंस्टॉलेशन करें. अपग्रेड करने पर, पिछले वर्शन की फ़ाइलें बच सकती हैं. अगर कोई संक्रमित फ़ाइल सर्वर पर बनी रहती है, तो आपकी साइट के फिर से हैक होने की संभावना बढ़ जाती है.
    • अगर सर्वर और सभी सॉफ़्टवेयर ऐप्लिकेशन, जैसे कि कॉन्टेंट मैनेजमेंट सिस्टम, ई-कॉमर्स प्लैटफ़ॉर्म, प्लगिन, और टेंप्लेट का कंट्रोल आपके पास है, तो नए इंस्टॉलेशन में ओएस शामिल होना चाहिए. उपलब्ध सुरक्षा अपडेट और पैच देखना न भूलें.
  2. अच्छी क्वालिटी वाले कॉन्टेंट को, बैकअप फ़ाइल सिस्टम की क्लीन कॉपी से, हाल ही में इंस्टॉल किए गए सर्वर पर ट्रांसफ़र करें. सिर्फ़ ऐसी फ़ाइलें या डेटाबेस अपलोड और वापस लाएं जिनमें कोई समस्या नहीं है. फ़ाइल के लिए सही अनुमतियां बनाए रखें और हाल ही में इंस्टॉल की गई सिस्टम फ़ाइलों को ओवरराइट न करें.
  3. साइट से जुड़े सभी खातों के पासवर्ड एक बार फिर से बदलें. जैसे, एफ़टीपी ऐक्सेस, डेटाबेस ऐक्सेस, सिस्टम एडमिन, और सीएमएस खातों के लिए लॉगिन. Unix-आधारित सिस्टम पर, इस कोड का इस्तेमाल करें:
passwd admin1

7. एक दीर्घकालिक रखरखाव योजना बनाएं

हमारा सुझाव है कि आप ये काम करें:

  • अपनी साइट के नियमित, अपने आप किए गए बैकअप बनाएं.
  • सॉफ़्टवेयर को अपडेट रखने के बारे में सतर्क रहें.
  • अपने सर्वर पर सभी ऐप्लिकेशन, प्लग इन, और तीसरे पक्ष के अन्य सॉफ़्टवेयर को इंस्टॉल करने से पहले, उनकी सुरक्षा से जुड़े तरीकों को समझ लें. एक सॉफ़्टवेयर ऐप्लिकेशन में सुरक्षा का जोखिम आपकी पूरी साइट की सुरक्षा पर असर डाल सकता है.
  • मजबूत पासवर्ड बनाना लागू करें.
  • मशीन में साइन इन करने के लिए इस्तेमाल किए जाने वाले सभी डिवाइसों को सुरक्षित रखें. इसके लिए, उनमें अप-टू-डेट ऑपरेटिंग सिस्टम और ब्राउज़र का इस्तेमाल करें.

8. अच्छी तरह जांचें कि क्लीनअप पूरा हो गया है

पक्का करें कि आप नीचे दिए गए प्रश्नों का "हां" में उत्तर दे सकते हैं:

  • अगर हैकर को उपयोगकर्ताओं की निजी जानकारी मिल गई है, तो क्या मैंने ज़रूरी कदम उठाए हैं?
  • क्या मेरी साइट सॉफ़्टवेयर का नवीनतम, सबसे सुरक्षित वर्शन चला रही है?
  • क्या मैंने सभी ग़ैर-ज़रूरी या इस्तेमाल नहीं किए गए ऐसे ऐप्लिकेशन या प्लग इन हटा दिए हैं जिनकी वजह से आने वाले समय में मेरी साइट ज़्यादा जोखिम में पड़ सकती है?
  • क्या मैंने अपना कॉन्टेंट वापस पा लिया है और हैकर का कॉन्टेंट हटा दिया है?
  • क्या मैंने उस मूल कारण वाली सुरक्षा कमज़ोरी को ठीक किया है जिसकी वजह से मेरी साइट हैक हो गई थी?
  • क्या अपनी साइट को सुरक्षित रखने की मेरी कोई योजना है?

अब अपनी साइट को फिर से ऑनलाइन लाया जा सकता है.