|
Отправлено: 22 сентября 2013 — 17:35
|
Покинул форум
Сообщений всего: 0
Дата рег-ции: N/A
Репутация: 0
|
Я у себя уже всё поправил - теперь не найти. Но сейчас по исходному дистрибутиву поищу...
(Добавление)
setmembers.php
CODE:fwrite($fp,"<? die; ?>\n".$fm->input['wordarray']);
badwords.php
skip_mails.php
CODE:<? die(); ?> # Удалите этот файл, если это вам не нужно |
|
|
1Bot |
Отправлено: 26 сентября 2013 — 05:47
|
Super Member
Покинул форум
Сообщений всего: 773
Дата рег-ции: Апр. 2009
Откуда: Днепропетровск
Репутация: 69
|
CAB пишет:Покопался у себя на форуме... Очень много файлов начинаются с При этом попытка изменить эту часть кода на любые варианты CODE:<? die; ?>
<?phpdie;?>
<?php die; ?> и ещё некоторые, приводит к тому, что содержимое файлов не читается. Поэтому решил пока не вносить исправления. Непонятная мне ситуация...
Попробую немного прояснить ситуацию: если хотите изменить файлы данных форума (не код, а именно данные), то необходимо и поменять соответствующие функции считывания function _Read($filename) и записи _Write этих данных, которые описаны в классе fm.
Если этого не сделать, а поменять данные "вручную", т.е. <?die;?> (строка, которая занимает 8 символов) на <?php die; ?> (строка, которая занимает 13 символов), то данные не могут быть корректно прочитаны.
Смотрите пример, в коде примера нужно заменить строки:
$filesize = ($filesize === 0) ? 1:$filesize-8; на строку $filesize = ($filesize === 0) ? 1:$filesize-13;
и fseek($fp, 8); на строку fseek($fp, 13);(Отредактировано автором: 26 сентября 2013 — 05:51) |
|
|
1Bot |
Отправлено: 26 сентября 2013 — 09:44
|
Super Member
Покинул форум
Сообщений всего: 773
Дата рег-ции: Апр. 2009
Откуда: Днепропетровск
Репутация: 69
|
NordWest пишет:Не все хостинги разрешают напрямую что-либо менять в php.ini - у меня как раз такой случай.
А если в код вставить такой код, интересно он отработает?
CODE:ini_set('short_open_tag', 'on');
Это не имеет смысла, так как код с короткими тегами как раз используется для защиты данных форума от просмотра через браузер, но если они запрещены, то защиты то как раз и не происходит, а отображаются данные, хоть и в serialized виде, что косвенно можно использовать для взлома форума. |
|
|
1Bot |
Отправлено: 26 сентября 2013 — 13:17
|
Super Member
Покинул форум
Сообщений всего: 773
Дата рег-ции: Апр. 2009
Откуда: Днепропетровск
Репутация: 69
|
NordWest пишет:С другой стороны может сложиться такая ситуация, когда админины хоста запретили использование коротких тегов и никак это не поменять
Можно создать собственный файл php.ini и разместить его в папке вызываемого скрипта. Данная информация актуальна для серверов где PHP установлен как обработчик CGI (suPHP).
Если Вы решили положить php.ini где-то в public_html, то создайте файл .htaccess в корневой папке сайта ( например /home/user/public_html) или если файл существует, то только добавьте в любом месте (в начале или конце) в файл .htaccess директивы которые описаны ниже.
CODE:<Files php.ini>
order allow,deny
deny from all
</Files>
эти директивы запрещают просмотра файла php.ini посторонними.
Примечание
При такой установке PHP в виде обработчика CGI, SuPHP, Вы не можете использовать в файле .htaccess следующие директивы : php_flag, php_admin_flag, php_value и прочих, которые изменяют какие-либо параметры PHP окружения это вызовет ошибку с кодом 500, Internal Server Error.
Внимание: собственный файл php.ini действителен только в пределах директории, в которой размещён, если не указана специальная опция, см. ниже.
CODE:suPHP_ConfigPath /home/user/public_html
т.е. впишите эту строку в файл .htaccess перед кодом запрета просмотра файла php.ini.
P.S. Во всех папках с данными форума имеется файл .htaccess, который запрещает вызов любых скриптов из этих папок.(Отредактировано автором: 26 сентября 2013 — 13:21) |
|
|
|
Отправлено: 26 сентября 2013 — 16:29
|
Покинул форум
Сообщений всего: 0
Дата рег-ции: N/A
Репутация: 0
|
Что-то мне подсказывает, что всё же проще защитить данные полными тегами и не морочить себе голову мудрёным конфигурированием php.ini.
(Добавление)
BON пишет:какой файл с данными ? Я пробовал открыть users.php и увидел весь список пользователей. Права стоят полные. Сейчас попробую подрезать.
(Добавление)
Поставил права 666 - пофиг, всё равно вижу.
(Добавление)
Поставил 660 - теперь не вижу, но будет ли при таких правах форум работать?
(Добавление)
Проверил - форум работает, но регаться не даёт.
CODE:Could not write in the file data/users.php
Короче фигня это всё. Пойду я лучше код переписывать. Там изменений не много, а решение получится универсальное. |
|
|
|