• May 10, 2018

    1 user ที่เป็น Administrator ก็ไม่ควรตั้งชื่อเป็น admin, administrator, root etc
    2 plugin กับ themes ต้อง download จาก site ที่ไว้ใจได้เท่านั้น (แต่ก็มีหลุดมาได้เยอะ นั่นคือ ก็ไม่ปลอดภัย 100%)
    http://wordpress.org/extend/themes/
    http://wordpress.org/extend/plugins/
    3 ถ้าใช้ premium plugin หรือ themes ก็ให้โหลดจากเจ้าของโดยตรงเท่านั้น
    4 ตั้งรหัสให้ ยากต่อการคาดเดา ปกติแฮกเกอร์จะมีชุด user / pass ที่คนทั่วไปนิยมใช้
    5 directories permissions ที่เหมาะสม 755 และ files permissions ที่เหมาะสม 644
    6 update wordpress, plugin, themes ให้สม่ำเสมอ ธีมเก่าที่ไม่ได้อัพเดท หรือ เขียนเอง แล้วไม่พัฒนา เวลาผ่านไปจะมีช่องโหว่ ที่ถูกเจาะได้ จะเห็นได้ว่า wordpress มีการปรับปรุง เพิ่มเติม ยกเลิก code ต่างๆด้วย สำหรับ การใช้งานธีม
    7 อย่าใช้ warez, null, crack สำหรับ plugin กับ themes เว้นแต่คุณแน่จริง แกะโค๊ดได้
    8 ไม่จำเป็นอย่าใช้ Plugin เพราะ ยิ่งใช้เยอะยิ่งเสียงสำหรับการถูกแฮกจาก แต่ละ plugin และบาง plugin ไม่อัพเดท ไม่ควรใช้ เวลาผ่านไปมี bug และ ช่องโหว่
    9 plugin ที่ไม่ใช้ให้ถอนทิ้ง
    10 ธีมที่ไม่ใช้ให้ถอนทิ้ง เหลือไว้สักธีมที่เป็นของ wordpress
    11 เปลี่ยน table_prefix ก็เปลี่ยนจาก wp_ เป็นอย่างอื่น
    12 ใช้ sFTP แทน  FTP (Hosting ทั่วไปเปิด) ถ้าใช้ FTP เวลาส่งค่า ดักจับรหัสไปได้
    13 ควร coding Theme แทนการใช้ plugin ระบบปลอดภัยกว่า เร็วกว่า
    14 ใช้ Hosting คุณภาพ มีคนที่มีความรู้ดูแล ไม่ใช่ถูกอย่างเดียว อาจมีเสียวตอนหลัง ชื่อเสียงด้าน hosting  จึงเป็นสิ่งสำคัญ
    15 ป้องกันการเข้าถึงโฟล์เดอร์ wp-admin โดยการสร้างไฟล์ .htaccess
    16 ตั้งค่าไฟล์ Config ป้องกันการโดนแฮก
    17 ตั้งระบบพิเศษเพิ่ม เว็บที่มีความเสี่ยงถูกเจาะ เช่น หากจะเข้าหลังบ้าน (CP admin หรือ CP Directadmin) ต้องผ่านระบบความปลอดภัย รหัสอีกชุดแยกกัน โดยอาจตั้งค่า .htaccess
    18 ถ้ามีงบพอ ควรใช้ VPS แทน Server  Shared Hosting  เมื่อคนอื่นถูกแฮค จะไม่โดนด้วย

    วิธีง่ายๆ ใช้ Plugin

    Wordfence Security – Firewall & Malware Scan

    https://th.wordpress.org/plugins/wordfence/

    Hacker ใช้วิธี Brute Force Attack สร้าง BOT เพื่อล็อกอินเข้าเว็บ WordPress ด้วยการสุ่มเดารหัสผ่าน

    Limit Login Attempts

    Plugin  จำกัดการ login ต่อ 1 ip  หากใส่รหัสผิดเกิน 3 ครั้ง ระบบจะแบนการล็อกอินที่มาจาก IP นั้น 24 hr
    มันยังแสดง IP ให้เราเห็นด้วยว่า การล็อกอินที่ใส่รหัสผิดนั้นมาจาก IP อะไร
    ปกติ Hacker  จะมี Bot อยู่ด้วยกันหลายไอพี  ต่อให้ IP โดนแบนก็ใช้ IP ใหม่ ล็อกอินสุ่มเข้ามาได้อีกเรื่อยๆ

    Wordfence Security

    Wordfence มันอาจจะกินทรัพยากรมาก อาจเปิดไว้ตอนจะ scan (ใช้ Jetpack แทน)
    มีระบบแจ้งเตือนการล็อกอิน ส่งให้เราทางอีเมล์

    Jetpack

    Jetpack by WordPress.com  ในส่วนของ Security นี้ Jetpack ก็จะมีให้เราตั้งค่า Prevent brute force attacks ด้วย
    แต่เห็น เขาว่าตัวนี้หนักโฮสต์
    ต้องมี Account ของ WordPress.com ก่อน และทำการเชื่อมต่อ เว็บกับ WordPress.com จึงใช้งานได้

    Invisible reCaptcha for WordPress

    Google Captcha

    Google Captcha (reCAPTCHA) by BestWebSoft
    โดยสามารถ Login form , Registration form , Reset password form , Comments form และ Contact Form

    ต้อง ทำการ Authentication ก่อน โดยการ Register กับ Google เพื่อนำ “Site Key” และ “Secret Key” มาใช้ (ในหน้า Setting จะมีลิงค์ให้คลิกไป register)“

    Lockdown WP Admin

    ทำให้เราเปลี่ยนหน้า Login จากปกติ คือ /wp-admin/ เป็น /xxx/ ได้
    กดช่อง “Hide WP Admin” แล้วทำการตั้งค่า WordPress Login URL ใหม่

    แม้เปลี่ยนชื่อ Login สุดท้ายหาก Hacker  จะล็อกอินผ่าน /wp-login.php/ แทนได้อยู่ดีเพราะไฟล์ login วิ่งมาที่นี่ – -”

    ใช้ VestaCP เป็น Control Panel  จะไม่จำเป็นต้องมี Folder ใดเป็น 777 เลย และจะเอาไฟล์มาฝังได้ยาก

    การ Block IP หรือ จำกัด อนุญาต ให้สิทธิ์

    ให้ Block IP ตั้งแต่ระดับ Hosting การกำหนดสิทธิ์ให้เข้าหลังบ้าน (wp-login.php)และ ต้องมาจากประเทศที่ตั้งไว้เท่านั้น
    deny all and allow only for a single IP ที่ folder wp-admin (หรือ อาจจระบุไฟล์ไปเลยก็ได้ ว่าไฟล์นี้สำหรับ ip นี้เท่านั้น เพราะไฟล์นี้อยู่ที่ root)

    <IfModule>
    Require ip #.#.#.#
    Deny from all
    ErrorDocument 403 /index.php
    Order Allow,Deny
    Allow from #.#.#.#
    </IfModule>
    
    <Files wp-login.php>
           Order deny,allow
           Deny from all
           Allow from #.#.#.#
    </Files>

    ทดสอบแล้วใช้ได้

    ErrorDocument 403 http://www.vir9.com
    Order deny,allow
    Deny from all
    Allow from xxx.xxx.xxx.xxx

    ตรวจสอบ ip

    https://whatismyipaddress.com
    https://stackoverflow.com/questions/4400154/deny-all-allow-only-one-ip-through-htaccess
    http://www.thaiseoboard.com/index.php/topic,85990.0.html

    ป้องกันการเข้าถึงโฟล์เดอร์ wp-admin โดยการสร้างไฟล์ .htaccess

    โฟล์เดอร์ wp-admin  เข้าถึง Dashboard (ส่วนควบคุมของ WordPress ) เข้าถึงได้เมื่อใส่ User + Password
    การกำหนดอนุญาตเฉพาะ IP ให้มีสิทธิ์เข้าถึงโฟลเดอร์ wp-admin ได้ แม้ Username และ Password ถูกต้อง แต่ IP ไม่ตรงกับที่กำหนดไว้ ก็ไม่สามารถเข้าถึง Dashboard ได้ หาก admin ใช้ IP ที่เปลียนตลอดเวลา เช่น IP เน็ตบ้าน,มือถือ จะกำหนดได้ยากขึ้น
    สุดท้ายอาจต้องใช้วิธี upไฟล์ชดชุด allow และ deny ในช่วง เข้า Admin CP

    สร้างไฟล์ .htaccess โดยการกำหนด IP แล้วใส่โค้ด…

    <LIMIT GET>
      order deny,allow
      allow from xxx.xxx.xxx.xxx 
      deny from all
    </LIMIT>

    อัพโหลด.htaccess โฟล์เดอร์ wp-admin
    deny from all คือ ปฏิเสธการเข้าถึงจากทุก ๆ IP ที่ไม่ตรงกับ allow from

    https://www.wordfence.com/docs/how-to-clean-a-hacked-wordpress-site-using-wordfence/
    http://ctrlq.org/code/19247-password-protect-wordpress-admin
    https://help.dreamhost.com/hc/en-us/articles/214820158-Hacked-WordPress-site-overview

    วิธีตั้งค่าไฟล์ Config ป้องกันการโดนแฮก

    หลังจากอัพโหลดไฟล์ของ WordPress ขึ้นสู่โฮสสมบูรณ์แล้วให้ตั้งค่าดังนี้
    1. เปิด wp-config.php
    2. ตั้งค่า DB_NAME , DB_USER , DB_PASSWORD ให้ครบ
    3. หาคำว่า Authentication Unique Keys and Salts ในไฟล์ wp-config.php
    4. เข้าเว็บ https://api.wordpress.org/secret-key/1.1/salt/ (หรือมองหา URL ในไฟล์ก็มี) เพื่อเอา KEY มาใส่
    5. Copy Key จากเว็บนั้นมาใส่(เว็บจะ Random Key มาให้ ไม่มีทางซ้ำกัน)
    6. Save ไฟล์ อัพโหลดขึ้น Host

    หมายเหตุสำคัญ

    เคสที่โดนๆ กันทุกวันนี้ มาจากช่องโหว่ใน server เอง!
    ถ้า Hacker เจาะเว็บไซต์ไหนได้ ก็จะแพร่ไปทั้งเครื่อง (สำหรับ Share Host) ใครอยู่เครื่องเดียวกัน ก็โดนไปด้วย
    และไฟล์ wp-config.php ของคุณ ก็จะถูก script สูบไปกองรวมกัน นั่นหมายความว่า hacker จะเก็บรหัสผ่านของคุณไว้ด้วย

    วิธีรับมือ

    1. หา host ชั้นดี ถ้าเป็นไปได้ หา host ที่มีคนร่วมชะตากรรมน้อยๆ วิธีหาก็อาศัยเว็บ
    http://www.yougetsignal.com/tools/web-sites-on-web-server/
    มันสามารถบอกได้ว่า server เครื่องนั้นยัดกันอยู่กี่เว็บ (ปกติก็หลักร้อย) อย่างน้อยก็ประมาณการ
    2. backup บ่อยๆ
    3. วันใดโดน hack ถ้า server กลับมาพร้อมใช้งานอีก ให้เปลี่ยนรหัสให้หมด
    4. เตรียมตัวโดนใหม่อีกรอบ ถ้ายังไม่แก้ทั้งหมด
    5. โดนบ่อยๆ หนีไปเช่า vps

    จับ vps แล้วทำไงต่อ .. ถ้าเว็บคุณโดน hack แล้วปลีกวิเวก หนีมาใช้ vps
    เว็บไหนโดน hack โดนฝัง shell มันจะสามารถทะลุถึงเว็บได้ทั้งเครื่อง
    และไฟล์ config สำคัญของ cms ทั้งหลายจะโดน copy มากองรวมกัน ซึ่งหมายความว่า password ก็จะถูกดูดไปด้วย
    และถ้า admin ลง server แบบเดิมๆ มีเว็บเดิมๆ plugin เดิมๆ (ที่มันรั่ว) hacker ก็กลับมาได้อีก

    เช่า vps ใช้ คนเดียว
    ถ้าทำเองได้ใช้ unmanaged vps ราคาเมืองนอก ถูกมากๆ  แต่ลูกค้าจัดการเองหมด ถ้าไม่เป็นก็จ้าง
    ราคา vps ที่เช่าไป ปีละ 700 บาท ก็มี
    1024MB RAM
    2048MB Burst
    3 CPU Cores
    50GB Diskspace
    2000GB Bandwidth
    1Gbps Port Speed

    spec นี้เหลือเฟือสำหรับการใช้เว็บรายเดียว แต่ต้อง config เป็น ไม่งั้นคนเข้ามากๆ ซดแรมหมด
    ไปหาคู่มือการตั้ง server ได้ตามเว็บบอร์ด linux ทั่วไป
    (การจ้างคือการหาใครสักคนช่วยย่นเวลาแก้ปัญหาให้คุณ)
    งบน้อย ต้องใช้ความพยายามมาก ศึกษามาก และใช้เวลามาก หากคุณมีความสามารถทำได้ คุณก็ต้องจ่ายด้วยเวลาและความยุ่งยากอยู่ดี ก็เลือกเอา

    ฝัง Shell ก็กระโดดข้ามมาไม่ได้ เพราะปิดการบายพาส ip/~user
    ถ้าเว็บโดนแฮก ไม่แก้ไข ย้ายไป Vps ก็ไม่ช่วยอะไรขึ้นมา

    Unmanaged เมืองนอก  ถูกๆ Oversell เยอะมาก ล่มมาก็หนักพอๆกับ โดนแฮค บางที่ Burst Ram เยอะดี แต่พอใช้เข้าจริงๆ พอชั่วโมง Peak มันก็ Peak กันทุก IP ไม่สามารถ Burst ได้ หาพวกที่ไม่ Oversold ยาก เช่า Dedicated สเปคต่ำๆ ราคาก็แพงกว่า VPS นิดแต่ก็ OK

    มันอยู่ที่ สคิปที่คุณใช้ด้วย ถ้าใช้สคิปที่รั่ว สคิป null โหลดฟรี ธีมโหลดฟรีทั้งหลายก็เตรียมใจรอไว้ก่อนเลย ทำหน้า welcome hacker ไว้เลยก็ดี 555+

    การย้ายไปเป็น vps เอง ไม่ใช่ทางออกที่ดีเท่าไหร่ เพราะเราเซตเองก็ไม่ได้หมายความว่าเซตเองแล้วจะปลอดภัย
    ทุกอย่างมีรูรั่วหมด ตั้งแต่ ระบบ network switch router, os, apache, nginx, phpmyadmin, cpทั้งหลาย, cms ทั้งหลาย  ปลั๊กอินทั้งหลาย Theme ส่วนเสริมต่างๆ การ coding ที่ไม่ปลอดภัย ผิดหลัก เครื่องคอมพิวเตอร์ที่คุณใช้ อาจะมีไวรัส โทรจัน โปรแกรม FTP อาจมีช่่องโหว่ ฯลฯ มันจึงอยู่ที่ว่าจะโดนส่วนไหนเท่านั้นเอง

    ถ้า admin ไม่เป็น ไม่อยากศึกษาเอง เพราะเกิดมาทำเว็บ ไม่ได้มาเป็น admin
    คิดแบบนี้ก็ถูกแล้วครับ เข็มมันต้องแหลมด้านเดียว
    เก่งทุกอย่าง มันคงต้องสะสมบารมีเหมือนพระเจ้าสิบชาติ

    ชาติแรก linux
    ชาติที่สอง php
    ชาติที่สาม css
    ชาติที่สี่ framework

    ก็ให้เช่า vps แบบที่เขามี support
    ใช้ให้คุ้ม มีปัญหาอะไรก็บอกเขา เพราะใช้บริการแล้วมัวแต่เกรงใจเขามันก็ไม่ดีกับเรา
    สรุปว่า ตอนนี้เราจะใช้ละ จะ unmanaged หรือ managed ก็แล้วแต่
    unmanaged ก็ถูกหน่อย แบบ High Risk High Return managed ก็อุ่นใจ ไปอีกแบบ

    เมื่อได้ vps มาแล้วทำดังนี้

    1.  ปิด ftp  เข้าทาง ssh อย่างเดียว ด้วยโปรแกรม winscp
    เข้าไปแล้วก็คล้ายๆ หน้าจอ โปรแกรม ftp แต่มันใช้โปรโตคอล ssh ซึ่งมีการเข้ารหัสข้อมูล
    2.  ปิด phpmyadmin  เพราะ hacker ชอบเข้าทางนี้
    วิธีปิดก็คือ ลบ alias ทิ้ง หรือ shell เข้าไปลบ softlink ทิ้งไปเลย
    ถ้าจะใช้ก็สร้าง alias หรือ สร้าง softlink ขึ้นมาใหม่
    ใน vps เราปิด phpmyadmin เองได้

    phpmyadmin เกี่ยวไรกับการ hack
    มันมีวิธีเข้าเว็บได้แบบไม่ต้องใช้ password และถ้าเข้าไป run query ได้ ก็จะสามารถให้ output ของ query เป็น php สักตัว ก็เป็นไปได้ ถ้า php ไฟล์นั้นคือ shell เมื่อนั้นเครื่องเราก็จะถูกยึด

    ข้อควรระวัง ไม่ว่าจะใช้ host แบบไหน
    –  ตั้งรหัสผ่าน อย่าให้สั้น ง่าย
    –  เลี่ยงการเขียนโปรแกรมขึ้นมาเอง โดยเฉพาะแนว sql มีโอกาสจะโดนเจาะผ่าน sql มาก ถ้าจำเป็นก็ใช้พวก php framework ซึ่งไม่ได้ใช้ sql โดยตรง
    – ระวังการใช้ plug-in ใน cms โดยเฉพาะ joomla แต่wordpress ค่อนข้างปลอดภัย แต่ให้ระวัง plugin
    – backup ข้อมูลออกมานอกเครื่องอย่างสม่ำเสมอ
    ห้ามเด็ดขาดคือ backup แล้วใส่ใน folder ที่ออก www ได้
    หมูหวาน hacker เลย
    ถ้าสูบ backup ได้ ก็คือเสียเว็บนั้นไปแล้ว

    วิธีลดความเสี่ยง อาจจะต้องใช้ cloud,  ทำ mirror site
    ชื่อ cloudflare  ให้จินตนาการถึง ระบบ cloud ซึ่งอาศัย server เป็นฝูงๆ มาช่วยกันประมวลผล
    บริการจาก cloudflare เป็นของฟรี ทำงานเหมือน dns ล่อเป้า ซึ่งได้ผลกรณีที่ server โดนรุมยิง
    cloudflare จะกลั่นกรองข้อมูลแบบปกติ แล้วส่งต่อไปให้ server ตัวจริงเท่านั้น ที่มาร้ายๆ โยนทิ้งหมด
    แต่  ระบบ Cloud ของนอกส่วนมากก็ใช้ Onapp ลดต้นทุน   ช่วยป้องกันล่มได้ส่วนหนึ่ง   แต่ไม่ได้ป้องกันโดนแฮค

    ถ้าเป็น wp + plugin + theme ส่วนมากจะโดนเข้ามาทางสคริป และจาก host ที่ไร้คุณภาพ คนดูแลไม่เก่งตั้งค่าไม่เป็น คือ ไม่ได้เก่งด้าน security ศาสตร์ด้านนี้แยกไปอีกแขนง ไม่ใช่ทุกคนจะเก่งทุกด้าน
    อย่าใช้ของปลอม Null-script หรือสคริปบัคเยอะ  ป้องกันได้ดีที่สุด

    ปิด service Hosting control panel เมื่อใช้งานเสร็จ
    รหัสผ่านจาก cpanel ถูกดูดมากองรวมกัน

    โดนทุกคนครับ มากบ้างน้อยบ้าง wpมันมีรูรั่ว
    มี10เว็บโดนไป9 ตอนนี้เลยใช้ html ทำเอา สบายใจดี ไม่มีโดนแฮก

    ติดตั้งปลั๊กอินที่รักษาความปลอดภัยครับ ของ wordpress แก่นหลักๆ
    นอกนั้นก็ …
    ลบปลั๊กอินที่ไม่ค่อยใช้
    ใช้ Long password เปลี่ยนทุก 72 ชม
    เลือก hosting ที่มีการรักษาความปลอดภัยชั้นครู พวก hostgator มันจะมีส่วนเสริมให้ซื้อ
    แบ็กอัพอยู่ตลอดเวลา ตรงสามารถใช้ปลั๊กอิน อย่าง Updraftplus
    ติดพวก Cloud Cdn
    ติดพวกปลั๊กอิน Security ดังๆ  เช่น iTheme ของ wordpress
    plugin ก็เลือกใช้เฉพาะที่มีจำนวน Download สูงๆ อย่าไปใช้ plugin ที่ outdated หรือมี review แย่ๆ



เวอไนน์ไอคอร์ส

ประหยัดเวลากว่า 100 เท่า!






เวอไนน์เว็บไซต์⚡️
สร้างเว็บไซต์ ดูแลเว็บไซต์

Categories