Сообщения в Лежит станция Мира

Лежит станция Мира

Сабж. Ругается на базульку, а еще там передаются сырые запросы, что в теории можно использовать для инъекции.
Правда в пыхокоде сильно не копался, но скорее всего подломить можно.

Функция executeQuery вызывается довольно часто и туда педаются данные путем слияния строк, например
Строка 285 файла transports.php
$this->executeQuery("insert into `$this->tablename` values(NULL, '".$msg['id']."', ' ... '".$msg['msg']."')");
Пока не ясно можно ли использовать это без авторизации. Код валидации authstring не читал.
Но имея поинта к этому участку кода появляется доступ :).

Да, в пхп можно отключить вывод ошибок в браузер, что лучше сделать :)

// А поставьте на фетч с dynamic основные эхи. Вроде как, все работает.
Difrex to All (2018-11-15 07:29:57) [ссылка]

Re: Лежит станция Мира

Ответ на сообщение
Сегодня появилось немножко свободного времени, и я решил таки разобраться со станцией
> Сабж. Ругается на базульку
Это обычно бывает, когда демон mariadb подыхает. Надо глянуть логи сервера
> Функция executeQuery вызывается довольно часто и туда педаются данные путем слияния строк, например
> Строка 285 файла transports.php
Специально прошерстил исходники на предмет сырых запросов.
Конкретно здесь ложная тревога. Ты, наверное, не заметил, что перед запуском этого кусочка кода сообщение эскейпится через prepareInsert, внутри которого вшит $db->real_escape_string
В getMessages эскейпится аналогично, в getMsgList и countMessages стоит жёсткий фильтр на все параметры внутри filter.php, так что зараза не пройдёт.

Не надо уж меня совсем дремучим говнокодером считать =)
Любые, даже начинающие, PHP-шники про SQL-инъекции думают сразу на стадии проектирования, и эта проблема съедает немалую часть времени на кодинг.
> Да, в пхп можно отключить вывод ошибок в браузер, что лучше сделать :)
Я его как раз специально включил, причём поставил самый verbose-уровень, чтобы быстро можно было понять, в чём проблема, и починить. Оно даже на варнинги бросает исключение и прерывает исполнение всего кода.
vit01 to Difrex (2018-11-17 09:03:28) [ссылка]

Re: Лежит станция Мира

Ответ на сообщение
А вот что насчёт периодического дауна станции, я про эту проблему уже давно знаю, но пока ничего поделать не могу.

Когда сервак в дауне, ping выдаёт ответы от какого-то zapret.hostnode.net (или .com?)

Путём гуглинга выяснилось, что проблема на стойке в Москве у webdc.ru

Хочу окончательно съехать со нашего FirstVDS к немцам на Hetzner, но переносить все запущенные сервисы пока нет времени. Немцы крутые, у них всегда чёткий аптайм без факапов, и второй сервак (а именно debug.ii-net.tk) работает как часы.
vit01 to Difrex (2018-11-17 09:10:19) [ссылка]

Re: Лежит станция Мира

Ответ на сообщение
> // А поставьте на фетч с dynamic основные эхи. Вроде как, все работает.
Уже давно как всё фетчится, твои сообщения видим
+++ Отправлено через IDEC Mobile
+++ GNU/Linux, Android, physics, MLP:FIM
vit01 to Difrex (2018-11-17 10:55:10) [ссылка]

Re: Лежит станция Мира

Ответ на сообщение
ii-net.tk что-то недоступен.
btimofeev to vit01 (2019-01-21 11:34:03) [ссылка]

Re: Лежит станция Мира

Ответ на сообщение
btimofeev> ii-net.tk что-то недоступен.
Была проблема у хостера опять

Из-за переполнения /boot при очередном обновлении ядра скрипты системы не смогли сгенерировать initramfs, из-за чего система не загрузилась при следующем ребуте

Так как у меня были экзамены, то разбираться с техподдержкой не было времени, а сейчас вон починили всё.
+++ Отправлено через IDEC Mobile
+++ GNU/Linux, Android, physics, MLP:FIM
vit01 to btimofeev (2019-01-21 15:47:27) [ссылка]