Безопасность WAP-ENGINE
1.
Владимир (22.08.2010 / 16:06)
Ребята. Здравствуйте. У меня есть надежда только на тех, кому не безразлично существование движка WAP-ENGINE. Надеюсь вы поймете.
Объявился один хакер, который пишет, что нашел несколько серьезных уязвимостей и просит неимоверную сумму денег

Но я движок делаю бесплатно. Я не могу платить за это. Уважаемые кодеры, прошу вас, у кого есть возможность и желание, помогите пожалуйста в поиске уязвимостей.
Взамен предлагаю размещение вашей ссылки у себя на главной, причем на всё время сотрудничества. Если есть хак комманды, то можно с вами сотрудничать. Прошу вас, помогите пожалуйста. Я сам в безопасности скриптов мало знаю. Поэтому обращаюсь к вам.
2.
Удаленный (22.08.2010 / 16:09)
почему ты сразу так хакеру поверил?
3.
Владимир (22.08.2010 / 16:24)
Ну я ещё не поверил. Но. На ачате уже выложили один експлоит. Я закрыл уже ту уязвимость. Но думаю что есть ещё. Поэтому очень надеюсь на помощь наших хакеров, и хак комманд.
4.
finall2 (22.08.2010 / 17:05)
Ну пусть ломают.
Потом по логам посмотришь и закроешь.
5.
Андрюха (22.08.2010 / 17:07)
У тебя ток бетка,сломают так сломают,двиг же халява
6.
Владимир (22.08.2010 / 17:07)
Ну да. Этот вариант я пока только и использую. Эхх. Блин, ктото делает, а ктото ломает
7.
Владимир (22.08.2010 / 17:09)
5.
Wapruks, ага, халява, а этот хакер миллионы просит. Я с ним общался, думал он поймет. так нет. Пошел он кому то там продавать эти дыры

Жду пока этот ктото начнет ломать мне офф сайт
8.
Андрюха (22.08.2010 / 17:16)
Зайди в аську,вопрос есть
9.
ramzes (22.08.2010 / 17:30)
ну пусть ломает, типа требуй доказательств. потом логи смотри и крой дыры если они есть.
10.
Studentsov (22.08.2010 / 17:52)
Что за хакер, где сообщения на ачате и т.п.
11.
Антон (22.08.2010 / 17:57)
хакер на офф саит завалил, говорит я нашел уязвимости, продам за 4к естесн автор несогласился.
12.
Studentsov (22.08.2010 / 18:15)
По-мойму развести хотят ТС
13.
Studentsov (22.08.2010 / 18:50)
Ох блин, у меня у самого эта уязвимость есть
Даже сессии надо фильтровать... или собственную папку для них использовать
14.
Андрюха (22.08.2010 / 19:12)
Это еще шелл надо залить
15.
Studentsov (22.08.2010 / 19:21)
Дык папка-то открыта для записи
16.
Nu3oN (22.08.2010 / 21:31)
"Что хотел взломать мой сайт?"
17.
Владимир (22.08.2010 / 21:43)
OK. Спасибо. Ту дыру с сессиями я уже прикрыл. Развод? Возможно, потому что как вы мне говорили, я его послал и провоцировал на взлом. Либо он умный и не хочет ломать, либо он просто хотел кинуть.
18.
Владимир (22.08.2010 / 21:44)
ZiGR_mopedoos (22 Августа 2010 / 18:39)
Фиртратор могу подогнать.
Конечно буду рад всему, что вы мне предложите и посоветуете. Если что приму твой фильтратор.
И буду гуглить по наиболее распространенным ошибкам.
19.
Владимир (23.08.2010 / 10:09)
УУуу. Закрыл сегодня ППЦ какую стремную дыру. Можно было выполнять произвольный код. Эхх. Даа. Упустил я её
20.
Studentsov (23.08.2010 / 12:18)
Поделись с нами, что за дыра
21.
Ant0ha (23.08.2010 / 13:04)
CHUMA, скака читаю твои посты и с каждым разом всё больше убеждаюсь, что ты и вправду чума)
22.
finall2 (23.08.2010 / 13:13)
26.Ага,для скриптов
23.
Владимир (23.08.2010 / 15:23)
Studentsov_нет_ничо1 (23 Августа 2010 / 12:18)
Поделись с нами, что за дыра
Там была проблема в функции антимата. Там мат на звездочки заменялся. А у меня данные так хранятся, что если их правильно не фильтровать, то будет попа. Вот, везде я это исправил. а в этом антимате даже и не подумал. Вот когда он писал в личку мат а потом нужный символ и eval('code'); то как бы в личке образовывалась эта дыра.
PS. Вот я олень.

Ну на ошибках учатся
24.
Владимир (23.08.2010 / 15:24)
26.
Ant0ha, это критика или как?
25.
Ant0ha (23.08.2010 / 16:32)
а, хз, мысли в слух =)
26.
Владимир (23.08.2010 / 19:02)
30.
Ant0ha, ну да ладно. С меня многие фигеют

да я не отрицаю что немного с прибабахом ;)
27.
Владимир (23.08.2010 / 19:04)
А по делу. Если вдруг всё таки кто сможет поковырять код, я буду рад выслушать все ваши мысли и ругания в мою сторону по поводу безопасности скрипта
28.
KOZZ (24.08.2010 / 08:24)
32, да там и просто так есть что посоветовать вроде бы
29.
Удаленный (24.08.2010 / 11:29)
Чума возрождает былой 2005 год))
30.
Удаленный (24.08.2010 / 11:30)
Смешно читать, как некоторые не знающие историю двига, высираются на тему рекламы и ***двига, этот двиг начинал практически с мотором и тогда не было много движков.
31.
Иосиф Джугашвили (24.08.2010 / 13:31)
Поправлю.. .тогда по пальцам можно было пересчитать стоющие двиги
32.
Владимир (24.08.2010 / 15:10)
Влад Турчинский (24 Августа 2010 / 08:24)
32, да там и просто так есть что посоветовать вроде бы
Да, ты прав. Многие советы я учел и потихоньку убираю "какукод"
ЗЫ. Насчет обсирания хочу сказать, обсирают я заметил в основном те, кто недавно пришел в вап, либо те кто реально чтото может сказать и привести факты. Так вот я фильтрую срачь и учитываю только ту критику, которую делают именно те, кто знает что сказать. И я всегда уважаю критику, тем более обоснованную ;)
33.
Studentsov (24.08.2010 / 17:53)
Если честно, то подобная структура движка себя изжила, и автор ничего с этим делать не собирается. Это очень печально, видеть спагетти-код в "новом" движке. То же и к ротору относится
34.
WCO (24.08.2010 / 18:19)
Warning: session_start() [function.session-start]: The session id contains illegal characters, valid characters are a-z, A-Z, 0-9 and '-,' in /[длинный путь] on line 18.
Автор, нужно учится новому, я зашел на главную, сделал несколько движений мыши, нажал пару кнопок, и вот - пути уже у нас
35.
delete (24.08.2010 / 18:32)
39.
WCO, обычному юзеру как бы нех лазить где ненадо))) а хацкеры были всегда..
36.
WCO (24.08.2010 / 18:35)
40, это ты к чему?
я показал пример раскрытия путей.
37.
delete (24.08.2010 / 18:44)
WCO (24 Августа 2010 / 18:35)
40, это ты к чему?
я показал пример раскрытия путей.
ну это к тому, что на сайте ищут уязвимости только хацкеры

но это отнють не показатель качества сайта

так можно каждый день улутшать защиту и каждый день новый хацкер найдет еще один способ обойти её

а когда ж тогда работать и над функционалом работать
38.
Владимир (24.08.2010 / 21:58)
Да ладно не ругайтесь ;)
Я сам к раскрытию путей пока отношусь неочень, но всё равно если говорят заделываю. Мало ли

Спасибо за помощь и отзывы.
39.
WCO (24.08.2010 / 22:12)
43.
CHUMA, закрой уже доступ юзерам в папку /data/ :overlook:
40.
Дмитрий (25.08.2010 / 09:40)
чума, извини, но рано ты стал продолжать писать двиг, тебе надо бы подучиться ещё
41.
Владимир (25.08.2010 / 09:47)
ПьяНый Ангел (25 Августа 2010 / 09:40)
чума, извини, но рано ты стал продолжать писать двиг, тебе надо бы подучиться ещё
возможно. Не отрицаю. Но я никогда не учился специально, сколько я раньше писал на php я учил всё по мере необходимости. Ну как бы понятней сказать, я писал скрипт и читал мануалы, в тот момент, когда сталкивался с проблемой. И так до сих пор. Может это и проблема, но такой у меня подход.
42.
KOZZ (25.08.2010 / 10:46)
46, аналогично учу )
43.
Удаленный (25.08.2010 / 11:32)
советую защиту от ddos и dos атак поставить!
44.
Удаленный (25.08.2010 / 11:54)
походу уже ddos - анули

быстрей защиту ставь
45.
KOZZ (25.08.2010 / 12:00)
49, ты хоть знаешь что такое ддос???
46.
Удаленный (25.08.2010 / 12:17)
просто dos - анули
Термин DDoS-атака происходит от английской аббревиатуры Distributed Denial of Service, что можно перевести как «распределенный отказ в обслуживании». Как следует из названия, целью данной атаки является отказ в обслуживании, то есть нарушение нормальной работы веб-сервера. Основной принцип DDoS-атак заключается в создании массированного потока запросов к сетевому адресу, которые приводят к тому, что, веб-сервер перестает справляться с нагрузкой. В результате веб-ресурс становится недоступен для посетителей.
47.
KOZZ (25.08.2010 / 12:21)
51, а с чего ты взял что его "dos - анули"
48.
Удаленный (25.08.2010 / 12:22)
52.
Влад Турчинский, заходил не доступный был( ща работает
49.
KOZZ (25.08.2010 / 12:28)
53 , лол
50.
Удаленный (25.08.2010 / 12:34)
54.
Влад Турчинский,
51.
Гоги (25.08.2010 / 13:28)
_SD_ (25 Августа 2010 / 12:17)
просто dos - анули
А когда домен не делегирован или сервер выключен, тоже "дос анули"?
А "анули" это что за зверь?
52.
Владимир (25.08.2010 / 14:03)

ну ддосить уже пытались несколько раз, но это было месяц может назад. Вроде норм. Но защиту от Ддоса надо. Пока еще не совсем вкуриваю как её реальзовать, с точки зрения алгоритма. Если что, поделитель алгоритмом, а код я сам уже реализую ;)
53.
WCO (25.08.2010 / 14:14)
57, рабочую защиту в скрипте не сделаешь.
Нужно на уровне сервера подшевелиться
54.
Владимир (25.08.2010 / 14:42)
Ну я сейчас просто сделал чтоб, если запрос был быстрее прошлого на 0.2сек, то срабатывает защита (не выводится содержимое сайта и написано, что слишком частые запросы и ссылка "повторить"). В общем если разница между запросами меньше 0.2сек, не зависимо от IP и т.д. Как думаете, этого времени достаточно? Или нужно интервал уменьшить, чтоб часто не срабатывало.
55.
Дмитрий (26.08.2010 / 10:01)
CHUMA (25 Августа 2010 / 09:47)
возможно. Не отрицаю. Но я никогда не учился специально, сколько я раньше писал на php я учил всё по мере необходимости. Ну как бы понятней сказать, я писал скрипт и читал мануалы, в тот момент, когда сталкивался с проблемой. И так до сих пор. Может это и проблема, но такой у меня подход.
так делают многие, я тоже так учился и учусь, но про защиту всё таки я читал, и тебе советую
56.
MODIFIKATOR (27.08.2010 / 09:54)
мдо уж... серьезный двиг получится, когда кодер кто его пишет 0 в безопасности...
уверен этот "хакер" нашел тупо скулю и раскрутил ее... =\
Профессиональный аудит безопасности сайта от команды Antichat обратись сюда, но тут платно... зато проверят тебе реальные ад***ы сетевой безопасности... после них тебе нечего будет бояться)
Либо создай тему в разделе
Проверка на уязвимости там помогут бесплатно.
57.
Владимир (27.08.2010 / 11:17)
61.
17а3иТиФф, спасибо большое. Я конечно не совсем НОЛЬ, основы чуть чуть знаю. Но этого совсем мало
58.
Удаленный (27.08.2010 / 11:31)
убери "()<> что б эти символы фильтровались.) то есть не выводило)
+ что б пользователь мог только 1 ссылку добавить
59.
Владимир (27.08.2010 / 12:25)
_SD_ (27 Августа 2010 / 11:31)
убери "()<> что б эти символы фильтровались.) то есть не выводило)
+ что б пользователь мог только 1 ссылку добавить
Зачем их убирать? Они нужны. Даже если ты эти символы напишешь, то они всё равно не будут работать ;) они же переводятся в html сущности. Где ты видел чтоб эти символы делали чтоб они не выводились?
60.
Удаленный (27.08.2010 / 12:26)
64.
CHUMA, точно)
61.
Удаленный (27.08.2010 / 12:26)
64.
CHUMA, но что б пользователь мог только 1 ссылку добавить
! это сделай)
62.
WCO (27.08.2010 / 12:34)
61.
17а3иТиФф, насколько помню, ангина на файлах.
тут не до скулей
63.
Apeccc (27.08.2010 / 12:37)
67.
WCO, верно помнишь
64.
Владимир (27.08.2010 / 12:38)
WCO (27 Августа 2010 / 12:34)
61. 17а3иТиФф, насколько помню, ангина на файлах.
тут не до скулей
Да да. Но за ссылочки ему спасибо
65.
ramzes (27.08.2010 / 22:58)
АнтиДдос вот тебе пример алгоритма
66.
WCO (27.08.2010 / 23:17)
скорее, анти
дос
67.
ramzes (27.08.2010 / 23:24)
я копировал не исправляя, когда то тоже пример нужен был))
68.
Владимир (27.08.2010 / 23:36)
Огромное спасибо. Буду ковырять
69.
MODIFIKATOR (28.08.2010 / 01:28)
_SD_ (27 Августа 2010 / 11:31)
убери "()<> что б эти символы фильтровались.) то есть не выводило)
+ что б пользователь мог только 1 ссылку добавить
НИЧЕГО фильтровать не надо. СУБД - на то она и СУБД, а не *** какая-то, чтобы нормально любые данные принимать.
Наша задача - просто правильно эти данные преподнести.
Защищаться надо так(применительно к PHP и mysql):
1) Если поле в базе числовое, то: (int) (ну или intval()). Можно по модулю взять при использовании в LIMIT, но это не секурити-дырка.
2) Если текстовое, то просто mysql_real_escape_string()
3) Всякие magic quotes и подобные затычки отключены. Кто не отключил - ССЗБ(что это означает - смотрите на LOR'е)
И ВСЕ! Больше ничего не надо. Ибо запрос испортить левыми данными нельзя.
Повторю еще раз: НИКАКИХ ФИЛЬТРАЦИЙ.
LIKE/RLIKE/AGAINST/etc - это частный случай, и рассматривается отдельно.
70.
Владимир (28.08.2010 / 02:34)
74.
17а3иТиФф, это мне на будущее будет полезно, когда я буду делать версию двига на мускуле ;) спасибо
71.
Studentsov (28.08.2010 / 12:36)
17а3иТиФф (28 Августа 2010 / 01:28)
НИЧЕГО фильтровать не надо. СУБД - на то она и СУБД, а не *** какая-то, чтобы нормально любые данные принимать.
Наша задача - просто правильно эти данные преподнести.
Защищаться надо так(применительно к PHP и mysql):
1) Если поле в базе числовое, то: (int) (ну или intval()). Можно по модулю взять при использовании в LIMIT, но это не секурити-дырка.
2) Если текстовое, то просто mysql_real_escape_string()
3) Всякие magic quotes и подобные затычки отключены. Кто не отключил - ССЗБ(что это означает - смотрите на LOR'е)
И ВСЕ! Больше ничего не надо. Ибо запрос испортить левыми данными нельзя.
Повторю еще раз: НИКАКИХ ФИЛЬТРАЦИЙ.
LIKE/RLIKE/AGAINST/etc - это частный случай, и рассматривается отдельно.
Чушь, для такого движка лучше сразу всё фильтровать. Нагрузка существенно меньше
URL:
https://visavi.net/topics/12860