Điểm:0

debian phpfmp chroot và imagemagick - NoDecodeDelegateForThisImageFormat / các định dạng được hỗ trợ:0

lá cờ cn

Bạn,

Tôi đã thiết lập chroot-jail với nginx và phpfpm 7.4 từ packages.sury.org/php như thường lệ (trên Debian 5.10.103-1 bullseye).

Imagemagick không thành công:

  <?php $im=new Imagick(__DIR__ . '/image.png');

Uncaught ImagickException: NoDecodeDelegateForThisImageFormat `PNG' @ lỗi/cấu thành.c/ReadImage/575

<?php phpinfo()

"Số lượng định dạng được hỗ trợ của ImageMagick: 0"

Phiên bản đã cài đặt: php7.4-imagick 3.6.0-4+0~20220117.35+debian11~1.gbp149f82

Tôi nghi ngờ một số vấn đề về chroot, nhưng các mô-đun PHP được tải bởi quy trình tổng thể của PHP và không yêu cầu bất kỳ thư viện nào trong nhà tù chroot. gdlib hoạt động. Từ dòng lệnh, tưởng tượng hoạt động như mong đợi, vì vậy tôi cho rằng tất cả các lib cần thiết đã được cài đặt. Đã kiểm tra kỹ nhà tù với một nhà tù đang hoạt động bình thường trên Debian buster, không thể tìm thấy bất kỳ sự khác biệt lớn nào.

Chưa bao giờ trải nghiệm điều này trước đây. Bất kỳ gợi ý?

Cập nhật

Nhận thấy một vấn đề bổ sung có thể được kết nối:

<?php system("/usr/bin/id)";
Mã kết quả: -1 error_get_last() ->Array (
[loại] => 2
[tin nhắn] => system(): Không thể fork [/usr/bin/id]
[tệp] => /htdocs/test.php
[dòng] => 198 )

Khi tôi thay đổi từ dòng lệnh với chroot --userspec=myphpfpmuser ... lệnh /usr/bin/id trả về id người dùng chính xác. Quá trình fpm đang chạy với tư cách là người dùng này.

$ ulimit -a
thời gian không chặn thời gian thực (micro giây, -R) không giới hạn
kích thước tệp lõi (khối, -c) 0
kích thước phân đoạn dữ liệu (kbyte, -d) không giới hạn
ưu tiên lập lịch trình (-e) 0
kích thước tệp (khối, -f) không giới hạn
tín hiệu chờ xử lý (-i) 256246
bộ nhớ bị khóa tối đa (kbyte, -l) 8205255
kích thước bộ nhớ tối đa (kbyte, -m) không giới hạn
mở tệp (-n) 1024
kích thước đường ống (512 byte, -p) 8
Hàng đợi tin nhắn POSIX (byte, -q) 819200
ưu tiên thời gian thực (-r) 0
kích thước ngăn xếp (kbyte, -s) 8192
thời gian cpu (giây, -t) không giới hạn
quy trình người dùng tối đa (-u) 256246
bộ nhớ ảo (kbyte, -v) không giới hạn
khóa tệp (-x) không giới hạn

Bất cứ ai có bất kỳ ý tưởng?

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.