พื้นที่เก็บข้อมูลนี้มีช่องโหว่สำหรับ CVE-2024-34361 ซึ่งเป็นช่องโหว่ร้ายแรง (CVSS 8.6) ที่พบใน Pi-hole ซึ่งเป็น DNS sinkhole ที่ใช้กันอย่างแพร่หลายเพื่อบล็อกโฆษณาและติดตามโดเมนในระดับเครือข่าย
ช่องโหว่นี้เกิดขึ้นจากการตรวจสอบความถูกต้องของ URL ที่ไม่เหมาะสม ซึ่งสามารถถูกโจมตีผ่าน SSRF (การปลอมแปลงคำขอฝั่งเซิร์ฟเวอร์) ภายใต้เงื่อนไขบางประการ SSRF นี้สามารถยกระดับเป็น RCE (Remote Code Execution) ได้โดยใช้โปรโตคอล Gopherus
การใช้ช่องโหว่นี้ทำให้ผู้โจมตีสามารถส่งคำขอที่กำหนดเองจากเซิร์ฟเวอร์ Pi-hole ซึ่งอาจนำไปสู่การดำเนินการคำสั่งบนระบบโดยไม่ได้รับอนุญาต
ข้อบกพร่องด้านความปลอดภัยนี้ไม่เพียงแต่กระทบต่อการรักษาความลับและความสมบูรณ์ของระบบเท่านั้น แต่ยังเป็นภัยคุกคามที่สำคัญต่อความพร้อมใช้งานของระบบด้วยการอนุญาตให้ผู้โจมตีใช้คำสั่งตามอำเภอใจได้
เวอร์ชันที่ได้รับผลกระทบ:
ตรวจสอบให้แน่ใจว่าติดตั้ง Python บนระบบของคุณเพื่อใช้ประโยชน์จากช่องโหว่นี้ โคลนพื้นที่เก็บข้อมูลและตั้งค่าสภาพแวดล้อมที่จำเป็นดังนี้:
git clone https://github.com/T0X1Cx/CVE-2024-34361-Pi-hole-SSRF-to-RCE.git
cd CVE-2024-34361-Pi-hole-SSRF-to-RCE
pip install -r requirements.txt
ดำเนินการหาประโยชน์โดยใช้คำสั่งด้านล่าง:
python3 exploit.py [Pi-Hole URL] [Admin password]
หากต้องการใช้ช่องโหว่นี้ คุณต้องติดตั้งและกำหนดค่า Redis บนระบบเป้าหมาย ทำตามขั้นตอนเหล่านี้เพื่อติดตั้ง Redis:
ดาวน์โหลดและแยก Redis:
wget https://download.redis.io/releases/redis-6.0.3.tar.gz
tar -xvf redis-6.0.3.tar.gz
cd redis-6.0.3
คอมไพล์และเริ่ม Redis:
make
cd src/
sudo ./redis-server
การหาประโยชน์นี้มีวัตถุประสงค์เพื่อการทดสอบความปลอดภัยทางการศึกษาและจริยธรรมเท่านั้น การใช้ช่องโหว่นี้กับเป้าหมายโดยไม่ได้รับความยินยอมร่วมกันล่วงหน้าถือเป็นสิ่งผิดกฎหมาย และนักพัฒนาซอฟต์แวร์จะไม่รับผิดต่อการใช้งานในทางที่ผิดหรือความเสียหายที่เกิดจากการแสวงหาประโยชน์นี้
การหาประโยชน์ที่พัฒนาโดย Julio Ángel Ferrari (Aka. T0X1Cx)