
استغلال إثبات المفهوم لـ CVE-2025-44137: اجتياز دليل غير مصادق عليه في MapTiler Tileserver-php v2.0، يمكن من قراءة ملفات تعسفية عبر معلمات GET مصممة.
قراءة ملفات غير مصادق عليها في MapTiler Tileserver-php v2.0.
MapTiler Tileserver-php v2.0 عرضة لثغرة اجتياز الدليل (Directory Traversal).
دالة renderTile داخل tileserver.php مسؤولة عن تسليم المربعات (tiles) المخزنة كملفات على الخادم عبر طلب ويب. إنشاء المسار إلى ملف يسمح باستخدام '../'، والتي يمكن استخدامها لقراءة أي ملف على خادم الويب.
معاملات GET المتأثرة هي "TileMatrix" و"TileRow" و"TileCol" و"Format"
$name = './' . $tileset . '/' . $z . '/' . $x . '/' . $y;
$mime = 'image/';
if($ext != null){
$name .= '.' . $ext;
}
if ($fp = @fopen($name, 'rb')) {
if($ext != null){
$mime .= $ext;
}else{
//detect image type from file
$mimetypes = ['gif', 'jpeg', 'png'];
$mime .= $mimetypes[exif_imagetype($name) - 1];
}
header('Access-Control-Allow-Origin: *');
header('Content-Type: ' . $mime);
header('Content-Length: ' . filesize($name));
fpassthru($fp);
die;

Martin Herancourt