รู้ได้ไงว่าเขาไม่ได้เข้าหลังบ้าน
wp แฮกไม่ง่ายนะครับ ถ้าง่ายขนาดนั้น ป่านนี้ cms ตัวนี้เจ๊งไปแล้ว ที่โดนกันส่วนใหญ่ไปตั้งค่ามั่วซั่ว
- ตั้งให้คนสมัครสมาชิกเป็น admin หรือใกล้เคียงได้
- ใช้ plugin/theme เถื่อน แต่ก็มีอันที่ผ่านการตรวจ จะมีช่องโหว่ให้คนเก่งๆ เข้าไปแฮ็กได้เยอะเหมือนกัน (ซึ่งก็ไม่ใช่ว่าจะเจาะกันง่ายๆ)
ข้อนี้ มันจะไปโดนการเปิดสิทธิ์เข้าถึง folder uploads ให้สามารถโหลดไฟล์เข้าระบบได้ง่ายๆ เช่น พวกเว็บบอร์ด ที่ปล่อยให้แทรก html / upload ไฟล์ได้เยอะๆ ฯลฯ เสร็จโจรอ่ะ เพราะมันโหลดทีนึง พอมีการเรียกใช้ไฟล์ก็เหมือนโทรจัน มันจะก๊อบตัวเองไปอยู่ทั่วไปหมด และซ่อนต้นฉบับเอาไว้เนียนๆ ลบยังไงก็ไม่หาย บางคนต้องล้างทั้ง host ก็มีมาแล้ว
- ใช้ wp รุ่นเก่า
- โม theme เองโดยไม่ผ่าน child theme และ update ไม่ได้เพราะมันจะพัง
- ไปเปิดสิทธิ์ wp-config.php มั่วซั่ว เช่น เปิดให้ upload ไฟล์ขึ้น host ได้
- host ใช้ php รุ่นเก่า หรือถูกแฮกผ่านเว็บอื่นใน host เดียวกัน
เอาจริงๆ เงื่อนไขที่ทำให้ระบบที่ถูกวางไว้ดีๆ พังหมดมีเยอะกว่านี้ ก็อยู่ที่ admin ล้วนๆ ว่าเก่งแค่ไหน
------------------
วิธีแก้ทั่วไปคือ เมื่อมีประกาศ update ก็ต้องรีบทำ ก่อนจะโดนเจาะ และควรขยันเข้า host เพื่อสแกนช่องโหว่ แล้วบอกให้ host ปิดกั้น หรือกดปรับปรุงด้วยตัวเอง บลาๆๆ
ส่วนสิ่งที่คนไม่หวังดีทั่วไปทำได้ ก็แค่ยิงผ่าน xmlrpc.php ถ้าปิดการใช้งานไฟล์นี้ไปก็ยิงไปเหอะ กระสุนตกทะเลหมด
ใช้ .htaccess ป้องกันการเข้าถึงไฟล์ xmlrpc.php โดยโค๊ด
<Files xmlrpc.php>
order deny,allow
deny from all
</Files>
อีกตัวนึงก็เป็น wp-cron.php แต่ถ้าปิดเราก็ทำงานลำบาก ก็ไปติดตั้ง plugin พวกจำกัดสิทธิ์การเข้าถึง อย่างที่เพื่อนๆ ข้างบนบอกก็จบ
ปิดการใช้งาน cronjob เข้าไปเพิ่ม code นี้ใน wp-config.php
define(‘DISABLE_WP_CRON’, ‘true’);
-----------------
ทีนี้เรามาดูกันว่า เขาแทรก code ยังไง
- ถ้าไม่เข้า ftp ก็ต้องเข้าหลังบ้าน ไม่มีทางอื่น เพราะสิทธิ์ทุกอย่างอยู่กับ administrator อยู่ๆ จะให้ลุงเก่งคอม เข้าเว็บมาแล้วแทรก code ลงไปได้เลย มันเป็นไปไม่ได้หรอกครับ ระบบเขาระดับโลก และผมเชื่อว่า wordpress เป็น cms ที่ปลอดภัยสูงอันดับต้นๆ
- ลง plugin เถื่อน ยังไงก็ต้องใช้สิทธิ์ admin ที่จะกด activate ไม่งั้นโหลดขึ้น ftp แล้วหลอกให้ admin กด active เอาก็ได้
- admin เองเปิดให้ user upload ไฟล์ขึ้นไปเอง ตามที่เขียนไว้บนๆ
ก็อย่างที่บอกไว้ล่ะฮะ ตัว wp เองถ้าใช้ plugin/theme ที่ได้มาตรฐาน เอาของที่มันมีแบบธรรมดาๆ ที่แจกในเว็บหลักนั่น และไม่ลง security อะไรเลย ก็แทบจะเจาะไม่เข้าแล้ว