วิธีการบังคับให้ล็อคอินหน้าเว็บก่อนเข้า AdminCP (ไม่จำเป็นแล้วสำหรับ Discuz! X3.5)
Discuz! X3.5 เวอร์ชั่นล่าสุดป้องกันปัญหานี้แล้ว หากติดตั้งใหม่จะมีการป้องกันให้อยู่แล้วแต่ถ้าอัปเกรดจากเวอร์ชั่นเก่ามาแล้วยังไม่มี สามารถเปิดได้ด้วยการ
เปิดไฟล์
/config/config_global.php
เพิ่มบรรทัดนี้หากไม่มี
$_config['admincp']['mustlogin'] = 1;
เอาไปต่อขึ้นบรรทัดใหม่หลังจาก $_config['admincp'] อันสุดท้ายที่มีก็ได้ครับ หรือถ้าไม่รู้ว่าตรงไหนดี ล่างสุดของไฟล์เลยก็ได้ ก่อน ?>
----- เนื้อหากระทู้เดิม -----
แม้ว่าเราจะมีการป้องกันการล็อคอินด้วย Captcha ต่าง ๆ ไม่ว่าจะเป็นในระบบ Discuz! เอง หรือ reCaptcha ก็ดี
ระบบต่าง ๆ เหล่านี้จะไปช่วยป้องกันได้เพียงการล็อคอินผ่านหน้าเว็บหลักเท่านั้น ไม่รวมไปถึงหน้า AdminCP
ทำให้เกิดช่องโหว่ในการ Bypass Captcha ด้วยการล็อคอินที่หน้า AdminCP (เปิด yourdomain.com/admin.php) โดยตรง
ปล. ทั้งนี้ปกติในระบบก็มีการป้องกันอยู่แล้วด้วยการจำกัดครั้งที่สามารถล็อคอินผิดได้ต่อ IP ต่อวัน
วิธีการบังคับให้ล็อคอินหน้าเว็บก่อนเข้า AdminCP
1. เปิดไฟล์ admin.php
2. ค้นหาคำว่า
$discuz->init();3. ขึ้นบรรทัดใหม่ต่อจากที่ค้นหาเจอ แล้วใส่โค้ดด้านล่างลงไป
if(!$_G['uid'] || $_G['groupid'] != 1) {
dheader("Location: ./index.php");
}
4. บันทึกและทดสอบด้วยการเปิด Private Browsing / Incognito ไปหน้า yourdomain.com/admin.php
5. จะเห็นว่าหากยังไม่ได้ล็อคอินที่หน้าเว็บหลัก จะถูกเด้งกลับมายังหน้าแรก แทนที่จะแสดงหน้าล็อคอินของ AdminCP เลย
ขอบพระคุณมากครับ มี Anti Brute Force Attack กันหมดแล้วไม่ใช่หรอ หะหรือว่าไม่มี
bonparadorn ตอบกลับเมื่อ 2021-6-5 22:42
มี Anti Brute Force Attack กันหมดแล้วไม่ใช่หรอ หะหรือว่าไม่มี
ก็แล้วแต่ครับว่าอยากใช้ Captcha ป้องกันอีกชั้นมั้ย
หน้า:
[1]