Php 5.6 4 lỗ hổng

Trang này chứa thông tin chi tiết về PHP 5. 6. x < 5. 6. 4 'process_nested_data' Plugin RCE Nessus bao gồm các khai thác và PoC có sẵn được tìm thấy trên GitHub, trong Metasploit hoặc Exploit-DB để xác minh lỗ hổng này

Tổng quan về plugin


ID. 80332
Tên. PHP5. 6. x < 5. 6. 4 'process_nested_data' RCE
Tên tệp. php_5_6_4. nasl
Lỗ hổng được xuất bản. 18-12-2014
Plugin này đã được xuất bản. 2015-01-02
Thời gian sửa đổi lần cuối. 2022-04-11
Phiên bản plugin. 1. 12
Loại trình cắm. điều khiển từ xa
Dòng plugin. Lạm dụng CGI
Phần phụ thuộc. php_version. nasl
Mục KB bắt buộc [?]. www/PHP

Thông tin lỗ hổng


Mức độ nghiêm trọng. Cao
Lỗ hổng được công bố. 18-12-2014
Đã xuất bản bản vá lỗi. 18-12-2014
CVE [?]. CVE-2014-8142
CPE [?]. cpe. /một. php. php

Tóm tắt

Máy chủ web từ xa sử dụng phiên bản PHP bị ảnh hưởng bởi lỗ hổng thực thi mã từ xa

Sự miêu tả

Theo biểu ngữ của nó, phiên bản PHP 5. 6. x được cài đặt trên máy chủ từ xa trước 5. 6. 4. Do đó, nó bị ảnh hưởng bởi lỗi sử dụng sau khi miễn phí trong chức năng ' process_nested_data ' trong ' ext/standard/var_unserializer. re' do xử lý không đúng các khóa trùng lặp trong các thuộc tính được tuần tự hóa của một đối tượng. Kẻ tấn công từ xa, sử dụng lệnh gọi phương thức 'unserialize' được chế tạo đặc biệt, có thể khai thác lỗ hổng này để thực thi mã tùy ý trên hệ thống

Lưu ý rằng Nessus đã không cố gắng khai thác vấn đề này mà thay vào đó chỉ dựa vào số phiên bản tự báo cáo của ứng dụng

Giải pháp

Nâng cấp lên phiên bản PHP 5. 6. 4 hoặc muộn hơn

Khai thác công cộng


(Các) Cổng mạng đích. 80
(Các) nội dung mục tiêu. Dịch vụ/www
Khả năng khai thác. Đúng (Khai thác-DB, GitHub)
Dễ khai thác. Không cần khai thác

Đây là danh sách các khai thác và PoC được biết đến công khai để xác minh PHP 5. 6. x < 5. 6. Lỗ hổng RCE 4 'process_nested_data'

Trước khi chạy bất kỳ khai thác nào đối với bất kỳ hệ thống nào, hãy đảm bảo rằng bạn được chủ sở hữu của (các) hệ thống đích ủy quyền để thực hiện hoạt động đó. Trong mọi trường hợp khác, đây sẽ được coi là một hoạt động bất hợp pháp

CẢNH BÁO. Cẩn thận với việc sử dụng các khai thác chưa được xác minh từ các nguồn như GitHub hoặc Exploit-DB. Những khai thác và PoC này có thể chứa phần mềm độc hại. Để biết thêm thông tin, hãy xem cách sử dụng khai thác một cách an toàn

Thông tin rủi ro


Vectơ CVSS V2 [?]. AV. không áp dụng. L/Âu. không áp dụng. SỐ PI. P/A. THỂ DỤC. U/RL. CỦA/RC. Điểm cơ sở CCVSS. 7. 5 (Cao)Điểm phụ tác động. 6. 4Điểm phụ về khả năng khai thác. 10. 0CVSS Điểm tạm thời. 5. 5 (Trung bình)Điểm môi trường CVSS. NA (Không có)Chỉ số phụ tác động đã sửa đổi. NAĐiểm CVSS tổng thể. 5. 5 (Trung bình)

Quay lại trình đơn

Nguồn plugin


Đây là php_5_6_4. mã nguồn plugin nasl nessus. Tập lệnh này là Bản quyền (C) 2015-2022 Tenable Network Security, Inc

#%NASL_MIN_LEVEL 70300
#
# (C) Tenable Network Security, Inc.
#

include('deprecated_nasl_level.inc');
include('compat.inc');

if (description)
{
  script_id(80332);
  script_version("1.12");
  script_set_attribute(attribute:"plugin_modification_date", value:"2022/04/11");

  script_cve_id("CVE-2014-8142");
  script_bugtraq_id(71791);

  script_name(english:"PHP 5.6.x < 5.6.4 'process_nested_data' RCE");

  script_set_attribute(attribute:"synopsis", value:
"The remote web server uses a version of PHP that is affected by a
remote code execution vulnerability.");
  script_set_attribute(attribute:"description", value:
"According to its banner, the version of PHP 5.6.x installed on the
remote host is prior to 5.6.4. It is, therefore, affected by a
use-after-free error in the 'process_nested_data' function within
'ext/standard/var_unserializer.re' due to improper handling of
duplicate keys within the serialized properties of an object. A remote
attacker, using a specially crafted call to the 'unserialize' method,
can exploit this flaw to execute arbitrary code on the system.

Note that Nessus has not attempted to exploit this issue but has
instead relied only on the application's self-reported version number.");
  script_set_attribute(attribute:"see_also", value:"http://php.net/ChangeLog-5.php#5.6.4");
  script_set_attribute(attribute:"see_also", value:"https://bugs.php.net/bug.php?id=68594");
  # https://bugzilla.redhat.com/show_bug.cgi?id=1175718
  script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?88c4ed71");
  script_set_attribute(attribute:"solution", value:
"Upgrade to PHP version 5.6.4 or later.");
  script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P");
  script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");

  script_set_attribute(attribute:"exploitability_ease", value:"No exploit is required");
  script_set_attribute(attribute:"exploit_available", value:"false");

  script_set_attribute(attribute:"vuln_publication_date", value:"2014/12/18");
  script_set_attribute(attribute:"patch_publication_date", value:"2014/12/18");
  script_set_attribute(attribute:"plugin_publication_date", value:"2015/01/02");

  script_set_attribute(attribute:"plugin_type", value:"remote");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:php:php");
  script_set_attribute(attribute:"thorough_tests", value:"true");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_family(english:"CGI abuses");

  script_copyright(english:"This script is Copyright (C) 2015-2022 Tenable Network Security, Inc.");

  script_dependencies("php_version.nasl");
  script_require_keys("www/PHP");
  script_require_ports("Services/www", 80);

  exit(0);
}

include("audit.inc");
include("global_settings.inc");
include("misc_func.inc");
include("http.inc");
include("webapp_func.inc");

port = get_http_port(default:80, php:TRUE);

php = get_php_from_kb(
  port : port,
  exit_on_fail : TRUE
);

version = php["ver"];
source = php["src"];

backported = get_kb_item('www/php/'+port+'/'+version+'/backported');

if (report_paranoia < 2 && backported) audit(AUDIT_BACKPORT_SERVICE, port, "PHP "+version+" install");

# Check that it is the correct version of PHP
if (version =~ "^5(\.6)?$") audit(AUDIT_VER_NOT_GRANULAR, "PHP", port, version);
if (version !~ "^5\.6\.") audit(AUDIT_NOT_DETECT, "PHP version 5.6.x", port);

if (version =~ "^5\.6\.[0-3]($|[^0-9])")
{
  if (report_verbosity > 0)
  {
    report =
      '\n  Version source    : '+source +
      '\n  Installed version : '+version +
      '\n  Fixed version     : 5.6.4' +
      '\n';
    security_hole(port:port, extra:report);
  }
  else security_hole(port);
  exit(0);
}
else audit(AUDIT_LISTEN_NOT_VULN, "PHP", port, version);

Phiên bản mới nhất của tập lệnh này có thể được tìm thấy ở những vị trí này tùy thuộc vào nền tảng của bạn

  • Linux / Unix.
    ______4
  • Cửa sổ.
    ______5
  • Mac OS X.
    ______6

Quay lại trình đơn

Làm thế nào để chạy


Đây là cách chạy PHP 5. 6. x < 5. 6. 4 'process_nested_data' RCE dưới dạng plugin độc lập thông qua giao diện người dùng web Nessus (https. //máy chủ cục bộ. 8834/)

  1. Nhấp để bắt đầu Quét mới
  2. Chọn Quét nâng cao
  3. Điều hướng đến tab Plugin
  4. Ở góc trên cùng bên phải, nhấp để Tắt tất cả các plugin
  5. Ở bảng bên trái, chọn họ plugin lạm dụng CGI
  6. Trên bảng bên phải chọn PHP 5. 6. x < 5. 6. 4 'process_nested_data' plugin RCE ID 80332
  7. Chỉ định mục tiêu trên tab Cài đặt và nhấp để Lưu quá trình quét
  8. Chạy quét

Dưới đây là một vài ví dụ về cách chạy plugin trong dòng lệnh. Lưu ý rằng các ví dụ bên dưới minh họa cách sử dụng trên nền tảng Linux/Unix

sử dụng cơ bản

/opt/nessus/bin/nasl php_5_6_4.nasl -t 

Chạy plugin với thông báo theo dõi kiểm tra trên bảng điều khiển

/opt/nessus/bin/nasl -a php_5_6_4.nasl -t 

Chạy plugin với việc thực thi tập lệnh theo dõi được ghi vào bảng điều khiển (hữu ích để gỡ lỗi)

/opt/nessus/bin/nasl -T - php_5_6_4.nasl -t 

Chạy plugin bằng cách sử dụng tệp trạng thái cho mục tiêu và cập nhật nó (hữu ích khi chạy nhiều plugin trên mục tiêu)

Là PHP5. 6 an toàn?

Bạn không nên sử dụng PHP 5. 6 (hoặc bất kỳ phiên bản nào của PHP 5) trong môi trường sản xuất . Có một số chức năng và thư viện không dùng nữa và lỗi thời không còn được sử dụng vì lý do bảo mật. Nếu bạn đang chạy bất kỳ phiên bản nào trong số này, hãy liên hệ với nhà phát triển của bạn hoặc chúng tôi và lên kế hoạch nâng cấp.

Các lỗ hổng của PHP là gì?

Dưới đây là một số lỗ hổng chính của PHP. .
Tấn công Cross-site Scripting (XSS). .
Tấn công giả mạo yêu cầu liên trang (CSRF). .
tiêm SQL. .
Tấn công bao gồm tập tin. .
Cướp phiên. .
Bỏ qua xác thực. .
Tiêm lệnh. .
Tiêm đối tượng PHP

Là PHP5. 6 cuối đời?

Gần 14 năm kể từ khi được tạo, PHP 5 đã hết hạn sử dụng kể từ tháng 1 năm 2019 . Nhóm PHP sẽ không còn hỗ trợ PHP 5. x thông qua các bản cập nhật, sửa lỗi hoặc thậm chí là các bản vá bảo mật. Điều này có nghĩa là mọi lỗ hổng mới hoặc chưa được phát hiện trước đó trong PHP 5 sẽ không được vá.

Tại sao PHP có nhiều lỗ hổng như vậy?

Và quả thực, như nghiên cứu gần đây đã chứng minh, nhiều ứng dụng PHP có lỗ hổng bảo mật do thiết kế xấu và thiếu hiểu biết về các biện pháp bảo mật cơ bản cần thiết để bảo mật ứng dụng web.