Ru-MaNGOS

Вернуться   Ru-MaNGOS > Дополнения > WWW

Важная информация

WWW Web интерфейс для MaNGOS

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 08.03.2010, 07:27   #1
Кот ДаWINчи
Умный
 
Аватар для Кот ДаWINчи
 
Регистрация: 07.03.2010
Адрес: Северный Урал (60°сш, 60°вд)
Сообщений: 330
Сказал(а) спасибо: 82
Поблагодарили 399 раз(а) в 120 сообщениях
Записей в дневнике: 30
Кот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человек
Отправить сообщение для Кот ДаWINчи с помощью ICQ Отправить сообщение для Кот ДаWINчи с помощью Skype™
По умолчанию [control panel] ACP - Панель управления учетными записями.

Описание
ACP (Account Control Panel) – предназначена для управления игроками аккаунтами и персонажами. (Он же личный кабинет). Написана на PHP. Главный девиз программы «чем проще - тем лучше». Но некоторой "паранойи", в виде подтверждений по емайлу, не помешает.

Функционал
* регистрация нового аккаунта
* восстановление пароля к аккаунту по средствам электронной почты
* просмотр информации об аккаунте и персонажах
* смена пароля,
* смена емайла,
* смена типа аккаунта (wow, tbc, wotlk)
* lock / unlock аккаунта
* вытаскивание персонажа из застреваний
* переименование персонажа
* перенос персонажа на другой аккаунт
* телепортация персонажа в дружественную столицу
* просмотр информации о банах
* просмотр доступных команд сервера
* просмотр объявлений autobroadcast-a
* логирование всех важных операций

Требования
* PHP 4.x - 5.3.3
* MySQL 4.x и выше
* Mangos 3.1.3 сборка 8072 или выше
* Патч Autobroadcast (не обязателен).
* register_globals = Off
* safe mode off


Установка
Установка проходит в 2 этапа:
1. Импортируйте SQL/acp.sql в БД acp(lk)
2. Отредактируйте config/config.php (все пояснения для настройки есть в самом файле.)
3. Внести данные о реалмах в config/realmlist.php

Заметки
Это мой первый полный проект. До этого ограничивался подгонкой под себя того что уже есть. Но в определенный момент понял, что нормального, в моем особом понимании этого дела, личного кабинета не существует. Со всем уважением к TIMzs, но его кабинет не давал мне того, чего хотелось. Вот я и решил сделать всё сам. Понимаю, что некоторые участки кода можно переделать и оптимизировать, но познания в PHP растут вместе с этим маленьким проектом….
Большое количество шкурок вызвано моим интересом «а как ACP будет смотреться в дизайне вон того сайта?»…
Забыл добавить, что в файле английского интерфейса(include/text.en.php) залиты русские тексты в utf-8. Кому понадобиться, тот переведёт.

Последняя версия - 2.33 (2 - версия движка, 33 - ревизия).


ВНИМАНИЕ! Первая версия движка никогда мной не была доведена до ума и полной работоспособности. На определенном этапе разработки АСР, был написан с нуля движок 2-ой версии. Работы по первой версии были полностью и бесповоротно прекращены. Те администраторы, которые используют старый движок должны знать, что в нем есть куча дыр, неисправностей и прочих косяков. За утрату информации сервера, при использовании АСР-1, вы сами несете ответственность.

--------
Послесловие
Выражаю огромную благодарность Камекадзе, TIMzs, Antimatrix и другим участникам форума, из чьих работ я брал идеи для своего проекта.







----------------------------
tempura
Автор очередного вопроса на тему "что дальше?", "когда будет?" и т.п. - автоматически вылетает в Рид-Онли на пару недель. В соответствии с общепринятым правилом "сначала читайте шапку, потом всю ветку".
Миниатюры
Нажмите на изображение для увеличения
Название: ACP2.jpg
Просмотров: 4677
Размер:	144.7 Кб
ID:	27  

Последний раз редактировалось Кот ДаWINчи; 26.07.2012 в 20:05.
Кот ДаWINчи вне форума   Ответить с цитированием
81 пользователя(ей) сказали cпасибо:
Alehander (11.03.2010), angelShlesser (25.03.2010), anvd24 (11.05.2010), blackmanos (18.07.2010), Chaosua (18.04.2010), CruncH (15.05.2010), DeusModus (08.03.2010), dikabraz (31.08.2012), ExC0tiC (08.03.2010), Fedia22 (11.06.2010), Feel the Power (02.06.2010), Hantet (16.03.2010), KiriX (08.03.2010), Konctantin (08.03.2010), labor (05.05.2010), Lightunit (17.06.2010), lina (01.04.2012), Lurker (10.03.2010), Mayss (07.04.2010), Medivh (09.03.2010), mozilla (13.03.2010), Neggod (08.03.2010), ObeDve (17.12.2010), PSZ (23.03.2010), Rave (19.02.2011), rootor (08.03.2010), selector (22.04.2010), Sergey (14.04.2010), SergZ (15.01.2011), sven (19.04.2010), Viste (10.03.2010), _PARADOX_ (02.06.2010), Дмитрий "Айдин" (05.06.2010)
Старый 09.03.2010, 05:38   #2
Alucard
Гость
 
Сообщений: n/a
По умолчанию

А changelog_и какие-то сохранились ? На подобии rev.|change.
  Ответить с цитированием
Старый 09.03.2010, 05:54   #3
Кот ДаWINчи
Умный
 
Аватар для Кот ДаWINчи
 
Регистрация: 07.03.2010
Адрес: Северный Урал (60°сш, 60°вд)
Сообщений: 330
Сказал(а) спасибо: 82
Поблагодарили 399 раз(а) в 120 сообщениях
Записей в дневнике: 30
Кот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человек
Отправить сообщение для Кот ДаWINчи с помощью ICQ Отправить сообщение для Кот ДаWINчи с помощью Skype™
По умолчанию

Цитата:
Сообщение от Alucard Посмотреть сообщение
А changelog_и какие-то сохранились ? На подобии rev.|change.
Посмотри в репозитории через черепашку!
Кот ДаWINчи вне форума   Ответить с цитированием
Старый 09.03.2010, 09:31   #4
Desperado
Гость
 
Сообщений: n/a
По умолчанию

Таки не добавил

/modules/charedit.php

Код:
		echo '<br>'.$txt[132]; // revive member
		$res = mysql_query("DELETE FROM `corpse` WHERE `player` = ".$_POST['character']);
		if ($res) echo $txt[92].'<br>';
		else echo $txt[93].'<br>';
include/text.ru.utf8.php

Код:
132=> 'Воскрешение - ',
  Ответить с цитированием
Пользователь сказал cпасибо:
KiriX (09.03.2010)
Старый 09.03.2010, 21:07   #5
Кот ДаWINчи
Умный
 
Аватар для Кот ДаWINчи
 
Регистрация: 07.03.2010
Адрес: Северный Урал (60°сш, 60°вд)
Сообщений: 330
Сказал(а) спасибо: 82
Поблагодарили 399 раз(а) в 120 сообщениях
Записей в дневнике: 30
Кот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человек
Отправить сообщение для Кот ДаWINчи с помощью ICQ Отправить сообщение для Кот ДаWINчи с помощью Skype™
По умолчанию

Цитата:
Сообщение от Desperado Посмотреть сообщение
Таки не добавил
Добавляю. Хотя не надо было ....

Ждите новую реву.
Кот ДаWINчи вне форума   Ответить с цитированием
Старый 09.03.2010, 21:12   #6
Desperado
Гость
 
Сообщений: n/a
По умолчанию

отчего же. По мере необходимости ещё выставить добавление марки, что бы не злоупотребляли
  Ответить с цитированием
Старый 09.03.2010, 21:36   #7
Кот ДаWINчи
Умный
 
Аватар для Кот ДаWINчи
 
Регистрация: 07.03.2010
Адрес: Северный Урал (60°сш, 60°вд)
Сообщений: 330
Сказал(а) спасибо: 82
Поблагодарили 399 раз(а) в 120 сообщениях
Записей в дневнике: 30
Кот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человек
Отправить сообщение для Кот ДаWINчи с помощью ICQ Отправить сообщение для Кот ДаWINчи с помощью Skype™
По умолчанию

рев. 11 в репозитории.

Код:
- Все правки за последние месяцы. 
- Перевод под 3.3.2.
- смена пола (есть проблемы с парикмахерами).
- улучшение защиты скрипта.
- патч от Desperado
Кот ДаWINчи вне форума   Ответить с цитированием
5 пользователя(ей) сказали cпасибо:
Hantet (16.03.2010), KiriX (09.03.2010), rootor (10.03.2010), Viste (10.03.2010)
Старый 09.03.2010, 22:05   #8
Desperado
Гость
 
Сообщений: n/a
По умолчанию

Зачем так официально)
поставил и фиг с ним кому-то пригодится.
Тем более назвать 6 строк кода патчем - как-то язык не выворачивается
  Ответить с цитированием
Старый 10.03.2010, 03:03   #9
angelShlesser
Пользователь
 
Аватар для angelShlesser
 
Регистрация: 08.03.2010
Сообщений: 55
Сказал(а) спасибо: 26
Поблагодарили 17 раз(а) в 9 сообщениях
angelShlesser На верном пути
По умолчанию

Хорошо если бы добавили донат систему! И что бы можно было выбрать включить или выключить!
Так же нашёл мелкий баг в acp
Миниатюры
Нажмите на изображение для увеличения
Название: 2010-03-10_030720.png
Просмотров: 1464
Размер:	12.4 Кб
ID:	107  

Последний раз редактировалось angelShlesser; 10.03.2010 в 03:07.
angelShlesser вне форума   Ответить с цитированием
Старый 10.03.2010, 03:15   #10
Desperado
Гость
 
Сообщений: n/a
По умолчанию

не нужно портить хороший ЛК всяким гамном типа донат системы.
Аналогичные функции выполняет изложенный в соседней теме.
  Ответить с цитированием
Старый 10.03.2010, 08:38   #11
sinnerjan
Гость
 
Сообщений: n/a
По умолчанию

это только у меня? или на самом деле на свн стоит лог и пасс?
  Ответить с цитированием
Старый 10.03.2010, 08:42   #12
VinD
Пользователь
 
Аватар для VinD
 
Регистрация: 08.03.2010
Адрес: Ukraine
Сообщений: 41
Сказал(а) спасибо: 18
Поблагодарили 56 раз(а) в 20 сообщениях
VinD Скоро придёт к известности
По умолчанию

Цитата:
Сообщение от sinnerjan Посмотреть сообщение
это только у меня? или на самом деле на свн стоит лог и пасс?
это ты коммит или апдейт с свн пытаешься сделать?
VinD вне форума   Ответить с цитированием
Старый 10.03.2010, 12:27   #13
KiriX
Умный
Старожил
 
Аватар для KiriX
 
Регистрация: 06.03.2010
Сообщений: 886
Сказал(а) спасибо: 698
Поблагодарили 433 раз(а) в 181 сообщениях
Записей в дневнике: 4
KiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человек
По умолчанию

Кот ДаWINчи, я читал, что ты собираешься забрасывать свою разработку ЛК и в последующем он будет выходить лишь в составе более крупного какого-то проекта.
Почему? Прекрасный ЛК (не считая недоработанный модуль баг-трекера, который, как мне кажется, можно было бы довести до ума и он был бы очень удобен). Глобальных проектов много. И они очень неплохие (CSWOWD, AOWOW), но вот хорошего ЛК реально не хватает... Может не стоит забрасывать это дело? Пжалста!!!
KiriX вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Старый 10.03.2010, 18:48   #14
Кот ДаWINчи
Умный
 
Аватар для Кот ДаWINчи
 
Регистрация: 07.03.2010
Адрес: Северный Урал (60°сш, 60°вд)
Сообщений: 330
Сказал(а) спасибо: 82
Поблагодарили 399 раз(а) в 120 сообщениях
Записей в дневнике: 30
Кот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человек
Отправить сообщение для Кот ДаWINчи с помощью ICQ Отправить сообщение для Кот ДаWINчи с помощью Skype™
По умолчанию

KiriX, то ли я не правильно выразился, то ли народ не понял мои невнятные объяснения. Но дело обстоит совсем не так.

Итак, объясню свою позицию общественности - в стиле "от и до...":

Эта история началась где-то год назад. Кто давно на этом форуме (getmangos.ru), те наверное помнят тему с ЛК Тimz-a. То как они с Камекадзе делили авторство.... и т.п. В то время я, как и многие другие, попытался помогать в разработке ЛК Тimz-a. Но все мы получили интересный ответ от автора: "Вам надо, вы и придумывайте дополнительные опции к ЛК...". Вот тогда я и понял, что спасение утопающих...

В марте, апреле я сел за плотное изучение PHP и MySQL, а к концу Мая родилась мысль сделать свой ЛК. И вот тогда я совершил свою первую ошибку. Я начал делать ЛК, не продумав все до мелочей. В результате по осени пришлось переходить на АСР2.

И вот сейчас та же проблема. Мои "хочу" и "могу" ушли выше возможностей, созданного движка. Порой, я открываю давно написанные мной файлы, и с новых высот моего познания (с табуретки ) вижу столько огрех, что охота сесть и переписать всё с нуля. Поэтому, чтобы не тратить время зря, я решил сделать более интуитивный движок для ЛК. Сразу же в нем продумать и заложить некоторые избыточные функции, а так же особое внимание уделить на защиту от проникновения на сервер, удобность, гибкость и понятность для пользователя у движка.
Сделать всё модульным. Те кто видел joomly 1.0.xxx со стороны администрирования поймут меня. Вот к этому я и стремлюсь. Эдакая джумла в миниатюре, ориентированная на работу с мангосом, в особенности с аккаунтами и героями. Новый проект - это просто очередной виток развития АСР, но я не хочу называть его "АСР 3"... Будет новое имя.

Я все так же противник так называемой "админки". Интерфейс будет единый, но вот функционал... Он будет расширятся или ограничиваться в зависимости от gmlevel-а посетителя.

Но сразу скажу, это будет всё тот же кабинет, только более расширенный.

Сейчас идет стадия осмысления и написания основы движка, потом начну переносить в него модули. Часть работы уже сделана, но это пока капля в море. Что-то более менее работоспособное появится летом.

Последний раз редактировалось tempura; 10.03.2010 в 19:08.
Кот ДаWINчи вне форума   Ответить с цитированием
13 пользователя(ей) сказали cпасибо:
Fear (13.03.2010), Hantet (16.03.2010), KiriX (10.03.2010), Norman (04.04.2011), rootor (10.03.2010), SergZ (17.06.2015), StinK (11.03.2010), Viste (10.03.2010)
Старый 10.03.2010, 21:38   #15
CruncH
Пользователь
 
Регистрация: 07.03.2010
Адрес: Норильск
Сообщений: 51
Сказал(а) спасибо: 28
Поблагодарили 31 раз(а) в 15 сообщениях
Записей в дневнике: 3
CruncH На верном пути
Отправить сообщение для CruncH с помощью ICQ
По умолчанию

Кот ДаWINчи, я думаю все осмыслить сразу сложно поэтому и бывает рефакторинг кода
а по поводу авторства и тп,(смотреть под какими лицензиями были те проекты не хочется, лениво ), но если они под свободными Open Source лицензиями GNU GPL, BSD и тп, можно спокойно форкать и продолжать дело самому, соответственно соблюдая все каноны лицензии, и авторы того проекта могут только по "фырчать" в твою сторону и не более. На то они и свободные

Ну а по поводу нового или правильного кода(сам не смотрел что там и как написано), лучше для больших( и вообще) писать код и потом выделять его в классы и отдельные функции. Так чтобы потом не писать с "0", а использовать готовые наработки. Да и другим будет удобнее.
__________________

Последний раз редактировалось CruncH; 10.03.2010 в 21:41. Причина: Дописал то, что забыл
CruncH вне форума   Ответить с цитированием
Старый 10.03.2010, 21:57   #16
sinnerjan
Гость
 
Сообщений: n/a
По умолчанию

Цитата:
Сообщение от VinD Посмотреть сообщение
это ты коммит или апдейт с свн пытаешься сделать?
ну взял сцилку со второй ревой и запихнул ее в тортилу. нажал качать и хрен там. просит лог и пас.
  Ответить с цитированием Полученное предупреждение
Старый 10.03.2010, 23:01   #17
KiriX
Умный
Старожил
 
Аватар для KiriX
 
Регистрация: 06.03.2010
Сообщений: 886
Сказал(а) спасибо: 698
Поблагодарили 433 раз(а) в 181 сообщениях
Записей в дневнике: 4
KiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человек
По умолчанию

Цитата:
Сообщение от sinnerjan Посмотреть сообщение
ну взял сцилку со второй ревой и запихнул ее в тортилу. нажал качать и хрен там. просит лог и пас.
Я вчера совершенно нормально скачал исходники без всякого пароля и логина.
Ввиду этого настоятельно рекомендую вам научиться пользоваться TortoiseSVN и выкачивать SVN репозитории. В противном случае если вы напишете ещё раз пост (в любой теме), в котором будет написано, что "черепаха" требует логин и пароль, я буду вынужден на неделю лишить вас права писать на данном форуме...
KiriX вне форума   Ответить с цитированием
3 пользователя(ей) сказали cпасибо:
Fear (13.03.2010), Hantet (16.03.2010), Кот ДаWINчи (11.03.2010)
Старый 13.03.2010, 10:20   #18
FWS
Гость
 
Сообщений: n/a
По умолчанию

Возникла проблема с кодировкой в ACP2.
Дефолтовое значение utf8 в config.php работает нормально, но постоянно приходится переключатся между кодировками в браузере. Если выставить в конфиге cp1251, ЛК зависает, а веб сервер выдает ошибку "falied to open stream: No such file or directory in D:\xxxxx\acp2\index.php on line 7".

В первом ACP все работает как часы, а здесь нет.
  Ответить с цитированием
Старый 13.03.2010, 10:31   #19
rsa
Почетный флудер
Старожил
 
Аватар для rsa
 
Регистрация: 08.03.2010
Адрес: Мурманск, Россия
Сообщений: 788
Сказал(а) спасибо: 55
Поблагодарили 333 раз(а) в 151 сообщениях
Записей в дневнике: 1
rsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранита
По умолчанию

Хотелось бы всех предупредить, что в коде этого весьма полезного продукта есть несколько ошибок, позволяющих без проблем за 5-10 минут взломать Ваш сервер, получить админские права (прямо через сайт), вынуть или уничтожить в базе любую информацию (только если sql-сервер глядит в Сеть). Методы защиты - стандартные от sql poison.
rsa вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
tempura (13.03.2010)
Старый 13.03.2010, 10:55   #20
tempura
Forum bot
 
Аватар для tempura
 
Регистрация: 01.02.2010
Адрес: пусто
Сообщений: 841
Сказал(а) спасибо: 286
Поблагодарили 418 раз(а) в 190 сообщениях
Записей в дневнике: 60
tempura отключил(а) отображение уровня репутации
По умолчанию

FWS
http://ru-mangos.ru/showthread.php?t=274
тут про кодировки специально написал



rsa
Не могли бы вы в приват автору описать что и как? Я понимаю, ему будет удобнее иметь пример перед глазами, для исправления?
__________________
Совершенно безопасен для людей, обладающих хотя бы некоторыми минимальными зачатками интеллекта, и способными строить причинно-следственные цепочки.
tempura вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Старый 13.03.2010, 13:05   #21
Deen
Гость
 
Сообщений: n/a
По умолчанию

Всем добрый день, возникла такая прорблема на версии ACP 1 при использование модуля смены пароля аккаунта, менялся пароль только для ACP, тоесть пароль для входа в игру каким то образом оставался прежним. Скажите, на версии 2 это уже не так? Я конечно понимаю что скачать и настроить дело пары минут, но всё же буду благодарен если кто то отпишеться на счёт этого
  Ответить с цитированием
Старый 13.03.2010, 14:04   #22
Кот ДаWINчи
Умный
 
Аватар для Кот ДаWINчи
 
Регистрация: 07.03.2010
Адрес: Северный Урал (60°сш, 60°вд)
Сообщений: 330
Сказал(а) спасибо: 82
Поблагодарили 399 раз(а) в 120 сообщениях
Записей в дневнике: 30
Кот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человек
Отправить сообщение для Кот ДаWINчи с помощью ICQ Отправить сообщение для Кот ДаWINчи с помощью Skype™
По умолчанию

Цитата:
Сообщение от FWS Посмотреть сообщение
Возникла проблема с кодировкой в ACP2.
Дефолтовое значение utf8 в config.php работает нормально, но постоянно приходится переключатся между кодировками в браузере. Если выставить в конфиге cp1251, ЛК зависает, а веб сервер выдает ошибку "falied to open stream: No such file or directory in D:\xxxxx\acp2\index.php on line 7".

В первом ACP все работает как часы, а здесь нет.
в АСР2 я не стал замарачиваться с двумя кодировками и перешел полностью на юникод. Если вам всё же нужна виндовая кодировка, то найдите все текстовые файлы с именем *.utf8.* и скопируйте их с перекодировкой в *.cp1251.* (там их вроде 2)

Цитата:
Сообщение от rsa Посмотреть сообщение
Хотелось бы всех предупредить, что в коде этого весьма полезного продукта есть несколько ошибок, позволяющих без проблем за 5-10 минут взломать Ваш сервер, получить админские права (прямо через сайт), вынуть или уничтожить в базе любую информацию (только если sql-сервер глядит в Сеть). Методы защиты - стандартные от sql poison.
В последнем коммите часть дырок исправлено. большинство из оставшегося правится банальным (int) в запросах. Я просто не прошелся по всем файлам и не вставил. (Видимо придется эту работу провести перед уходом на новый движок)... Еще смею напомнить, Все читаем надпись в красной рамке внизу. Этот сайт делается сугубо в образовательных целях, а не для коммерческого использования!

Цитата:
Сообщение от Deen Посмотреть сообщение
Всем добрый день, возникла такая прорблема на версии ACP 1 при использование модуля смены пароля аккаунта, менялся пароль только для ACP, тоесть пароль для входа в игру каким то образом оставался прежним. Скажите, на версии 2 это уже не так? Я конечно понимаю что скачать и настроить дело пары минут, но всё же буду благодарен если кто то отпишеться на счёт этого
пофиксино. Это происходит из-за патча на авторизацию, который был в сентябре. Необходимо просто при смене пароля занулять поля сессий в таблице аккаунтов.

Последний раз редактировалось Кот ДаWINчи; 13.03.2010 в 14:33.
Кот ДаWINчи вне форума   Ответить с цитированием
2 пользователя(ей) сказали cпасибо:
Старый 13.03.2010, 15:31   #23
rsa
Почетный флудер
Старожил
 
Аватар для rsa
 
Регистрация: 08.03.2010
Адрес: Мурманск, Россия
Сообщений: 788
Сказал(а) спасибо: 55
Поблагодарили 333 раз(а) в 151 сообщениях
Записей в дневнике: 1
rsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранита
По умолчанию

Цитата:
Сообщение от Кот ДаWINчи Посмотреть сообщение
В последнем коммите часть дырок исправлено. большинство из оставшегося правится банальным (int) в запросах. Я просто не прошелся по всем файлам и не вставил. (Видимо придется эту работу провести перед уходом на новый движок)... Еще смею напомнить, Все читаем надпись в красной рамке внизу. Этот сайт делается сугубо в образовательных целях, а не для коммерческого использования!
коммит "на посмотреть" я брал сегодня, все самые опасные дырки на месте. банальным int (наверное имелось ввиду intval($_GET['id']) и тп ?) там правится далеко не все, еще надо кучами расставлять addslashes().
страдает недержанием также и генератор рандома для восстановления паролей.
rsa вне форума   Ответить с цитированием
Старый 13.03.2010, 16:58   #24
Кот ДаWINчи
Умный
 
Аватар для Кот ДаWINчи
 
Регистрация: 07.03.2010
Адрес: Северный Урал (60°сш, 60°вд)
Сообщений: 330
Сказал(а) спасибо: 82
Поблагодарили 399 раз(а) в 120 сообщениях
Записей в дневнике: 30
Кот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человек
Отправить сообщение для Кот ДаWINчи с помощью ICQ Отправить сообщение для Кот ДаWINчи с помощью Skype™
По умолчанию

Цитата:
Сообщение от rsa Посмотреть сообщение
коммит "на посмотреть" я брал сегодня, все самые опасные дырки на месте. банальным int (наверное имелось ввиду intval($_GET['id']) и тп ?) там правится далеко не все, еще надо кучами расставлять addslashes().
страдает недержанием также и генератор рандома для восстановления паролей.
Уважаемый, опять одна абстракция! Пожалуйста, ткните мне конкретно, где ОБЫЧНЫЙ пользователь может провести инъекцию. А то хаять все умеем, а вот дельные советы давать...
Я с большим удовольствием приму ваш багрепорт, и внесу изменения в скрипты.

Ко всему прочему, поясните, чем провинился генератор рандома. (Тоже желательно на фактах).

Добавлено:
Не стал дожидаться ответа rsa. Подключил protect.php
Код:
<?php
//Обработка $_POST
reset($_POST);
while ($post_name = current($_POST)) {
     $_POST[key($_POST)] = addslashes($post_name);
     $union_post = strpos(strtoupper($post_name),'UNION');//Если найдем UNION, то обрубаем строку!
     if ($union_post != false) $_POST[key($_POST)] = substr($post_name,0,$union_post);
     unset($union_post);
     next($_POST);
}
//Обработка $_GET
reset($_GET);
while ($get_name = current($_GET)) {
     $_GET[key($_GET)] = addslashes($get_name);
     $union_get = strpos(strtoupper($get_name),'UNION');//Если найдем UNION, то обрубаем строку!
     if ($union_get != false) $_GET[key($_GET)] = substr($get_name,0,$union_get);
     unset($union_get);
     next($_GET);
}
?>
Коммит 12 - залит.

Последний раз редактировалось Кот ДаWINчи; 13.03.2010 в 23:18.
Кот ДаWINчи вне форума   Ответить с цитированием
Старый 13.03.2010, 19:09   #25
mozilla
Новичок
 
Регистрация: 09.03.2010
Сообщений: 12
Сказал(а) спасибо: 4
Поблагодарили 9 раз(а) в 4 сообщениях
mozilla На верном пути
По умолчанию

Почему-то не пишутся логи. Базу создал, sql в нее залил, в конфиге прописал.
И наверно вот это можно добавить:
mozilla вне форума   Ответить с цитированием
Старый 13.03.2010, 19:56   #26
Кот ДаWINчи
Умный
 
Аватар для Кот ДаWINчи
 
Регистрация: 07.03.2010
Адрес: Северный Урал (60°сш, 60°вд)
Сообщений: 330
Сказал(а) спасибо: 82
Поблагодарили 399 раз(а) в 120 сообщениях
Записей в дневнике: 30
Кот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человек
Отправить сообщение для Кот ДаWINчи с помощью ICQ Отправить сообщение для Кот ДаWINчи с помощью Skype™
По умолчанию

mozilla, только что проверил - логи ведуться. Может какая одна функция отвалилась? Напиши что не сохранилось!
Кот ДаWINчи вне форума   Ответить с цитированием
Старый 13.03.2010, 20:05   #27
mozilla
Новичок
 
Регистрация: 09.03.2010
Сообщений: 12
Сказал(а) спасибо: 4
Поблагодарили 9 раз(а) в 4 сообщениях
mozilla На верном пути
По умолчанию

Ни одна операция не логируется
mozilla вне форума   Ответить с цитированием
Старый 13.03.2010, 20:11   #28
Кот ДаWINчи
Умный
 
Аватар для Кот ДаWINчи
 
Регистрация: 07.03.2010
Адрес: Северный Урал (60°сш, 60°вд)
Сообщений: 330
Сказал(а) спасибо: 82
Поблагодарили 399 раз(а) в 120 сообщениях
Записей в дневнике: 30
Кот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человек
Отправить сообщение для Кот ДаWINчи с помощью ICQ Отправить сообщение для Кот ДаWINчи с помощью Skype™
По умолчанию

Цитата:
Сообщение от mozilla Посмотреть сообщение
Ни одна операция не логируется
включи в конфиге показ ошибок и посмотри что выдаст. У меня логи идут исправно. И на сервере, и на тесте.
Кот ДаWINчи вне форума   Ответить с цитированием
Старый 13.03.2010, 20:36   #29
mozilla
Новичок
 
Регистрация: 09.03.2010
Сообщений: 12
Сказал(а) спасибо: 4
Поблагодарили 9 раз(а) в 4 сообщениях
mozilla На верном пути
По умолчанию

Показ ошибок включил. Где их выводить он должен, не понял
Поменял в конфиге базу для лк на realmd, залив туда sql. Логи стали вестись. Что я упустил?
mozilla вне форума   Ответить с цитированием
Старый 13.03.2010, 21:01   #30
Кот ДаWINчи
Умный
 
Аватар для Кот ДаWINчи
 
Регистрация: 07.03.2010
Адрес: Северный Урал (60°сш, 60°вд)
Сообщений: 330
Сказал(а) спасибо: 82
Поблагодарили 399 раз(а) в 120 сообщениях
Записей в дневнике: 30
Кот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человек
Отправить сообщение для Кот ДаWINчи с помощью ICQ Отправить сообщение для Кот ДаWINчи с помощью Skype™
По умолчанию

Цитата:
Сообщение от mozilla Посмотреть сообщение
Показ ошибок включил. Где их выводить он должен, не понял
Поменял в конфиге базу для лк на realmd, залив туда sql. Логи стали вестись. Что я упустил?
мммм..... кодировку базы может.....?????
Кот ДаWINчи вне форума   Ответить с цитированием
Старый 13.03.2010, 21:04   #31
mozilla
Новичок
 
Регистрация: 09.03.2010
Сообщений: 12
Сказал(а) спасибо: 4
Поблагодарили 9 раз(а) в 4 сообщениях
mozilla На верном пути
По умолчанию

Создавал так:
PHP код:
CREATE DATABASE `lk` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
mozilla вне форума   Ответить с цитированием
Старый 13.03.2010, 21:07   #32
rsa
Почетный флудер
Старожил
 
Аватар для rsa
 
Регистрация: 08.03.2010
Адрес: Мурманск, Россия
Сообщений: 788
Сказал(а) спасибо: 55
Поблагодарили 333 раз(а) в 151 сообщениях
Записей в дневнике: 1
rsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранита
По умолчанию

Цитата:
Сообщение от Кот ДаWINчи Посмотреть сообщение
Уважаемый, опять одна абстракция! Пожалуйста, ткните мне конкретно, где ОБЫЧНЫЙ пользователь может провести инъекцию. А то хаять все умеем, а вот дельные советы давать...
Я с большим удовольствием приму ваш багрепорт, и внесу изменения в скрипты.
частично уже внесено. дырка в char.php заткнута через (int) (хотя я бы не стал на это полагаться, лучше все же через новую переменную и intval()
Дырка в charedit.php (возможно) заткнута через новую проверку, но надо тестировать.
Давать советы дело неблагородное, я лучше кину несколько строк из реально имевшей место атаки. Я себе дырки позатыкал но уже не помню где и как конкретно.

"GET /ACP2/index.php?modul=gilds&page=1&show=66+union+select+ 1--+

"GET /ACP2/index.php?modul=charedit%27+union+select+1--

"GET /ACP2/index.php?modul=char&id=106197+UNION+SELECT+1/* HTTP/1.1"

"GET /ACP2/index.php?modul=char&id=106197)+and+1=union+select +*+from--

"GET /ACP2/index.php?modul=char&id=106197)+unionselect+*+fr om(select+*+from(select+name_const(

"GET /ACP2/index.php?modul=char&id=-999.9%20UNION%20ALL%20SELECT%200x31303235343830303 536

строки не окончены, они длинные. но понять куда и как целились можно.
rsa вне форума   Ответить с цитированием
Старый 13.03.2010, 21:26   #33
mozilla
Новичок
 
Регистрация: 09.03.2010
Сообщений: 12
Сказал(а) спасибо: 4
Поблагодарили 9 раз(а) в 4 сообщениях
mozilla На верном пути
По умолчанию

Баг: если на аккаунте уже есть дк, то туда никого больше не перенести.
mozilla вне форума   Ответить с цитированием
Старый 13.03.2010, 22:57   #34
Кот ДаWINчи
Умный
 
Аватар для Кот ДаWINчи
 
Регистрация: 07.03.2010
Адрес: Северный Урал (60°сш, 60°вд)
Сообщений: 330
Сказал(а) спасибо: 82
Поблагодарили 399 раз(а) в 120 сообщениях
Записей в дневнике: 30
Кот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человек
Отправить сообщение для Кот ДаWINчи с помощью ICQ Отправить сообщение для Кот ДаWINчи с помощью Skype™
По умолчанию

Цитата:
"GET /ACP2/index.php?modul=gilds&page=1&show=66+union+select+ 1--+
Проглядел. Закрываю.

Цитата:
"GET /ACP2/index.php?modul=charedit%27+union+select+1--
Это было закрыто в 11 реве. mainform.php и menu.php теперь проверяют модули на наличие в модуль_листе.

Цитата:
"GET /ACP2/index.php?modul=char&id=106197+UNION+SELECT+1/* HTTP/1.1"

"GET /ACP2/index.php?modul=char&id=106197)+and+1=union+select +*+from--

"GET /ACP2/index.php?modul=char&id=106197)+unionselect+*+fr om(select+*+from(select+name_const(

"GET /ACP2/index.php?modul=char&id=-999.9%20UNION%20ALL%20SELECT%200x31303235343830303 536
закрыто (int)
Кот ДаWINчи вне форума   Ответить с цитированием
Старый 13.03.2010, 23:20   #35
Кот ДаWINчи
Умный
 
Аватар для Кот ДаWINчи
 
Регистрация: 07.03.2010
Адрес: Северный Урал (60°сш, 60°вд)
Сообщений: 330
Сказал(а) спасибо: 82
Поблагодарили 399 раз(а) в 120 сообщениях
Записей в дневнике: 30
Кот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человек
Отправить сообщение для Кот ДаWINчи с помощью ICQ Отправить сообщение для Кот ДаWINчи с помощью Skype™
По умолчанию

Цитата:
Сообщение от mozilla Посмотреть сообщение
Баг: если на аккаунте уже есть дк, то туда никого больше не перенести.
Это в августе-октябре горячо обсуждалось на старом форуме. К общему мнению тогда не пришли, но решили, что "рассадник" ДК путем переноса делать нельзя.

Последний раз редактировалось Кот ДаWINчи; 14.03.2010 в 19:20.
Кот ДаWINчи вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
mozilla (14.03.2010)
Старый 14.03.2010, 16:16   #36
mozilla
Новичок
 
Регистрация: 09.03.2010
Сообщений: 12
Сказал(а) спасибо: 4
Поблагодарили 9 раз(а) в 4 сообщениях
mozilla На верном пути
По умолчанию

С ним теперь ни одна функция чаредита не работает. Выбираешь действие, нажимаешь выполнить и выскакивает пустая страница.
mozilla вне форума   Ответить с цитированием
Старый 14.03.2010, 19:26   #37
Кот ДаWINчи
Умный
 
Аватар для Кот ДаWINчи
 
Регистрация: 07.03.2010
Адрес: Северный Урал (60°сш, 60°вд)
Сообщений: 330
Сказал(а) спасибо: 82
Поблагодарили 399 раз(а) в 120 сообщениях
Записей в дневнике: 30
Кот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человек
Отправить сообщение для Кот ДаWINчи с помощью ICQ Отправить сообщение для Кот ДаWINчи с помощью Skype™
По умолчанию

Цитата:
Сообщение от mozilla Посмотреть сообщение
С ним теперь ни одна функция чаредита не работает. Выбираешь действие, нажимаешь выполнить и выскакивает пустая страница.
Не стоило вчера работать за компом до полтретьего ночи.

Пока разбирался с ДК... потер вчера пару скобок. Сегодня взял версию с СВН и нормально внес правку.

Коммит 14 уже залит.
Кот ДаWINчи вне форума   Ответить с цитированием
Старый 16.03.2010, 19:57   #38
FWS
Гость
 
Сообщений: n/a
По умолчанию

Спасибо за заботу о кодировках, теперь все работает как надо

Но возник еще вопрос. В управлении учетной записью отсутствует возможность смены адреса электронной почты. В конфиге нет никаких параметров для данной функции. Это ошибка или временная мера?
  Ответить с цитированием
Старый 16.03.2010, 21:49   #39
Кот ДаWINчи
Умный
 
Аватар для Кот ДаWINчи
 
Регистрация: 07.03.2010
Адрес: Северный Урал (60°сш, 60°вд)
Сообщений: 330
Сказал(а) спасибо: 82
Поблагодарили 399 раз(а) в 120 сообщениях
Записей в дневнике: 30
Кот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человек
Отправить сообщение для Кот ДаWINчи с помощью ICQ Отправить сообщение для Кот ДаWINчи с помощью Skype™
По умолчанию

это моя переделка "под себя".

файл modules/acc.php строчки 48 и 49 должны быть такими:

Код:
    <td height="40" align="center" valign="middle"><input name=id type=radio value='2' /></td>
    <td height="40" valign="middle"><?php echo $txt[7]; ?></td>

Последний раз редактировалось Кот ДаWINчи; 16.03.2010 в 22:05.
Кот ДаWINчи вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Старый 17.03.2010, 10:21   #40
Kujbor
Новичок
 
Аватар для Kujbor
 
Регистрация: 13.03.2010
Адрес: Самара
Сообщений: 20
Сказал(а) спасибо: 13
Поблагодарили 2 раз(а) в 1 сообщении
Записей в дневнике: 1
Kujbor На верном пути
По умолчанию

Цитата:
Сообщение от Кот ДаWINчи Посмотреть сообщение
это моя переделка "под себя".

файл modules/acc.php строчки 48 и 49 должны быть такими:

Код:
    <td height="40" align="center" valign="middle"><input name=id type=radio value='2' /></td>
    <td height="40" valign="middle"><?php echo $txt[7]; ?></td>
Не могли бы вы оформить это в виде патча? Наподобие:

PHP код:
---<?php if ($ra_email == '')  echo "<input name=id type=radio value='2' >";
+++<?
php if ($ra_email == '') echo "<img src='images/no.png' align='absmiddle'>";
Чтобы было понятно что менять, а то боюсь запутаться в строках и заменить не то что нужно)))

И еще одно.. При попытке залогиниться получил следующую ошибку:

Цитата:
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at Z:\home\192.168.0.100\www\include\config.php:1) in Z:\home\192.168.0.100\www\include\auth.php on line 9

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at Z:\home\192.168.0.100\www\include\config.php:1) in Z:\home\192.168.0.100\www\include\auth.php on line 9

Warning: Cannot modify header information - headers already sent by (output started at Z:\home\192.168.0.100\www\include\config.php:1) in Z:\home\192.168.0.100\www\include\auth.php on line 18
Интуитивно с включением некоторого количества памяти думаю что проблема в отсутствии/отключенности какого-то модуля в пхп, вот только какого совсем не помню.. А может и не в этом дело.. Помогите пожалуйста.

Последний раз редактировалось Kujbor; 17.03.2010 в 11:27.
Kujbor вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[10288] Unsummon pet if pet direct control spell expire out of visibility range from owner. newsbot CMaNGOS Commits 0 30.07.2010 04:14
[10186] Fixed visibility constant refresh problem with pet direct control spells. newsbot CMaNGOS Commits 0 13.07.2010 01:26
[patch] Mind Control PSZ Отвергнутые патчи 3 14.06.2010 10:54
[10053] Use UNIT_STAT_CONTROLED for mark unit state under direct player control. newsbot CMaNGOS Commits 0 14.06.2010 09:30


Текущее время: 02:26. Часовой пояс GMT +3.


ru-mangos.ru - Русское сообщество MaNGOS
Главная цель проекта MaNGOS - обучающая, поэтому разрешается использовать исходный код и собранную программу только для образовательных целей.
Вы не можете использовать MaNGOS в коммерческих целях, а также не разрешается устанавливать публичные серверы на базе MaNGOS.
Любое копирование материалов, информации в любом виде без указания источника - форума Ru-MaNGOS будет считаться нарушением авторских прав и нарушением Уголовного Кодекса РФ, ст. 146 ст. 147.
Перевод vBulletin: zCarot