เมื่อทำการคอมไพล์ PHP หากไม่มีความจำเป็นพิเศษ จะต้องถูกห้ามไม่ให้คอมไพล์และสร้างการสนับสนุนการแยกวิเคราะห์ PHP ในโหมดบรรทัดคำสั่ง CLI สามารถคอมไพล์ได้โดยใช้ --disable-CLI เมื่อ PHP ในโหมด CLI ถูกคอมไพล์และสร้างแล้ว ผู้บุกรุกอาจใช้โปรแกรมเพื่อสร้างกระบวนการแบ็คดอร์ของ WEB Shell หรือรันโค้ดที่กำหนดเองผ่าน PHP
คำอธิบายฟังก์ชันphpinfo()
: ส่งออกข้อมูลสภาพแวดล้อม PHP และโมดูลที่เกี่ยวข้อง สภาพแวดล้อมเว็บ และข้อมูลอื่นๆ
ระดับอันตราย: ปานกลาง
passthru()
คำอธิบายฟังก์ชัน: อนุญาตให้รันโปรแกรมภายนอกและสะท้อนเอาต์พุต คล้ายกับ exec()
ระดับอันตราย: คำอธิบายฟังก์ชัน High
exec()
: อนุญาตให้เรียกใช้งานโปรแกรมภายนอก (เช่น UNIX Shell หรือคำสั่ง CMD เป็นต้น)
ระดับอันตราย: High
system()
คำอธิบายฟังก์ชัน: อนุญาตให้รันโปรแกรมภายนอกและสะท้อนเอาต์พุตคล้ายกับ passthru()
ระดับอันตราย:
คำอธิบายฟังก์ชันchroot()
สูง: สามารถเปลี่ยนไดเร็กทอรีรูทการทำงานของกระบวนการ PHP ปัจจุบันได้ โดยสามารถทำงานได้เฉพาะเมื่อระบบรองรับ PHP โหมด CLI และฟังก์ชันนี้ใช้ไม่ได้กับระบบ Windows
ระดับอันตราย: คำอธิบายฟังก์ชัน High
scandir()
: แสดงรายการไฟล์และไดเร็กทอรีในพาธที่ระบุ
ระดับอันตราย: ปานกลาง
คำอธิบายฟังก์ชันchgrp()
: เปลี่ยนกลุ่มผู้ใช้ที่มีไฟล์หรือไดเร็กทอรีอยู่
ระดับอันตราย: คำอธิบายฟังก์ชัน High
chown()
: เปลี่ยนเจ้าของไฟล์หรือไดเร็กทอรี
ระดับอันตราย:
คำอธิบายฟังก์ชันshell_exec()
สูง: ดำเนินการคำสั่งผ่าน Shell และส่งคืนผลลัพธ์การดำเนินการเป็นสตริง
ระดับอันตราย: สูง
proc_open()
คำอธิบายฟังก์ชัน: ดำเนินการคำสั่งและเปิดตัวชี้ไฟล์สำหรับการอ่านและการเขียน
ระดับอันตราย: สูง
proc_get_status()
คำอธิบายฟังก์ชัน: รับข้อมูลเกี่ยวกับกระบวนการที่เปิดโดยใช้ proc_open()
ระดับอันตราย:
คำอธิบายฟังก์ชันerror_log()
สูง: ส่งข้อมูลข้อผิดพลาดไปยังตำแหน่งที่ระบุ (ไฟล์)
หมายเหตุด้านความปลอดภัย: ใน PHP บางเวอร์ชัน error_log() สามารถใช้เพื่อหลีกเลี่ยงเซฟโหมดของ PHP ได้
ดำเนินการคำสั่งตามอำเภอใจ
ระดับอันตราย:
คำอธิบายฟังก์ชันini_alter()
ต่ำ: เป็นฟังก์ชันนามแฝงของฟังก์ชัน ini_set() และมีฟังก์ชันเหมือนกับ ini_set() ดู ini_set() สำหรับรายละเอียด
ระดับอันตราย: สูง
ini_set()
คำอธิบายฟังก์ชัน: สามารถใช้เพื่อแก้ไขและตั้งค่าพารามิเตอร์การกำหนดค่าสภาพแวดล้อม PHP
ระดับอันตราย: สูง
ini_restore()
คำอธิบายฟังก์ชัน: สามารถใช้เพื่อกู้คืนพารามิเตอร์การกำหนดค่าสภาพแวดล้อม PHP ให้เป็นค่าเริ่มต้น
ระดับอันตราย:
คำอธิบายฟังก์ชันdl()
สูง: โหลดโมดูลภายนอก PHP ในขณะที่ PHP กำลังทำงาน (ไม่ใช่เมื่อเริ่มต้น)
ระดับอันตราย: High
pfsockopen()
คำอธิบายฟังก์ชัน: สร้างการเชื่อมต่อซ็อกเก็ตแบบถาวรในอินเทอร์เน็ตหรือโดเมน UNIX
ระดับอันตราย:
คำอธิบายฟังก์ชันsyslog()
สูง: สามารถเรียกใช้ฟังก์ชัน system layer syslog() ของระบบ UNIX ได้
ระดับอันตราย: คำอธิบายฟังก์ชันReadlink()
ปานกลาง
: ส่งกลับเนื้อหาของไฟล์เป้าหมายที่ลิงก์สัญลักษณ์ชี้ไป
ระดับอันตราย: คำอธิบายฟังก์ชันsymlink()
ปานกลาง
: สร้างลิงก์สัญลักษณ์ในระบบ UNIX
ระดับอันตราย:
คำอธิบายฟังก์ชันpopen()
สูง: คำสั่งสามารถส่งผ่านพารามิเตอร์ของ popen() และดำเนินการกับไฟล์ที่เปิดโดย popen()
ระดับอันตราย: High
stream_socket_server()
คำอธิบายฟังก์ชัน: สร้างการเชื่อมต่ออินเทอร์เน็ตหรือเซิร์ฟเวอร์ UNIX
ระดับอันตราย: Medium
putenv()
คำอธิบายฟังก์ชัน: ใช้เพื่อเปลี่ยนสภาพแวดล้อมชุดอักขระของระบบเมื่อ PHP กำลังทำงาน ใน PHP เวอร์ชันก่อนหน้า 5.2.6 คุณสามารถใช้ฟังก์ชันนี้เพื่อแก้ไขสภาพแวดล้อมชุดอักขระของระบบ จากนั้นใช้คำสั่ง sendmail เพื่อส่งพารามิเตอร์พิเศษเพื่อดำเนินการคำสั่ง SHELL ของระบบ
ระดับความเป็นอันตราย: สูง