# Лежит станция Мира
Difrex(tavern,23) — All
2018-11-15 07:29:57


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

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

Пока не ясно можно ли использовать это без авторизации. Код валидации authstring не читал.
Но имея поинта к этому участку кода появляется доступ :).

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

// А поставьте на фетч с dynamic основные эхи. Вроде как, все работает.

# Re: Лежит станция Мира
vit01(mira, 1) — Difrex
2018-11-17 09:03:28


Сегодня появилось немножко свободного времени, и я решил таки разобраться со станцией

> Сабж. Ругается на базульку
Это обычно бывает, когда демон mariadb подыхает. Надо глянуть логи сервера

> Функция executeQuery вызывается довольно часто и туда педаются данные путем слияния строк, например
> Строка 285 файла transports.php

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

Не надо уж меня совсем дремучим говнокодером считать =)
Любые, даже начинающие, PHP-шники про SQL-инъекции думают сразу на стадии проектирования, и эта проблема съедает немалую часть времени на кодинг.

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

Я его как раз специально включил, причём поставил самый verbose-уровень, чтобы быстро можно было понять, в чём проблема, и починить. Оно даже на варнинги бросает исключение и прерывает исполнение всего кода.

# Re: Лежит станция Мира
vit01(mira, 1) — Difrex
2018-11-17 09:10:19


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

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

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

Хочу окончательно съехать со нашего FirstVDS к немцам на Hetzner, но переносить все запущенные сервисы пока нет времени. Немцы крутые, у них всегда чёткий аптайм без факапов, и второй сервак (а именно debug.ii-net.tk) работает как часы.

# Re: Лежит станция Мира
vit01(mira, 1) — Difrex
2018-11-17 10:55:10


> // А поставьте на фетч с dynamic основные эхи. Вроде как, все работает.

Уже давно как всё фетчится, твои сообщения видим

+++ Отправлено через IDEC Mobile
+++ GNU/Linux, Android, physics, MLP:FIM

# Re: Лежит станция Мира
btimofeev(tavern,13) — vit01
2019-01-21 11:34:03


ii-net.tk что-то недоступен.

# Re: Лежит станция Мира
vit01(mira, 1) — btimofeev
2019-01-21 15:47:27


btimofeev> ii-net.tk что-то недоступен.

Была проблема у хостера опять

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

Так как у меня были экзамены, то разбираться с техподдержкой не было времени, а сейчас вон починили всё.

+++ Отправлено через IDEC Mobile
+++ GNU/Linux, Android, physics, MLP:FIM