Глючит публичная папка.

Предварительное обсуждение найденных ошибок перед отправкой их авторам фреймворка, а также внесение новых предложений.
Ответить
Notad
Сообщения: 78
Зарегистрирован: 2015.10.03, 16:30

Глючит публичная папка.

Сообщение Notad »

Периодически случается. Все файлы в публичной папке становятся недоступными в каком то браузере. На разных компах, на разных сетях. При том что на других браузерах все работает. После удаления кукисов все начинает работать.
Вообщем для изоляции проблемы сделал три скриншота, если кто не верит что такое возможно. По прямом запросу на файл http://modnaua.com/filespublic/producti ... ph7770.jpg на одном из браузеров вместо файла страница ошибки. номер ошибки при таком глюке 403. Теоретически файлы в публичной папке не должны миновать фреймворк и отдаваться напрямую. Ничего не пойму.
1) С браузером все нормально потомучто случается на разных браузерах разных компах плюс разных сетях
2) С Хостиногом тоже все нормально потому что в разных браузерах все работает и если удаль кукисы то и на проблемно заработает
3) С кодом приложения тоже все нормально потому что прямая ссылка на файл идет мимо кода.

Изображение
Изображение
Изображение
Notad
Сообщения: 78
Зарегистрирован: 2015.10.03, 16:30

Re: Глючит публичная папка.

Сообщение Notad »

Одна из записей лога ошибок апача

[Sun Mar 04 19:40:42.105551 2018] [:error] [pid 30141] [client 92.113.94.20:26780] [client 92.113.94.20] ModSecurity: Access denied with code 403 (phase 2). Found 1 byte(s) in REQUEST_HEADERS:Cookie outside range: 1-255. [file "/usr/local/cwaf/rules/13_HTTP_Protocol.conf"] [line "93"] [id "210410"] [rev "4"] [msg "COMODO WAF: Invalid character in request||modnaua.com|F|3"] [data "REQUEST_HEADERS:Cookie=PHPSESSID=st1dmtr1dejqgjde7bmcp70hi5; _csrf=fc1d59c8f18325abe7b74c8bb89fe7ec5608aaf47112eb78b50ec7e9fc18bfe1a:2:{i:0;s:5:\\x22_csrf\\x22;i:1;s:32:\\x22\\xf2f{\\xa2]\\x00SZ\\x9d]\\xba\\x834\\xfe\\xbf\\xacW!\\xac\\x19\\xb7\\x93\\x0bB'G\\xe3`~\\xa5V\\xda\\x22;}"] [severity "ERROR"] [tag "CWAF"] [tag "Protocol"] [hostname "modnaua.com"] [uri "/assets/8ebe1cbc/js/bootstrap.js"] [unique_id "Wpwvml@VV5gRLONFJQepxwAAAAg"], referer: http://modnaua.com/filespublic/producti ... ph7770.jpg
dmg
Сообщения: 685
Зарегистрирован: 2012.10.15, 03:09

Re: Глючит публичная папка.

Сообщение dmg »

Если п. 3, то при чём здесь Yii?
Отключите или смените vpn.
Notad
Сообщения: 78
Зарегистрирован: 2015.10.03, 16:30

Re: Глючит публичная папка.

Сообщение Notad »

dmg писал(а): 2018.03.04, 21:00 Если п. 3, то при чём здесь Yii?
Отключите или смените vpn.
Впн не работает. При том, что если удалить куку _csrf=fc1d59c8f18325abe7b74c8bb89fe7ec5608aaf47112eb78b50ec7e9fc18bfe1a%3A2%3A%7Bi%3A0%3Bs%3A5%3A%22_csrf%22%3Bi%3A1%3Bs%3A32%3A%22%F2f%7B%A2%5D%00SZ%9D%5D%BA%834%FE%BF%ACW%21%AC%19%B7%93%0BB%27G%E3%60%7E%A5V%DA%22%3B%7D

из запроса то все прекрасно работает.
А этот кукис выставляет yii2 и както криво выставляет что перехватывает запросы на файлы по прямой ссылке и рубает доступ. Я вот только что нашел как фаерфоксе отправлять запросы с произвольным кукисом и убрал этот кукис с запроса, и файл по прямой ссылке нормально открылся. Получается что у меня прямые ссылки проходят через yii2?
Notad
Сообщения: 78
Зарегистрирован: 2015.10.03, 16:30

Re: Глючит публичная папка.

Сообщение Notad »

Вот код htacess может тут что не правильно.

Код: Выделить всё

Options +FollowSymLinks
IndexIgnore */*

RewriteEngine on
 
# If a directory or a file exists, use the request directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# Otherwise forward the request to index.php
RewriteRule . index.php
Notad
Сообщения: 78
Зарегистрирован: 2015.10.03, 16:30

Re: Глючит публичная папка.

Сообщение Notad »

И так, после исследования методом научного тыка, был получен интересный вывод. Ошибка появляется из за того, что кука не адекватна.

Вот вся строка куки

Cookie: PHPSESSID=st1dmtr1dejqgjde7bmcp70hi5; _csrf=fc1d59c8f18325abe7b74c8bb89fe7ec5608aaf47112eb78b50ec7e9fc18bfe1a%3A2%3A%7Bi%3A0%3Bs%3A5%3A%22_csrf%22%3Bi%3A1%3Bs%3A32%3A%22%F2f%7B%A2%5D%00SZ%9D%5D%BA%834%FE%BF%ACW%21%AC%19%B7%93%0BB%27G%E3%60%7E%A5V%DA%22%3B%7D

Жирным отмечена часть (%00SZ) из за которой любой запрос к серверу вызывает 403 ошибку. Вообще теперь нужно понять как так получается что yii2 выставляет такую неадекватную куку. И почему только у меня такое случается. Есть идеи?
andku83
Сообщения: 988
Зарегистрирован: 2016.07.01, 10:24
Откуда: Харьков

Re: Глючит публичная папка.

Сообщение andku83 »

Код: Выделить всё

    'components' => [
        'request' => [
            'cookieValidationKey' => 'your_key, // Проверьте/напишите новый, может у вас тут закралась кириллица
...
        ],
    ]
Notad
Сообщения: 78
Зарегистрирован: 2015.10.03, 16:30

Re: Глючит публичная папка.

Сообщение Notad »

shnir писал(а): 2018.03.05, 01:50

Код: Выделить всё

    'components' => [
        'request' => [
            'cookieValidationKey' => 'your_key, // Проверьте/напишите новый, может у вас тут закралась кириллица
...
        ],
    ]
Нет там кириллицы. А если бы была, то ошибка была бы постоянно.
Попытаюсь пока обновить версию yii2 в 1.0.13 устранили баг
Bug #14542: Ensured only ASCII characters are in CSRF cookie value since binary data causes issues with ModSecurity and some browsers (samdark)
По моему мой случай.
Nex-Otaku
Сообщения: 831
Зарегистрирован: 2016.07.09, 21:07

Re: Глючит публичная папка.

Сообщение Nex-Otaku »

Включайте логику и проверяйте все конфиги. Дело не в фреймворке. Где-то накосячили с настройками.
Notad
Сообщения: 78
Зарегистрирован: 2015.10.03, 16:30

Re: Глючит публичная папка.

Сообщение Notad »

Nex-Otaku писал(а): 2018.03.05, 14:25 Включайте логику и проверяйте все конфиги. Дело не в фреймворке. Где-то накосячили с настройками.
Есть еще вариант обратится в поддержку хостинга чтобы перенастроили ModSecurity. Но это если обновление не поможет. И какие могут быть настройки для _csrf кроме cookieValidationKey ?
Nex-Otaku
Сообщения: 831
Зарегистрирован: 2016.07.09, 21:07

Re: Глючит публичная папка.

Сообщение Nex-Otaku »

Настройки куки, сессий и путей.
Ответить