มัลแวร์คือซอฟต์แวร์หรือแอปพลิเคชันบนอุปกรณ์เคลื่อนที่ ซึ่งออกแบบมาเพื่อสร้างความเสียหาย คอมพิวเตอร์ อุปกรณ์เคลื่อนที่ ซอฟต์แวร์ที่อุปกรณ์ใช้ หรือผู้ใช้ ดูข้อมูลเพิ่มเติมเกี่ยวกับมัลแวร์ได้ที่มัลแวร์และซอฟต์แวร์ไม่พึงประสงค์
หากเว็บไซต์ของคุณมีมัลแวร์ ผู้ใช้มักจะเห็นคำเตือน "เว็บไซต์นี้อาจเป็นอันตรายต่อคอมพิวเตอร์ของคุณ" ซึ่งแสดงในผลการค้นหาหรือใน หน้าเว็บคั่นระหว่างหน้าที่แสดงโดยเบราว์เซอร์เมื่อผู้ใช้พยายามเข้าชมหน้าเว็บ ได้ดังนี้
โดยต้องใช้สิ่งต่างๆ ดังนี้
- สิทธิ์เข้าถึงเซิร์ฟเวอร์ของไซต์ ไม่ว่าจะเป็นเว็บ ฐานข้อมูล และไฟล์
- ความรู้เกี่ยวกับคำสั่ง Shell หรือเทอร์มินัล
- ความสามารถในการเรียกใช้การค้นหา SQL ในฐานข้อมูล
การเตรียมพร้อม
- ลงชื่อสมัครใช้ Search Console และยืนยันการเป็นเจ้าของไซต์ที่ถูกแฮกของคุณ ดังที่อธิบายไว้ในส่วนนั้น Search Console แสดงตัวอย่างของหน้าที่ได้รับผลกระทบ ซึ่งทำให้การค้นหาและ แก้ไขปัญหาการถูกแฮ็กด้วยมัลแวร์ได้ง่ายกว่ามาก นอกจากนี้ คุณจะได้รับคำเตือน เมื่อตรวจพบว่าเว็บไซต์ของคุณได้รับผลกระทบจากมัลแวร์หรือการแฮ็กอื่นๆ หลายประเภท
ดูหน้าการวินิจฉัยของ Google Safe Browsing เพื่อดูข้อมูลสาธารณะว่าเว็บไซต์หนึ่งๆ อาจเป็นอันตรายต่อผู้ใช้ไหม คุณสามารถดูสถานะข้อมูลของหน้าเว็บหรือเว็บไซต์ของคุณได้ที่ URL ที่คล้ายกับด้านล่าง
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>>
เป็น URL ของหน้าที่เจาะจง (http://example.com/badpage
) หรือ เว็บไซต์ทั้งหมดของคุณ (example.com)หลีกเลี่ยงการใช้เบราว์เซอร์เพื่อดูหน้าในเว็บไซต์ เนื่องจากมัลแวร์บ่อยครั้ง แพร่กระจายโดยใช้ช่องโหว่ของเบราว์เซอร์ และเปิดช่องโหว่ที่ติดมัลแวร์ ในเบราว์เซอร์อาจทำให้คอมพิวเตอร์ของคุณเสียหายได้ เว้นแต่วิธีการวินิจฉัย บอกให้เข้าถึงหน้านี้ในเบราว์เซอร์โดยตรง ให้ใช้ cURL หรือ Wget ในการส่งคำขอ HTTP (ตัวอย่างเช่น เพื่อดึงหน้าเว็บ)
เครื่องมือที่ใช้งานได้ฟรีเหล่านี้มีประโยชน์ในการวิเคราะห์การเปลี่ยนเส้นทาง และ ความยืดหยุ่นในการรวมข้อมูลผู้อ้างอิงหรือ User-agent มี ผู้อ้างอิง หรือ user-agent ที่ระบุ มีประโยชน์ในการเลียนแบบแฮ็กเกอร์ เนื่องจาก แฮกเกอร์อาจแสดงเฉพาะเนื้อหาที่เป็นอันตรายต่อผู้ใช้ user-agent หรือ URL ที่มาเพื่อกำหนดเป้าหมายไปยัง "คนที่มีตัวตนจริง" มากขึ้น และหลีกเลี่ยง จากเจ้าของเว็บไซต์และโปรแกรมสแกนมัลแวร์
`curl -v --referer "http://www.google.com" <your-url>`
ตัวอย่างที่ระบุทั้ง User Agent และ 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 Console ขยายคำอธิบายของคำเตือนมัลแวร์เพื่อดูรายการตัวอย่างหน้าเว็บที่ได้รับผลกระทบ โปรดทราบว่ารายการนี้เป็นเพียงตัวอย่างบางส่วนเท่านั้น คุณอาจไม่ได้รับหน้าตัวอย่างสำหรับ มัลแวร์ทุกประเภทในไซต์ของคุณ
- ทดสอบหน้าเว็บตัวอย่างของคุณเพื่อหามัลแวร์ประเภทต่อไปนี้
มัลแวร์การกำหนดค่าเซิร์ฟเวอร์ (การเปลี่ยนเส้นทางที่ไม่พึงประสงค์)
แฮ็กเกอร์ได้แฮ็กเว็บไซต์ของคุณและเปลี่ยนเส้นทางผู้เข้าชมจาก
ไปยังเว็บไซต์โจมตีมัลแวร์ ด้วยการแก้ไขแท็ก
ไฟล์การกำหนดค่า ไฟล์การกำหนดค่าเซิร์ฟเวอร์มักอนุญาตให้เว็บไซต์
ผู้ดูแลระบบในการระบุการเปลี่ยนเส้นทาง URL สำหรับหน้าเว็บหรือไดเรกทอรีที่เฉพาะเจาะจงใน
เว็บไซต์ของคุณ ตัวอย่างเช่น ในเซิร์ฟเวอร์ Apache จะหมายถึงไฟล์ .htaccess
และ httpd.conf
การวินิจฉัย
ไปที่บางตัวอย่างของ URL ที่แสดงอยู่ในรายงานปัญหาด้านความปลอดภัย คำตอบ จากหน้าที่ติดมัลแวร์ "การกำหนดค่าเซิร์ฟเวอร์" อาจรวมถึง ส่วนหัวต่อไปนี้:
< HTTP/1.1 301 Moved Permanently
< Date: Sun, 24 Feb 2013 21:06:45 GMT
< Server: Apache
< Location: http://<<strong>_malware-attack-site_</strong>>/index.html
< Content-Length: 253
ระบุไฟล์ที่ได้รับผลกระทบ
ลงชื่อเข้าใช้เซิร์ฟเวอร์ผ่านการเข้าถึง Shell หรือเทอร์มินัล (เว็บไซต์อาจออฟไลน์ได้
หากจำเป็น) และตรวจสอบไฟล์การกำหนดค่าเซิร์ฟเวอร์ที่เกี่ยวข้อง อาจมีเพิ่มเติม
ไฟล์การกำหนดค่าเซิร์ฟเวอร์ที่ถูกแฮกมากกว่า 1 ไฟล์ในเว็บไซต์ของคุณ ตรวจสอบไฟล์เหล่านี้สำหรับ
คำสั่งที่ไม่ต้องการ เช่น เปลี่ยนเส้นทางไปยังเว็บไซต์ที่ไม่รู้จัก ตัวอย่างเช่น ใน
.htaccess
` คุณอาจเห็นการเปลี่ยนเส้นทางที่มีลักษณะดังนี้
RewriteEngine On
RewriteCond %{HTTP_REFERER} .*google.*
**RewriteRule ^third-page.html($|/) http://<<em><strong>_malware-site_</strong></em>>/index.html** [R=301]
การแทรก SQL
แฮ็กเกอร์ได้แฮ็กฐานข้อมูลของเว็บไซต์ ตัวอย่างเช่น แฮกเกอร์อาจ มีการใช้โปรแกรมแทรกโค้ดที่เป็นอันตรายลงในระเบียนทั้งหมดของฐานข้อมูล ดังนั้นเมื่อเซิร์ฟเวอร์โหลดหน้าที่ต้องการข้อมูลจาก โค้ดที่เป็นอันตรายก็จะฝังอยู่ในเนื้อหาของหน้าเว็บ และสามารถ เป็นอันตรายต่อผู้เข้าชมเว็บไซต์
การวินิจฉัย
- เรียกใช้การค้นหาบางรายการใน URL ที่ได้รับผลกระทบในบรรทัดคำสั่งและตรวจสอบ การตอบสนองสำหรับคำโจมตี SQL เช่น "iframe" หรือ "eval"
ลงชื่อเข้าใช้เซิร์ฟเวอร์ฐานข้อมูลหรือดูฐานข้อมูลผ่านเครื่องมือ เช่น phpMyAdmin. ถ้า คุณใช้ Wget หรือ cURL ลองเชื่อมโยงความเสียหายที่พบในซอร์สโค้ดของหน้า ผ่าน Wget หรือ cURL ที่มีข้อมูลจริงในฐานข้อมูล ตัวอย่างเช่น หาก คุณสังเกตเห็นว่าหน้าเว็บของคุณมี iframe ที่เป็นอันตราย คุณสามารถดำเนินการ SQL คำค้นหาของโค้ด iframe เช่น
SELECT * FROM blog_posts WHERE post_text LIKE '%>iframe%';
คุณอาจต้องตรวจสอบบันทึกฐานข้อมูลและไฟล์ข้อผิดพลาดบนเซิร์ฟเวอร์เพื่อหา กิจกรรมที่ผิดปกติ เช่น คำสั่ง SQL ที่ไม่คาดคิดที่ดูผิดปกติสำหรับ ผู้ใช้ปกติหรือข้อผิดพลาด
แก้ไขปัญหา
โปรดอัปเดตบันทึกฐานข้อมูลแต่ละรายการที่ติดมัลแวร์ หรือกู้คืนฐานข้อมูลที่ทราบล่าสุด การสำรองข้อมูล
การแทรกโค้ด
หน้าต่างๆ ในเว็บไซต์ของคุณถูกแก้ไขให้มีโค้ดที่เป็นอันตราย เช่น iframe เพื่อ เว็บไซต์โจมตีมัลแวร์
การวินิจฉัย
ไปที่บางตัวอย่างของ URL ที่แสดงในรายงานปัญหาด้านความปลอดภัยที่มี cURL หรือ รับและตรวจสอบโค้ดที่น่าสงสัย โค้ดที่แทรกเข้ามาอาจมีหลายประเภท และ ทำให้หาเจอได้ยาก ลองค้นหาคำอย่างเช่น "iframe" น่าจะช่วยได้ เพื่อหา โค้ด iframe คีย์เวิร์ดที่เป็นประโยชน์อื่นๆ คือ "script", "eval" และ "unescape" สำหรับ เช่น หากต้องการค้นหาไฟล์ทั้งหมดสำหรับ "iframe" ในระบบ Unix ให้ใช้คำสั่งต่อไปนี้
$grep -irn "iframe" ./ | less</pre>
ต่อไปนี้คือรูปแบบทั่วไปของมัลแวร์ที่ต้องมองหา
iframe ที่โหลดเว็บไซต์ที่เป็นอันตราย
<iframe frameborder="0" height="0" src="http://<<strong><em>_malware-site_</em></strong>>/path/file"
style="display:none" width="0"></iframe>
JavaScript หรือภาษาสคริปต์อื่นที่เรียกใช้สคริปต์จาก ไซต์โจมตี:
<script type='text/javascript' src='http://<<em><strong>_malware-site_</strong></em>>/js/x55.js'></script>
การเขียนสคริปต์ที่เปลี่ยนเส้นทางเบราว์เซอร์ไปยังเว็บไซต์โจมตี
<script>
if (document.referrer.match(/google\.com/)) {
window.location("http://<<em><strong>_malware-site_</strong></em>>/");
}
</script>
โค้ดที่เป็นอันตรายที่มีการสร้างความสับสนเพื่อหลีกเลี่ยงการตรวจพบ
eval(base64_decode("aWYoZnVuaauUl+hasdqetiDi2iOwlOHTgs+slgsfUNlsgasdf"));
ไฟล์ออบเจ็กต์ที่แชร์ออกแบบมาเพื่อสุ่มเขียนโค้ดที่เป็นอันตรายเพื่อให้ได้เนื้อหาที่ไม่ร้ายแรง สคริปต์:
#httpd.conf modified by the hacker
LoadModule harmful_module modules/mod_harmful.so
AddModule mod_harmful.c
เทมเพลตข้อผิดพลาดที่เป็นอันตราย
กำหนดค่าเทมเพลตที่ใช้สำหรับข้อความแสดงข้อผิดพลาด เช่น 404 ไม่พบไฟล์ เพื่อแพร่กระจายมัลแวร์ ในวิธีนี้ ผู้โจมตีสามารถเรียกใช้การโจมตีใน URL ที่ ไม่ได้อยู่บนเว็บไซต์ของคุณด้วยซ้ำ
การวินิจฉัย
ขอหน้าในเว็บไซต์ที่ไม่มีอยู่ หรือหน้าเว็บแสดงหน้าประเภทอื่น และตรวจสอบการตอบกลับเพื่อดูว่ามาจากเว็บไซต์อื่นหรือ หากไม่มีมัลแวร์
แก้ไขปัญหา
ลงชื่อเข้าใช้เว็บเซิร์ฟเวอร์และค้นหาข้อผิดพลาดในไฟล์การกำหนดค่าเซิร์ฟเวอร์
คำสั่งของหน้าเว็บ ตัวอย่างเช่น เทมเพลตข้อผิดพลาดสำหรับเว็บเซิร์ฟเวอร์ Apache อาจมีลักษณะดังนี้
ที่ประกาศในไฟล์ .htaccess
ต่อไปนี้เป็นตัวอย่างรายการไฟล์ .htaccess
ที่
เรียกหน้าแสดงข้อผิดพลาด 404 จากเว็บไซต์ที่เป็นอันตราย
ErrorDocument 404 http://<<span class="red-text"><em><strong>_malware-site_</strong></em></span>>/index.html
เมื่อพร้อมที่จะทำความสะอาดเว็บไซต์แล้ว ให้แทนที่ไฟล์ .htaccess
ไฟล์
ด้วยข้อมูลสำรองที่ใช้งานได้ดี หรือลบคำสั่ง ErrorDocument ที่ไม่ต้องการบน
.htaccess
ไฟล์ที่มีอยู่ อย่าลืมทำความสะอาดไฟล์ที่มีข้อผิดพลาดด้วยหาก
มีอยู่บนไซต์ของคุณ สุดท้าย ให้รีสตาร์ทเว็บเซิร์ฟเวอร์เพื่อตรวจสอบว่า
การเปลี่ยนแปลงจึงจะมีผล
ทรัพยากรที่โหลดจากเว็บไซต์ที่ถูกบุกรุกหรือเป็นอันตราย {compromised-resources}
เว็บไซต์ของคุณใช้เนื้อหาหรือทรัพยากรจากเว็บไซต์ที่ทราบว่ามี เนื้อหาที่เป็นอันตราย ซึ่งอาจเป็นไฟล์ JavaScript, รูปภาพ หรือไฟล์อื่นๆ ด้วยเหตุนี้ เว็บไซต์ของคุณจะได้รับการแจ้งว่ามีมัลแวร์ที่โหลดมาจากที่อื่น ของคุณ
การวินิจฉัย
ไปที่บางตัวอย่างของ URL ที่แสดงอยู่ในรายงานปัญหาด้านความปลอดภัย
แก้ไขปัญหา
- ยืนยันปัญหาโดยการเรียกดู URL ตัวอย่างบางรายการที่แสดงใน รายงานปัญหาด้านความปลอดภัยใน Search Console คุณจะเห็นคำเตือนของเบราว์เซอร์
- คำเตือนของเบราว์เซอร์จะบอกโดเมนของเนื้อหาที่เป็นปัญหา ให้นำการอ้างอิงไปยังเว็บไซต์ที่มีการแจ้งทั้งหมดออก ซึ่งแสดงไว้ในคำเตือนของเบราว์เซอร์ หากมีการรวมเนื้อหาจากเว็บไซต์ที่มีการแจ้งว่าไม่เหมาะสมโดยที่คุณไม่ทราบ ที่ร้ายแรงขึ้น เว็บไซต์ของคุณอาจเคยถูกโจมตี และคุณ ควรตรวจสอบเว็บไซต์ของคุณเพื่อหาการแฮ็กและช่องโหว่อื่นๆ ต่อไป
- หากคุณเจตนารวมเนื้อหาจากเว็บไซต์ที่ถูกต้องซึ่งกลายเป็น
ตั้งค่าสถานะ และคุณต้องการรวมเนื้อหาอีกครั้งหลังจากไซต์ที่ถูกตั้งค่าสถานะ
ที่ไม่มีการป้องกัน คุณสามารถตรวจสอบสถานะของเว็บไซต์ที่ถูกตั้งค่าสถานะได้โดยใช้
หน้าการวินิจฉัยของ Google Safe Browsing
สำหรับเว็บไซต์นั้น (
http://www.google.com/safebrowsing/diagnostic?site=www.example.com
){:.external} เจ้าของเว็บไซต์ที่ถูกต้องมักจะล้างข้อมูลได้อย่างรวดเร็ว
การตรวจสอบเพิ่มเติม
ถัดไป ให้ตรวจสอบไฟล์ที่เป็นอันตรายหรือการเปลี่ยนแปลงอื่นๆ ในระบบของคุณ แฮกเกอร์อาจแก้ไขหน้าเว็บที่มีอยู่ หรือบันทึกฐานข้อมูลที่สร้างขึ้นทั้งหมด หน้าเว็บใหม่ที่เป็นสแปม ฟังก์ชันที่เป็นการเขียนซึ่งแสดงสแปมในหน้าปกติ หรือด้านซ้าย "ประตูหลัง" ที่ช่วยให้แฮกเกอร์กลับมายังเว็บไซต์ของคุณ หรือแทรกโค้ด โค้ดที่เป็นอันตรายซึ่งคุณนำออกไป
หากเว็บไซต์ของคุณออนไลน์อยู่ ให้ลองพิจารณาทำให้เว็บไซต์ออฟไลน์เพื่อการตรวจสอบนี้
หากคุณมีข้อมูลสำรองของเว็บไซต์ที่ดี ให้ระบุว่าไฟล์ใด สร้างหรือแก้ไขตั้งแต่สำรองข้อมูลและตรวจสอบ ในระบบ Unix คุณสามารถใช้คำสั่งต่อไปนี้เพื่อค้นหาไฟล์ใหม่
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
แฮกเกอร์มักสร้างเงื่อนไข
เปลี่ยนเส้นทางตาม user-agent ช่วงเวลาของวัน หรือ URL ที่มา หากคุณจำเป็นต้องทำดังนี้
อัปเดตไฟล์การกำหนดค่า คุณอาจต้องรีสตาร์ทเซิร์ฟเวอร์สำหรับ
การเปลี่ยนแปลงจึงจะมีผล
ตรวจหาสิทธิ์ของโฟลเดอร์และไฟล์ที่มีมากเกินไป แฮ็กเกอร์งัดแงะ
เนื่องจากหากเจ้าของเว็บไซต์ยังคงไม่พบสิทธิ์ที่ผ่อนปรน
แฮกเกอร์จะมีช่องทางให้กลับเข้าไปในเว็บไซต์ได้อีกครั้ง ไฟล์ที่มีความยาวมากกว่า
644 (rw-r--r--)
และโฟลเดอร์ที่มีขนาดใหญ่กว่า 755 (rwxr-xr-x)
อาจทำให้ระบบรักษาความปลอดภัย
ปัญหา ตรวจสอบว่าการให้สิทธิ์อย่างหละหลวมนั้นเกินความจำเป็นไหม เปิด
ระบบ Unix ลองใช้คำสั่งต่อไปนี้
find <your-dir> -type d -not -perm 755 -exec ls -ld {} \;
และ:
find <your-dir> -type f -not -perm 644 -exec ls -la {} \;
หากคุณมีฐานข้อมูล ให้ตรวจสอบข้อมูลแต่ละรายการโดยใช้เครื่องมืออย่างเช่น phpMyAdmin.