Значение MySQL InnoDB auto_increment увеличивается на 2 вместо 1. Вирус? - PullRequest
6 голосов
/ 28 августа 2010

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

Недавно я заметил, что автоматически увеличиваемые значения первичного ключа для комментариев увеличиваются на 2, а не на 1.

Я также заметил, что в другой таблице MySQL, которая используется для запоминания подписи следа последних нескольких комментаторов (например, ip, id сеанса, строки uagent и т. Д.), Имя сеанса PHP начинается с «viruskinq», что странно, потому что я думал, что это всегда должна быть шестнадцатеричная строка, подобная md5.

Google выдает только пару результатов для "viruskinq", все на турецком языке. Это интересно, потому что примерно год назад этот сайт был испорчен турецкими злодеями. (Я на 100% уверен, что злоумышленникам не удалось добиться успеха из-за каких-либо дыр в безопасности моего приложения, потому что другие веб-сайты, размещенные в той же компании, также были повреждены в то время.)

Сайт находится на общем хосте с использованием Linux.

Как вы думаете, возможно ли, что сам сервер все еще может находиться под влиянием этих хакеров? Изучение значений идентификатора комментария показало, что этот феномен удвоения существует с мая этого года, но порча произошла почти год назад.

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

Редактировать: Краткое изложение решения

Хостинговая компания сообщила мне, что причина удвоенного значения автоматического приращения заключается в том, что они используют Master-Slave MySQL architect, и в соответствии с ними это явление нормальное.

Они также признали, что различные хакеры постоянно атакуют свои серверы, "особенно сессии", и они ничего не могут с этим поделать.

Думаю, мне лучше начать собирать вещи и перейти к лучшему веб-хосту.

Ответы [ 2 ]

4 голосов
/ 28 августа 2010

Я действительно, очень сомневаюсь, что это вирус.Дважды проверьте, действительно ли это идентификатор сеанса , который начинается с этой строки (что действительно могло бы стать причиной для беспокойства).Я думаю, это ребенок, который обнаружил, как изменить строку User Agent в браузере, и вы видите результаты этого, что совершенно безвредно.

Что касаетсяпроблема увеличения.

  • Сначала проверьте настройку auto_increment_increment вашего сервера MySQL.Может быть, по какой-то причине было установлено значение 2?

  • Во-вторых, если это не так, я бы посмотрел на все операции DELETE, которые система комментариев выполняет в таблице.Удаляются ли комментарии, признанные спамом?Можете ли вы какое-то время регистрировать удаления или переключаться на мягкие удаления?

  • Кроме того, попробуйте самостоятельно создать несколько последующих комментариев.Происходит ли то же самое явление?Что, если вы добавляете записи с использованием mySQL вручную?

  • Просмотрите код PHP, вставляющий отправленный комментарий, и убедитесь, что нет ничего, что могло бы привести к такому поведению.

  • Попробуйте переместить систему комментариев на другой сервер - предпочтительно локальный, возможно, только что настроенный - чтобы посмотреть, сохраняется ли там поведение.

2 голосов
/ 28 августа 2010

Может ли быть так, что значение автоинкремента таблицы установлено в 2?

См .: Столбец автоинкремента MySQL подскочил на 10 - почему?

...