Перейти к содержанию

Quicksdk

Актив
  • Постов

    612
  • Зарегистрирован

  • Посещение

Активность репутации

  1. Лайк
    Quicksdk отреагировална пост _Dark_ в Invision Power Board 3.4.1 (ENG) Nulled by IPBmafia.Ru   
    Название: Invision Power Board 3.4.1 (ENG) Nulled by IPBmafia.Ru
    Добавил: _Dark_
    Добавлен: 24 Дек 2012
    Категория: Релизы IP.Board

    Invision Power Board 3.4.1 Final / Nulled by IPBmafia.ru


    Команда проекта IPBmafia.Ru рада представить вам последнюю на данный момент версию IP.Board — 3.4.1.
    Обобщающая информация о ветке IP.Board 3.4 представлена в версии 3.4.0.





    IPS
    Нововведения

    Данное обновление является техническим и не несет в себе нововведений, за исключением исправлений найденных ошибок.


    IPBmafia.Ru

    Информация о релизе


    Версия: 3.4.1
    Язык интерфейса: английский
    Статус: активация не требуется
    Автор: _Dark_


    Краткая информация о новом механизме снятия лицензии (используется начиная с версии 3.4.0)





  2. Лайк
    Quicksdk отреагировална пост Respected в Иконки для команды форума   
    Название: Иконки для команды форума
    Добавил: Respected
    Добавлен: 20 Июн 2012
    Категория: Дизайн и графика IP.Board

    Иконки для команды модераторов и администраторов форума!


  3. Лайк
    Quicksdk отреагировална пост _Dark_ в Жалоба на _DARK_   
    Дал вам еще 2 предупреждения + по одному дню read-only за каждый нарушенный пункт Справедливость должна торжествовать! За соблюдение правил форума! Нет неосмысленным сообщениям! Даешь блокировку за нарушения!
    Искренне ваш борец за справедливость, _Dark_, 2012
  4. Лайк
    Quicksdk отреагировална пост _Dark_ в Жалоба на _DARK_   
    Тот скриншот, который вы вставили в сообщение — мой. Я вам не разрешал его трогать.
     
    Итак, давайте поговорим.
     
    Сегодня днем я заметил, что от автора темы оставлено 7 сообщений за очень короткий промежуток времени. Увидев эти сообщения я сделал вывод, что это простая попытка набрать сообщения. Ниже прикладываю содержание этих сообщений на всеобщее обозрение.



     
    Мною эти сообщения были удалены, пользователь устно предупрежден по пункту цитирую пункт правил:
     
     
     
    В данном случае это следующая вырезка из этого пункта:
     
     
     
    С радостью отвечу на другие вопросы.
  5. Лайк
    Quicksdk отреагировална пост Respected в Набор команды форума IPBMafia.ru   
    Доброго времени суток, уважаемые пользователи нашего форума. Как и обещал, в конце реорганизации форума провожу набор к нам в команду.  
     
    Сразу хочу сообщить, что проделанная вами работа в команде никак не оплачивается, т.е. вы помогаете нам абсолютно безвозмездно (если не считать полный доступ к премиум форуму ).
     
    На данный момент нам требуются:


    1) Uploader (1 - 2 пользователя)
    Обязанности: своевременное пополнение нашего файлового архива согласно действующим правилам по добавлению файлов в файловый архив.
     
    2) Модератор форума (1 - 2 пользователя)
    Обязанности: следить за соблюдением требований выявлять и предотвращать нарушения. Наказывать пользователей. Помечать темы Отвеченными в форуме Техническая поддержка. В дальнейшем есть возможность получить группу Супер Модератор
     
    3) Локализатор (2 - 3 пользователя)
    Обязанности: русифицировать хуки и компоненты.  
    4) Тех. поддержка
    Обязанности: поддержка пользователей по техническим вопросам.


    На этом пока всё. Подача заявки должна выглядеть таким образом:
     
    1) Имя
    2) Возраст
    3) Адрес форума
    4) На какую должность претендуете
     
    Вступить в команду могут пользователи, набравшие 10 сообщений на форуме. После утверждения нами вы получаете испытательный срок - 2 недели. По истечению срока вы переводитесь в основную группу со всеми функциями. Перед подачей заявки подумайте, сможете ли вы выполнять данные обязанности, будет ли на хватить свободного времени. 
     
    Команда форума будет иметь доступ к нашему премиум форуму, а так же другим дополнительных плюшкам  
     
    Удачи!
  6. Лайк
    Quicksdk отреагировална пост Pashok(one) в С Днём рождения, _Dark_   
    С днём рождения _Dark_ !!! (с тебя тортик)
  7. Лайк
    Quicksdk отреагировална пост Pashok(one) в Взлом сайта - обновите ваш браузер Google Chrome   
    У меня тоже самое!!! на двух сайтах (на трёх) только когда с телефона входишь.
  8. Лайк
    Quicksdk отреагировална пост _Dark_ в Invision Power Board 3.4.0 (ENG) Final Release / Nulled v2 by IPBmafia.Ru   
    Название: Invision Power Board 3.4.0 (ENG) Final Release / Nulled v2 by IPBmafia.Ru
    Добавил: _Dark_
    Добавлен: 28 Ноя 2012
    Категория: Релизы IP.Board

    Invision Power Board 3.4.0 Final / Nulled by IPBmafia.ru

    Представляем вам последнюю версию IP.Board на данный момент — 3.4 от команды проекта IPBmafia.Ru!



    Информация от IPS
    Что нового

    Компонент IP.Seo теперь является частью IP.Board
    Улучшения редактора текста
    Новый компонент — IPS Connect
    SEO оптимизация
    Интеграция с VigLink
    Новая функция — Лучший ответ
    Улучшения интерфейса Админ-Центра
    Интеграция с Mandrill
    Различные небольшие изменения
    CDN сервис от IPS
    Улучшения анти-спама

    Внимание владельцам IP.Board <= 3.2.x

    С выходом IP.Board 3.4 поддержка следующих продуктов прекращается:
    IP.Board 3.2.x
    IP.Blog 2.5.x
    IP.Gallery 4.x
    IP.Downloads 2.4.x
    IP.Content 2.2.x
    IP.Chat 1.3.x
    IP.Nexus 1.4.x

    Само собой поддержка более ранних версий уже закончилась.
    Однако патчи безопасности будут выпускаться до конца 2013 года.

    Информация от IPBmafia.Ru

    Информация о релизе
    Версия: 3.4.0
    Язык интерфейса: английский
    Статус: активация не требуется
    Автор: _Dark_

    Важные замечания
    Эта версия серьезно отличается от предыдущих версий. На данный момент не заявлено о русификации IP.Board 3.4, поэтому обновлять русифицированные версии на эту крайне не рекомендуется. Кроме того, способ русификации мной не подходит для этой версии.




  9. Лайк
    Quicksdk отреагировална пост podvorie в Cтиль Motion [скоро]   
    У тебя весь стиль в оттенках серого, внимание вопрос: -Откуда фиолетовый? Глаз режет. Ищи подходящий оттенок.
  10. Лайк
    Quicksdk отреагировална пост voron333 в Как я взлом сайта расследовал.   
    Только что чистил форум от этого говна... Помимо описанного тут, на версии 3.3.4 эти деятели еще поковырялись в базе в таблице `core_hooks_files` подменили путь к хукам
    в boardIndexRecentTopics вел к тому самому файлу photo-128
    в boardIndexStatusUpdates вел куда-то в темпы - войти в папку не получилось из-за ограничений со стороны хостера.

    В содержимом hooks_source в обоих хуках был прописан тот же код, что и в файле с картинкой №128.

    Само собой, файлы хуков, лежащие в папке hooks - также имели тот же самый код.

    На форуме версии 3.1.4 такого не было - только photo-128 и куча какашек в cache.
  11. Лайк
    Quicksdk отреагировална пост Respected в Вирус на форуме IP.Board   
    Итак, недавно наш форум столкнулся с фреймом, который антивирусы посчитали за вирусную ссылку. Так как это мой первый опыт с вирусом на сайте/форуме, то я его обнаружил не так быстро, как мне хотелось..

    Поделюс опытом удаления 'плохого' скрипта с форума.

    Как работал фрейм? Очень просто, при загрузке страницы, подгружающей заражённый яваскрипт, он активировался при малейшем движении курсором мышки и подгружал яваскрипт с какого-то постороннего сайта, в моём случае это был ___constructivehell.is-a-cubicle-slave.com/g/1351559130384.js, что делает этот срипт - не известно.
    Названиние подгружаемого скрипта генерировалось автоматически.

    Первое, что пришло мне на ум - сделать резервную копию форума и слить её на компьютер, а там уже разными прогами искать вирус по тексту в файлах.... Что я и сделал. Скачав копию форума, я начал искать название ссылки, которую блокировал антивирус, во всей копии с помощью программы Folder Find Text, но все мои попытки были напрасными.. Ссылка не находилась.

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

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

    Результаты поиска меня просто шокировали: около 200 яваскриптов было заражено этим кодом. Вот как он выглядит в зашифрованном виде:


  12. Лайк
    Quicksdk отреагировална пост _Dark_ в Предупреждение владельцам форумов, которые не устанавливали патч безопасности   
    Публикую эту тему здесь, т.к. она действительно важная.

    В публичном доступе был найден эксплоит для IP.Board начиная от версий 3.1 и заканчивая 3.3.4 включительно, который может быть использован для внедрения стороннего PHP кода в ваш форум.

    Патч от IPS был выпущен после публикации этого эксплоита, поэтому сейчас огромное количество форумов подвержено взлому.
    мной случай взлома сайта является ничем иным как результат использования этой уязвимости.

    Всем владельцам форумов на IP.Board необходимо установить ,?do=embed' frameborder='0' data-embedContent> в противном случае вам форум может быть подвергнут взлому.

    Внимание!
    Проверьте директорию /cache/ которая находится в корне вашего форума. Если в ней находится файл sh.php (это стандартное имя файла, который создается в результате использования эксплоита) — ваш сайт подвергся взлому.
    Вам необходимо срочно поменять пароль для подключения к базе данных, а так же запросить у хостера список PHP файлов которые были изменены за последние 7 дней.
    Необязательно появление новых файлов, могут быть отредактированы системные файлы IP.Board.
    После этого вы можете обратиться ко мне, отправив список измененных файлов и свои контактные данные, для получения помощи с восстановлением форума.
    Обязательно установите (в него входит и предыдущий патч) для обеспечения должной защиты вашего форума.
  13. Лайк
    Quicksdk отреагировална пост _Dark_ в Как я взлом сайта расследовал.   
    Если вы зашли сюда — будьте готовы к огромному количеству букв, различных терминов, непонятного кода и т.п.

    Началось все с темы.


    Fatal error: Cannot redeclare ololololololo1() (previously declared in /home/o/ХХХ/pro-ucheba.com/public_html/uploads/profile/av-128.jpg(33) : regexp code(1) : eval()'d code:2) in /home/o/ХХХ/pro-ucheba.com/public_html/uploads/profile/photo-128.jpg(33) : regexp code(1) : eval()'d code on line 3
    Как мы видим, ошибка незаурядная. Само наличие "ololololololo1" уже говорит о многом, а учитывая то, что все это происходит в файле av-128.jpg — вообще интересно. В общем то, только по вот этим признакам уже можно говорить о том, что сайт подвергся взлому. Первым делом были взяты эти два файла и пока отложены на просторы рабочего стола. Т.к. обсуждать все это на форуме было неудобно — списались с в ICQ. Для начала хотелось выяснить, кто это сделал. Файл uploads/profile/av-128.jpg является аватаркой пользователя с ID 128 (пока не будем говорить о том, как вообще в аватарке оказался PHP код), казалось бы нарушитель найден, но проблема в том, что владелец сайта чистил БД от старых записей и аккаунт пользователя удален. Ладно, к черту тогда личность взломщика, давайте разбираться, что произошло. Первое что приходит в голову — запросить у хостера список измененных .php файлов за последнюю неделю. Запрашиваем. Хостер предоставить их не может, но зато он нам любезно включает SSH доступ (это действительно хорошая черта тех.поддержки хостинга — они поняли в чем дело и без лишних разговоров предоставляют нам то, что в наш тарифный план не входит). Отлично, SSH у нас есть. При помощи простой команды find /public_html/ -type f -iname "*.php" -mtime -7[/code] (полный путь к директории вырезан за ненадобностью) получаем: [spoiler] [code]
    public_html/cache/cache_clean.php
    public_html/cache/globalCaches.php
    public_html/cache/furlCache.php
    public_html/cache/skin_cache/cacheid_1/skin_register.php
    public_html/cache/skin_cache/cacheid_1/skin_profile.php
    public_html/cache/skin_cache/cacheid_1/skin_online.php
    public_html/cache/skin_cache/cacheid_1/skin_nexus_support.php
    public_html/cache/skin_cache/cacheid_1/skin_editors.php
    public_html/cache/skin_cache/cacheid_1/skin_shoutbox.php
    public_html/cache/skin_cache/cacheid_1/skin_stats.php
    public_html/cache/skin_cache/cacheid_1/skin_upload.php
    public_html/cache/skin_cache/cacheid_1/skin_emails.php
    public_html/cache/skin_cache/cacheid_1/skin_promenu.php
    public_html/cache/skin_cache/cacheid_1/skin_ipseo.php
    public_html/cache/skin_cache/cacheid_1/skin_login.php
    public_html/cache/skin_cache/cacheid_1/skin_mod.php
    public_html/cache/skin_cache/cacheid_1/skin_search.php
    public_html/cache/skin_cache/cacheid_1/skin_shoutbox_hooks.php
    public_html/cache/skin_cache/cacheid_1/skin_boards.php
    public_html/cache/skin_cache/cacheid_1/skin_gms.php
    public_html/cache/skin_cache/cacheid_1/skin_messaging.php
    public_html/cache/skin_cache/cacheid_1/skin_legends.php
    public_html/cache/skin_cache/cacheid_1/skin_cp.php
    public_html/cache/skin_cache/cacheid_1/skin_post.php
    public_html/cache/skin_cache/cacheid_1/skin_mlist.php
    public_html/cache/skin_cache/cacheid_1/skin_modcp.php
    public_html/cache/skin_cache/cacheid_1/skin_global_other.php
    public_html/cache/skin_cache/cacheid_1/skin_reports.php
    public_html/cache/skin_cache/cacheid_1/skin_global.php
    public_html/cache/skin_cache/cacheid_1/skin_nexus_clients.php
    public_html/cache/skin_cache/cacheid_1/skin_topic.php
    public_html/cache/skin_cache/cacheid_1/skin_help.php
    public_html/cache/skin_cache/cacheid_1/skin_nexus_emails.php
    public_html/cache/skin_cache/cacheid_1/skin_ucp.php
    public_html/cache/skin_cache/cacheid_1/skin_global_comments.php
    public_html/cache/skin_cache/cacheid_1/skin_nexus_payments.php
    public_html/cache/skin_cache/cacheid_1/skin_forum.php
    public_html/cache/cache.php
    public_html/cache/aq.php
    public_html/cache/sd2178.php
    public_html/hooks/ipSeoPingTopics_9be3a8f6d34784b16a253af2060440da.php
    public_html/hooks/ipSeoAcronymsEditor_f29ecb558858bb04bf957fb505093329.php
    public_html/hooks/ipSeoMeta_1dfa8b1e2915158bcd0bc2ca20a90f4f.php
    public_html/hooks/dp3_fi_boardsClassActionOverloader_5fee7a7dd42c37cd850eba64e519789d.php
    public_html/hooks/cstopspamreg_cea6e736e42ab14fa64581f28c8c08d1.php
    public_html/hooks/passwordStrength_skin_7b219a756db0cc9bcbf78cb9b17ad92f.php
    public_html/hooks/ipSeoGuestSkin_ceb6061092c92fc4b36e682aabaa5c96.php
    public_html/hooks/globalProMenuRemovalTool_f73b5f48f7515d65c93216498d309aac.php
    public_html/hooks/cstopspamreg_bstats_99fac0fad97daf26fb18c4e61a46ed90.php
    public_html/hooks/topicosrecentes_ucp_8eced785d6487592b493fc683e778f68.php
    public_html/hooks/dp3_fi_forumsClassActionOverloader_0317c8e4a356386124447e57d90a0188.php
    public_html/hooks/globalProMenuJava_1e4b91655304505004f3429052bc0561.php
    public_html/hooks/ipSeoAcronymsBbcodeParser_46716b0eace16d346a426516a5a550ca.php
    [/code] [/spoiler] В глаза бросается [code]
    public_html/cache/aq.php
    public_html/cache/sd2178.php
    (названия файлов изменены, т.к. пока незачем их публиковать всем).
    [/code] (файл [font=courier new,courier,monospace]public_html/cache/cache.php[/font] я заметил только когда писал это, с ним тоже разберемся). Первый файл оказывается скриптом, значение которого я так и не понял. Второй файл имеет интересное содержание. После небольшой пробежки по Google оказываемся здесь. Все понятно, бэкдор из паблика. Удалять эти файлы как-то банально, сделаем по другому — заставим эти файлы работать на нас. Я не буду приводить код, скажу только, что IP-адрес, а так же информация о системе каждого, кто откроет эти файлы будут сохранены. С этим разобрались. Но очевидно, что "центр" взлома находится не здесь, а вон в тех аватарках с PHP кодом. Нам нужно определить, что этот код делает, чтобы установить, для чего был осуществлен взлом. Для начала берем первый файл — [b]av-128.php[/b]. Открываем его. Смотрим. Это кошмар. Во-первых, сразу видно, что код обфусцирован. Во-вторых, начисто нет форматирования кода. Начинаем с малого, приведем код к читаемому виду, в плане переносов строк. Для этого воспользуемся вот этим прекрасным сервисом, который отформатирует код за нас. Прогоняем код. Получаем результат, смотрим. Красота. Код стал более читабелен, мы можем сразу провести небольшой анализ. В коде нет зарезервированных слов PHP (if, function, for, while, и т.д.). Значит код в том виде, в котором он сейчас использует только стандартные функции PHP, не определяя свои. Из первого пункта получаем, что код обфусцирован несколько раз (почему? Потому что свои функции у скрипта все таки есть, помните ошибку, с которой все начиналось?). Скорее всего деобфусцировать код автоматически не выйдет. Поискав в Google сервисы для деобфускации становится понятно, что все что там есть — ерунда. Ну что ж, будем делать все самостоятельно. [size=5][b]Этап 1.[/b][/size] Бегло взглянув на код и обнаружив множество текстовых строк, а затем одну, которая все их объединяет [code]
    $v3IWiBF = // и здесь все эти текстовые строки
    [/code] приходим к выводу, что на данной стадии в коде минимум логики. Нужно найти переход с этого уровня кода на более низкий. Смотрим где же используется эта переменная [font=courier new,courier,monospace]$v3IWiBF[/font] с огромным текстом внутри. В коде таких упоминаний одно, это [code]
    $lGp2BqP = $Mb8Ze($v3IWiBF, $hFl0_($Jj1U($TjMGm), $Jj1U($VtLjYNP)));
    [/code] Ладно, смотрим где встречается собственно [font=courier new,courier,monospace]$lGp2BqP[/font], а это — последняя строка, вот [code]$d1QZk($phl6yJ, $r6Q7D($lGp2BqP), $PJf4o9);[/code] Значит переход на более низкий уровень кода находится на последней строке, это означает, что код обфусцирован [i]последовательно[/i], т.е. весь код (а не его отдельные части) был обфусцирован несколько раз. Это упрощает работу, значит нам тоже разбирать код можно последовательно, не пытаясь найти места, с которых начать. [size=5][b]Этап 2.[/b][/size] Есть такие задачки для маленьких детей, где нарисованы какие-то непрерывные линии, их начала и концы указаны и нужно найти какая линия к чему приведет, причем начал больше чем концов. Легче всего это решить пойдя по этим линиям с конца, вот и мы поступим так же. У нас есть функция, которая ведет к переходу на более низкий уровень кода — эта та самая последняя строчка [code]$d1QZk($phl6yJ, $r6Q7D($lGp2BqP), $PJf4o9);[/code] Будем работать над ней. Смотрим на образование названия самой функции: [code]
    $oWHh = "\160\162";
    $zYdUyk = 'eg';
    $XqVM = "\137\162";
    $PU0b = "\145\160";
    $I0Tf = "\154\141";
    $qGX8ht = "\143\145";
    $d1QZk = $oWHh . $zYdUyk . $XqVM . $PU0b . $I0Tf . $qGX8ht;[/code] Через секунд 10 раздумий в голову приходит, что 160, 162, 137 и т.д. — это ASCII коды и о них нам рассказывали где-то в школе. Ищем таблицу ASCII кодов, открываем, ищем число 160. Находим, это символ [b][size=4]á[/size][/b]. В PHP нет стандартных функций в названиях которых используются такие символы (а на данном уровне кода у скрипта тоже никаких своих функций нет, помните мы выше это выяснили). Значит 160 нам не подходит, но ведь в коде он используется. Вспоминаем синтаксис PHP, черт, ведь там код символа указывается в восьмеричной системе исчисления. Смотрим тогда колонку [i]Oct[/i] (Octal — восьмеричная система исчисления). Находим, это латинская буква [b]p[/b]. Подходит! Смотрим дальше. 162 — это буква [b]r[/b], получаем, что [code]$oWHh = "\160\162";
    $zYdUyk = 'eg';[/code] это ни что иное, как [b]preg[/b], т.е. это библиотека для работы с регулярными выражениями в PHP. Смотрим дальше, когда мы получаем[b] preg_r [/b]становится понятно, что вся функция имеет название [b]preg_replace[/b]. Промежуточный результат: [code]preg_replace($phl6yJ, $r6Q7D($lGp2BqP), $PJf4o9);[/code] Ну, совсем просто узнаем, что [font=courier new,courier,monospace]$phl6yJ[/font] это [code]/.*/e[/code] . Промежуточный результат: [code]preg_replace('/.*/e', $r6Q7D($lGp2BqP), $PJf4o9);[/code] Смотрим, что такое [font=courier new,courier,monospace]$r6Q7D[/font]. В коде это [code]
    $BiDR51n = "\142\141";
    $IhcdiCL = 'se';
    $Vq5GI = '64';
    $ID4o = "\137\144";
    $nBHq = 'ec';
    $ekeM_1 = "\157\144";
    $NViQXn = "\145";
    $r6Q7D = $BiDR51n . $IhcdiCL . $Vq5GI . $ID4o . $nBHq . $ekeM_1 . $NViQXn;
    [/code] Увидев [font=courier new,courier,monospace]..se64..ec...[/font] машинально вспоминаем [code]base64_decode[/code] Промежуточный результат: [code]preg_replace('/.*/e', base64_decode($lGp2BqP), $PJf4o9);[/code] [font=courier new,courier,monospace]$lGp2BqP[/font] — это результат работы какой-то функции, которая обрабатывает результат другой функции, пропустим пока. Остается [font=courier new,courier,monospace]$PJf4o9[/font]. Находим [code]
    $uRk52 = "";
    $PJf4o9 = $uRk52;
    [/code] в самом начале файла. Пустая строка. Отлично. Промежуточный результат: [code]preg_replace('/.*/e', base64_decode($lGp2BqP), '');[/code] Теперь будем разбираться с [font=courier new,courier,monospace]$lGp2BqP[/font]. Путем рассуждений которые мы делали выше узнаем, что [font=courier new,courier,monospace]$lGp2BqP [/font]— это [code]$lGp2BqP = strtr($v3IWiBF, array_combine(str_split($TjMGm), str_split($VtLjYNP)));[/code] Подставляем переменные и получаем [code]$lGp2BqP = strtr($v3IWiBF, array_combine(str_split('0=7ApLG%5HY#VS-$u_xsE 9,ZtD!crgq2b^/:6o3v1(&ln~k)\'B*IdQ[f4a`W\\'), str_split('8yaoY9jrcKuARDHlPC3S65nBwemEiN=Q1Vhf2stLZqJGUdIWbpM0zx4XvTFkgO')));[/code] А [font=courier new,courier,monospace]$v3IWiBF[/font] — это та огромная строка, про которую мы говорили в самом начале. Промежуточный результат: [code]preg_replace('/.*/e', base64_decode(strtr($v3IWiBF, array_combine(str_split('0=7ApLG%5HY#VS-$u_xsE 9,ZtD!crgq2b^/:6o3v1(&ln~k)\'B*IdQ[f4a`W\\'), str_split('8yaoY9jrcKuARDHlPC3S65nBwemEiN=Q1Vhf2stLZqJGUdIWbpM0zx4XvTFkgO')))), '');[/code] [code]'/.*/e'[/code] в регулярном выражении означает выполнение кода, указанного в строке. Значит нам нужно получить эту строку, это основной код скрипта. Выполняем [font=courier new,courier,monospace]base64_decode[/font] и получаем вот это. [b][size=5]Этап 3[/size][/b] Переходим на еще более низкий уровень кода, опять выполнив [font=courier new,courier,monospace]base64_decode[/font]. Результат. Вот мы и добрались до этой функции [font=courier new,courier,monospace]ololololololo1[/font]. Смотрим и видим это [code]\x65\x76\x61\x6C\x28\x67\x7A\x69\x6E\x66\x6C\x61\x74\x65\x28\x62\x61\x73\x65\x36\x34\x5F\x64\x65\x63\x6F\x64\x65\x28'[/code] Это пошли уже HEX коды символов, расшифровав получаем [code]
    eval(gzinflate(base64_decode('/* зашифрованный код */')));
    [/code] Переходим еще на уровень ниже... [b][size=5]Этап 4[/size][/b] Вот он код, ребята! После небольшой паузы я начал смеяться, нет, правда Мы получили такой же код, как и в файле [code]public_html/cache/sd2178.php[/code] , отличие только в том, что он выполняется, если у пользователя установлена cookie с названием [b]zx[/b]. Получается, мы просто потратили время впустую? Нет. Во-первых, знаете, это вообще клёвое (я вообще никогда не ставлю букву Ё при набирании текста на клавиатуре, это исторический момент) чувство когда делаешь что-то вроде взлома. Ведь в самом деле, мы только что взломали защиту, которую кто-то делал. Во-вторых, лично я получил прекрасный опыт работы с [b]таким[/b] кодом. Можно считать эта была тренировка на умение ориентироваться и разбираться в защищенном коде. В-третьих, я могу сказать владельцу сайта (как писал я уже выше — это [member='Fensmas']), что ничего супер-страшного в этом коде не нашлось (нет, вообще этот скрипт может многое, вплоть до удаления всех файлов сайта, но мы сделали все вовремя). А вообще у нас есть еще один файл — [font=courier new,courier,monospace]uploads/profile/photo-128.jpg[/font], но разбирать его нет смысла. Вспомним ошибку: [CODE]
    Fatal error: Cannot redeclare ololololololo1() (previously declared in /home/o/ХХХ/pro-ucheba.com/public_html/uploads/profile/av-128.jpg(33) : regexp code(1) : eval()'d code:2) in /home/o/ХХХ/pro-ucheba.com/public_html/uploads/profile/photo-128.jpg(33) : regexp code(1) : eval()'d code on line 3
    [/code]
    Если кратко — код в этом файле является идентичным коду, который мы только что разбирали.

    [size=5][b]Итоги[/b][/size]

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

    Учитывая то, что в общем-то код был один и тот же, можно предположить, что через один бэкдор были закачаны все остальные (а не было взлома еще и механизма кэширования IP.Board).

    В любом случае, я считаю, что это время я потратил не зря, хотя бы потому что это было интересно.
    Спасибо.


    Respected: так же можете почитать эту статью:

    [size=5][b]UPDATE 09.11.2012[/b][/size]
    Способ взлома сайта найден.
    Подробности опубликованы в теме.
  14. Лайк
    Quicksdk отреагировална пост _Dark_ в Ошибка Fatal error: Cannot redeclare   
    У вас какая версия форума?

    Здесь речь идет о возможной уязвимости IP.Board, нельзя это здесь публично обсуждать.
    Отправьте мне ваш номерок ICQ.
  15. Лайк
    Quicksdk отреагировална пост _Dark_ в Ошибка Fatal error: Cannot redeclare   
    Я так и думал.
    Это PHP, а не изображения.
    Прекрасно открываются текстовым редактором.
    Да, вас взломали.
  16. Лайк
    Quicksdk отреагировална пост _Dark_ в Уменьшаем ограничение на длину ника пользователя   
    Это тема поддержки статьи: Уменьшаем ограничение на длину ника пользователя.
    Здесь вы можете обсудить все вопросы, связанные с этой статьёй.

    Дата добавления статьи: 01 Ноябрь 2012 - 21:59
    Дата обновления статьи: 01 Ноябрь 2012 - 21:59
  17. Лайк
    Quicksdk отреагировална пост _Dark_ в Статистика IPBMafia.Ru   
    Статистика портала IPBMafia.Ru



    Сообщения


    Примечание: вся информация взята из базы данных.

    1-ое сообщение
    Оставлено 30 Январь 2012 г. 11:01:54
    Пользователь Respected
    Просмотреть сообщение нельзя, удалено.

    1000-ое сообщение.
    Оставлено 10 Март 2012 г. 10:03:06 (через 40 дней)
    Пользователь egorea1999


    2000-ое сообщение
    Оставлено 4 Апрель 2012 г. 22:25:36 (через 25 дней)
    Пользователь Respected


    3000-ое сообщение
    Оставлено 19 Апрель 2012 г. 14:57:24 (через 15 дней)
    Пользователь Nexon


    4000-ое сообщение
    Оставлено 10 Май 2012 г. 4:59:39 (через 21 день)
    Пользователь Nexon


    5000-ое сообщение
    Оставлено 30 Май 2012 г. 0:42:25 (через 20 дней)
    Пользователь Respected


    6000-ое сообщение
    Оставлено 16 Июнь 2012 г. 21:14:57 (через 17 дней)
    Пользователь


    7000-ое сообщение
    Оставлено 3 Июль 2012 г. 21:21:28 (через 17 дней)
    Пользователь wensont


    8000-ое сообщение
    Оставлено 25 Июль 2012 г. 17:26:35 (через 22 дня)
    Пользователь Boreek


    9000-ое сообщение
    Оставлено 18 Август 2012 г. 22:53:29 (через 24 дня)
    Пользователь


    10.000-ое сообщение
    Оставлено 10 Сентябрь 2012 г. 19:22:58 (через 23 дня)
    Пользователь Respected


    11.000-ое сообщение
    Оставлено 2 Октябрь 2012 г. 12:07:28 (через 22 дня)
    Пользователь artem2206


    12.000-ое сообщение
    Оставлено 15 Октябрь 2012 г. 17:56:31 (через 13 дней)
    Пользователь _Dark_


    13.000-ое сообщение
    Оставлено 27 Октябрь 2012 г. 20:40:40 (через 12 дней)
    Пользователь Caius


    14.000-ое сообщение
    Оставлено 6 Ноябрь 2012 г. 12:40:39 (через 10 дней)
    Пользователь 1020315g


    Интересные факты о статистике сообщений:
    Чаще всего оставлял "тысячное" сообщение Respected — 3 раза, 1-ое сообщение не учитывается
    Самый быстрый набор 1000 сообщений: 15 октября 2012 (12.000) — 27 октября 2012 (13.000), всего 12 дней
    Среднее количество дней между "юбилеями" — 19
    Пользователь Nexon оставлял "тысячные" сообщения два раза подряд. Это 3000-ое и 4000-ое соответственно
    В период с 5.000 до 6.000 сообщения и с 6.000 до 7.000 сообщения прошло ровно 17 дней




    Тенденции сообщений






    Занимался археологией в БД,



    конвертировал время из Unixtime в наше, Московское,



    а так же искал сообщения по их ID —



    _Dark_



    Да, я скромный, только т-сс!

  18. Лайк
    Quicksdk отреагировална пост Respected в Дополнительное поле ссылающееся на личную страничку vk.com   
    Вот мои настройки, с которыми у меня это поле работает:
  19. Лайк
    Quicksdk отреагировална пост Юрьевич в Toggle Visibility 1.0.3   
    Вот от делать не чего русифицировал хук, если что не так пишите подправлю.

  20. Лайк
    Quicksdk отреагировална пост Respected в IP.Nexus 1.5.4 Retail   
    Название: IP.Nexus 1.5.4 Retail
    Добавил: Respected
    Добавлен: 30 Окт 2012
    Категория: Компоненты, Приложения для IP.Board
    Название по-русски : Компонент магазина 1.5.4
    Версия IP.Board: 3.3.x

    IP.Nexus 1.5.4 Retail - многофункциональный компонент магазина для IP.Board. C его помощью вы можете продавать цифровые товары, рекламу, вступление в платные группы и многое многое другое.

    Для работы магазина требуется установленный на сервере IonCube Loader


  21. Лайк
    Quicksdk получил реакцию от Виктор в Платный заказ на хуки   
    Иногда бывает такое, что такие вот надуманные фишки/плюшки на форуме/сайте не нужны, поэтому я призываю вас еще раз тщательней проанализировать - действительно ли вам это нужно...Возможно есть какие-то стандартные наработки/cпособы/методы.. Чисто из благих намерений, а так же ссылаясь на свои хотелки в самом начале...
  22. Лайк
    Quicksdk отреагировална пост _Dark_ в Наработки новго шаблона #1   
  23. Лайк
    Quicksdk отреагировална пост € WinsanT в Покосилась кнопка регистрации и входа   
    Можно сделать вообще по убогому...

    Качаем вот это: ___ulogin.ru/js/ulogin.js и кидаем файлик js к себе на хост.
    Далее подключаем его путём


    <script src="__ulogin.ru/js/ulogin.js"></script>
    <div id="uLogin" x-ulogin-params="display=panel;fields=first_name,last_name,photo,email;providers=vkontakte;hidden=;redirect_uri=http%3A%2F%2Fpro-ucheba.com%2Findex.php%3Fapp%3Dcore%26module%3Dglobal%26section%3Dlogin%26do%3Dprocess%26auth_key%3D880ea6a14ea49e853634fbdc5015a024"></div> Где

    <script src="__ulogin.ru/js/ulogin.js"></script>
    [/code] Меняем на свой путь, куда закинули [b]js[/b] файл и уже в том файле ищем строку [code]style="display:inline-block;margin:0;padding:0;width:42px;height:32px;border:0;overflow:hidden[/code] и меняем на [CODE]style="display:inline-block;margin:0 0 -9px;padding:0;width:42px;height:32px;border:0;overflow:hidden[/code]

    Ну это конечно не практично, но как вариант :D
  24. Лайк
    Quicksdk отреагировална пост Respected в Покосилась кнопка регистрации и входа   
    #uLogin img{ vertical-align: middle !important;
  25. Лайк
    Quicksdk отреагировална пост € WinsanT в Покосилась кнопка регистрации и входа   
    В самом блоке логина (вк который)

    найди

    margin: 0; и замени на: margin: 0 0 -9px;[/code] Я про эту часть [code]<iframe frameborder="0" allowtransparency="true" src="https://ulogin.ru/panel.html?id=0&amp;display=2&amp;redirect_uri=http%3A%2F%2Fpro-ucheba.com%2Findex.php%3Fapp%3Dcore%26module%3Dglobal%26section%3Dlogin%26do%3Dprocess%26auth_key%3D880ea6a14ea49e853634fbdc5015a024&amp;callback=&amp;providers=vkontakte&amp;fields=first_name,last_name,photo,email&amp;optional=&amp;salt=1351155922508&amp;protocol=http&amp;host=pro-ucheba.com&amp;lang=ru&amp;verify=" style="display:inline-block;margin:0;padding:0;width:42px;height:32px;border:0;overflow:hidden"></iframe>[/code] Если конечно ты можешь редактировать данный код вставки формы входа [CODE]style="display:inline-block;margin:0;padding:0;width:42px;height:32px;border:0;overflow:hidden[/code]

    Должно получиться вот так:

×
×
  • Создать...