We are happy to announce that Vesta is back under active development as of 25 February 2024. We are working on v1 candidate and expect to engage more with the community over the coming months. We are committed to open source, and we encourage contributors to help us build the future of Vesta.
php5.6 + функция readFileStr на vestacp
php5.6 + функция readFileStr на vestacp
Доброго времени суток. Сразу говорю, с пхп - знаком плохо.
Есть впс с последней версией vestacp и пару сайтов. Потребовалось перенести на него один из старых сайтов с хостинга. Попробовал, что на пхп 7,0+ - не работает (точнее не все страницы). Завелся на 5.6.
Установил на весту 5,6 + создал шаблоны под неё = завелся.
Но было обноружено, что открыта уязвимость LFI (можно добраться практически до любого файла на сервере).
Методом проб и ошибок, обнаружил что трабл в этой вот функции: $textFile = readFileStr($_GET['new']);
Подскажите, куда копать, куда бежать.
Шаблон для ПХП5.6 . Возможно в нем трабл.
Есть впс с последней версией vestacp и пару сайтов. Потребовалось перенести на него один из старых сайтов с хостинга. Попробовал, что на пхп 7,0+ - не работает (точнее не все страницы). Завелся на 5.6.
Установил на весту 5,6 + создал шаблоны под неё = завелся.
Но было обноружено, что открыта уязвимость LFI (можно добраться практически до любого файла на сервере).
Методом проб и ошибок, обнаружил что трабл в этой вот функции: $textFile = readFileStr($_GET['new']);
Подскажите, куда копать, куда бежать.
Шаблон для ПХП5.6 . Возможно в нем трабл.
Code: Select all
GNU nano 2.7.4 File: data/templates/web/apache2/php-fcgid5.6.tpl
<VirtualHost %ip%:%web_port%>
ServerName %domain_idn%
%alias_string%
ServerAdmin %email%
DocumentRoot %docroot%
ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/
Alias /vstats/ %home%/%user%/web/%domain%/stats/
Alias /error/ %home%/%user%/web/%domain%/document_errors/
SuexecUserGroup %user% %group%
CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes
CustomLog /var/log/%web_system%/domains/%domain%.log combined
ErrorLog /var/log/%web_system%/domains/%domain%.error.log
<Directory %docroot%>
AllowOverride All
Options +Includes -Indexes +ExecCGI
php_admin_value open_basedir %docroot%:%home%/%user%/tmp
php_admin_value upload_tmp_dir %home%/%user%/tmp
php_admin_value session.save_path %home%/%user%/tmp
<Files *.php>
SetHandler fcgid-script
</Files>
FCGIWrapper %home%/%user%/web/%domain%/cgi-bin/fcgi-starter .php
</Directory>
<Directory %home%/%user%/web/%domain%/stats>
AllowOverride All
</Directory>
IncludeOptional %home%/%user%/conf/web/%web_system%.%domain%.conf*
</VirtualHost>
-
- Support team
- Posts: 1111
- Joined: Tue Jul 30, 2013 10:18 pm
- Contact:
- Os: CentOS 6x
- Web: nginx + php-fpm
Re: php5.6 + функция readFileStr на vestacp
В PHP нет такой функции.
Re: php5.6 + функция readFileStr на vestacp
$textFile = readFileStr($_GET['product']); сылаеться на utils.php:
Code: Select all
<?php
session_start();
include "globalConst_en.php";
//this file contains some utils that can be used from all files
//this function return true if user is entered to the system or false if not
function isSignIn()
{
//session_start();
if (isset($_SESSION['sign']))
return true;
else
return false;
}
//this file end user session and unset all session variables
function endSession()
{
//session_start();
unset($_SESSION['sign']);
session_destroy();
}
//this function save file
function saveFile($filePath, $text)
{
$fp = fopen($filePath, 'w') or die(ERROR_OPEN_FILE);
fwrite($fp, $text) or die(ERROR_WRITE_FILE);
fclose($fp);
}
//this function read file
function readFileStr($filePath)
{
$fp = fopen($filePath, 'r') or die(ERROR_OPEN_FILE);
$s = fread($fp, filesize($filePath)) or die(ERROR_READ_FILE);
fclose($fp);
return $s;
}
//this function get all files from $dirName and filter them using $filter
function getFiles($dirName, $filter)
{
$dp = openDir($dirName) or die(ERROR_OPEN_DIR);
while ($currentFile !== false)
{
$currentFile = readDir($dp);
$files[] = $currentFile;
}
return preg_grep($filter, $files);
}
?>
-
- Support team
- Posts: 1111
- Joined: Tue Jul 30, 2013 10:18 pm
- Contact:
- Os: CentOS 6x
- Web: nginx + php-fpm
Re: php5.6 + функция readFileStr на vestacp
Да пусть ссылается куда угодно, если есть какая-то проблема - это проблема используемой вами CMS.
Копать в сторону:
1. Отказа от древних версий php
2. Исправлению уязвимостей в коде используемых скриптов
Re: php5.6 + функция readFileStr на vestacp
Это не CMS. А самописный сайт с админкой и тд, был когда-то. Админку выкинул вместе с редактором.
Re: php5.6 + функция readFileStr на vestacp
Спасибо :-)