Отправка POST запроса
|
|
Alex3A | Дата: Пятница, 19 Марта 2010, 23:38 | Сообщение # 91 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| DEMBEL, Ну яж талдычил-ищи eval( Добавлено (19 Март 2010, 23:38) --------------------------------------------- DEMBEL, ну так че, делать бинарную поддержку?
|
|
| |
DEMBEL | Дата: Пятница, 19 Марта 2010, 23:49 | Сообщение # 92 |
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
| эмм... не знаю, я еще не понял нужно или нет ) сначала проверю то что ты там наделал на своих примерах и скажу точно.
Win7x64 SP1 Neobook v5.70 (Trial) WinXP SP3 Neobook v5.62
|
|
| |
Alex3A | Дата: Суббота, 20 Марта 2010, 00:39 | Сообщение # 93 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| Ок
|
|
| |
DEMBEL | Дата: Суббота, 20 Марта 2010, 00:48 | Сообщение # 94 |
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
| у меня вот не выходит скрипт расшифровать, не работает и все...
Win7x64 SP1 Neobook v5.70 (Trial) WinXP SP3 Neobook v5.62
|
|
| |
Alex3A | Дата: Суббота, 20 Марта 2010, 10:54 | Сообщение # 95 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| DEMBEL, так давай пример, чего там у тебя, я уже более менее свободен.
|
|
| |
DEMBEL | Дата: Суббота, 20 Марта 2010, 11:04 | Сообщение # 96 |
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
| щас, погоди сниму дамп со снифера, сам посмотришь
Win7x64 SP1 Neobook v5.70 (Trial) WinXP SP3 Neobook v5.62
|
|
| |
Alex3A | Дата: Суббота, 20 Марта 2010, 11:13 | Сообщение # 97 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| А вообще, скрипт нужно ковырять в том случае, если данные отправляемые на сервер в заголовке запроса, меняются от посыки к посылке, и ты не можеш понять каким образом. Любой сложности страница, в итоге, формирует заголовок запроса и отправляет его на сервер. Запрос может передавать какие нибудь переменные и куки. Вот ответ сервера, его заголовки, говорят что дал сервер, или что клиенту делать дальше, это в случаях когда процес добычи нужного состоит из нескольких шагов.
|
|
| |
DEMBEL | Дата: Суббота, 20 Марта 2010, 11:24 | Сообщение # 98 |
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
| Quote (Alex3A) А вообще, скрипт нужно ковырять в том случае, если данные отправляемые на сервер в заголовке запроса, меняются от посыки к посылке, и ты не можеш понять каким образом. я пока не могу понять роль этого возвращаемого скрипта, что он делает... возможно то что надо, возможно нет... просто думаю надо расковырять, чтоб понять оно это или искать в другом месте... возможно просто скрипт рекламного баннера...
Win7x64 SP1 Neobook v5.70 (Trial) WinXP SP3 Neobook v5.62
|
|
| |
DEMBEL | Дата: Суббота, 20 Марта 2010, 11:46 | Сообщение # 99 |
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
| епрст, как лимит сообщения обойти и разбить сообщение? пришлось в файл пихать Добавлено (20 Март 2010, 11:46) --------------------------------------------- о чёрт, друзья, вынужден сообщить что послезавтра я вынужден уехать до августа (прям как Булгаков ), на "учебно-рабочую" практику в некую захудалую сельскую больницу в области, так что более чем вероятно мое временное отсутствие хотел оставить вам поиграться несколько прикольных штучек, но видно не успею доделать Alex, все мои текущие вопросы думаю придется "заморозить". (удалено)
Win7x64 SP1 Neobook v5.70 (Trial) WinXP SP3 Neobook v5.62
|
|
| |
Alex3A | Дата: Суббота, 20 Марта 2010, 12:19 | Сообщение # 100 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| Нужное тебе содержится в приложенном файле, или после его получения еще идут запросы? Если идут, то нужны заголовки браузера и сервера, снятые снифером до момента получения нужнго. А так же аналогичная история обмена с плагином, что бы проанализировать в чем разница.
|
|
| |
DEMBEL | Дата: Суббота, 20 Марта 2010, 12:30 | Сообщение # 101 |
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
| Quote (Alex3A) Нужное тебе содержится в приложенном файле, или после его получения еще идут запросы? я взял самый последний ответ, до него еще несколько tcp сессий, но как я понял они особо не при делах тут...Добавлено (20 Март 2010, 12:30) ---------------------------------------------
Quote (Alex3A) Нужное тебе содержится в приложенном файле, или после его получения еще идут запросы? я вот и хочу просто выяснить, это нужное или ненужное... может просто мусор рекламный, тогда буду подробнее смотреть еще скрипты на странице...
Win7x64 SP1 Neobook v5.70 (Trial) WinXP SP3 Neobook v5.62
|
|
| |
Alex3A | Дата: Суббота, 20 Марта 2010, 13:26 | Сообщение # 102 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| Первый скрипт -грузит скрипт с адреса Code http://mg.dt00.net/mgjs/cjs/s/a/savefrom.net.195.js?t= передавая по гет переменную t=год+месяц+дата+час и пременную charset="utf-8". Этот заголовок вполне отлавливается и скрипт можно получить в чистом виде. Третий скрипт, довольно хитрожопый var x='.....'; document.body.appendChild(s); переменная х определена в скрипте, переменной s нет, очевидно она определена в первом скрипте, или в теле хтмл, тег с таким именем. Пусть тебя не смущает что х используется в определении s, в первый момент времени у неее есть какое то значение, добавится объект s, затем будет выполнятся= в функции 1t(), которая в качестве аргументов вызывает функцию объекта 1u.1r() с аргументом -та длинная строка с символами... Кароче три -четыре уровня вложенности, ничего страшного, надо поиметь тот скрипт, который определяет s, и если там особой засады нет, то можно, написав соответственно свой шкрипт, получить то что там спрятано в чистом виде. расшифрованный конечный скрипт, выполняет функцию f(), которая на самом деле функция z, определенная в другом месте. В общем замороченно, но вполне распутываемо, если канечна, внешние определения не дадут дополнительного гимороя внешние -1t(), 1u.1r(),z() , конечное действие eval(f).Выполнить строку как код, функция z(). Таким образом, для работы не хватает определения внешних трех функций.
|
|
| |
DEMBEL | Дата: Суббота, 20 Марта 2010, 16:48 | Сообщение # 103 |
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
| ладно, понятно, я так понял что без дополнительных определений скрипт не распутается, ну будем смотреть в чем дело, но уже позже походу передается не целый механизм, а только его движок, который и запускает весь процесс...
Win7x64 SP1 Neobook v5.70 (Trial) WinXP SP3 Neobook v5.62
|
|
| |
Alex3A | Дата: Суббота, 20 Марта 2010, 17:45 | Сообщение # 104 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| Есть подозрение, что третий скрипт, самомдостаточен, я уже поимел скрипт загружаемый в первого скрипта, и немного раскодировал часть в третьем, но до переменной х пока не добрался.Добавлено (20 Март 2010, 17:45) --------------------------------------------- там интересно функция называется f,u,c,k ну и очевидно х обрабатывается регулярным выражением. Выдели из длинной строки определение z=String.fromCharCode(..) а потом alert(z);
|
|
| |
DEMBEL | Дата: Суббота, 20 Марта 2010, 17:46 | Сообщение # 105 |
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
| если хочешь снять логи сам - то могу кинуть ссылку в лс, но если ты занят то я никуда не тороплюсь, все равно вплотную смогу заняться разбором полетов гораздо позже.
Win7x64 SP1 Neobook v5.70 (Trial) WinXP SP3 Neobook v5.62
|
|
| |
Alex3A | Дата: Суббота, 20 Марта 2010, 19:11 | Сообщение # 106 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| Короче, скрипт номер 3 самый закоденый, я вроде разобрал его строение -это скрипт матрешка в конце строки Code eval(f(a,62,100,b.split(\u0027|\u0027))) модифицируем Code alert(f(a,62,100,b.split(\u0027|\u0027))) Ну а что бы не переписывать руками, сделаем текстареа туда и выведем модифицируем Code <textarea name="ty"></textarea> ..... ty.value=f(a,62,100,b.split(\u0027|\u0027)).... при запуске в textarea будет код eval(....) копируем его, пишем новый хтмл с текстареа и кропированным кодом из первого хтл Code <textarea name="ty1"></textarea> <script type="text/javascript"> ty1.value=копированный код в котором убрали eval и его скобки() </script> Там мы уже видим код скрипта, но не весь, часть закодирована Code ...btn.parentNode.innerHTML=String.fromCharCode(60,.... чтобы ее раскодировать, делаем новый хтмл, аналогично как делали раньше и меняем [code]]<textarea name="ty2"></textarea> <script type="text/javascript"> ty2.value=String.fromCharCode(60,.... </script> Этот шаг я не делал, в прищепке результат предидущего шага, если и в нем какая кака, поступаем аналогично. Для сбора всего кала, с каждого этапа копируем открытый код, а закодированную часть заменяем раскодированной в следующем этапе. Добавлено (20 Март 2010, 19:11) --------------------------------------------- Не, даже не так, там еще куча уровней вложения, но уже определимых, там где остается код стоят или String.fromCharCode или eval, там где в eval нормальный текст, трогать не надо, он и так читаем. (удалено)
|
|
| |
Alex3A | Дата: Суббота, 20 Марта 2010, 19:39 | Сообщение # 107 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| Вот чего в результате там накопал. рой есть ли чего хотел. (удалено)
|
|
| |
DEMBEL | Дата: Суббота, 20 Марта 2010, 23:34 | Сообщение # 108 |
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
| спасибо за подробный оналез происходящего, если есть еще что отметить конкретного по поводу процесса расковыривания то говори, а то я намерен подробно выяснить все по шагам, мне ведь нужно будет сделать автоматический обработчик этого... а насчет содержимого - то что нужно, искал прямую ссылку на скачивание, она в самом начале идет ну всякие куки-шмуки там я уж сам попробую победить.
Win7x64 SP1 Neobook v5.70 (Trial) WinXP SP3 Neobook v5.62
|
|
| |
Alex3A | Дата: Воскресенье, 21 Марта 2010, 12:05 | Сообщение # 109 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| Ну вот по поводу автоматического расковыривания, это канешна весчь сложная, но возможная, однако думай сам. Итого, есть скрипт в нем определены три переменные x,y,z которые учавствуют в создании скрытого скрипта. Все скрипты страницы, находящиеся не в функциях выполняются сразу при их загрузке, те которые находятся в теле фукйий выполняются при их вызове. Ключевой оператор позволяющий выполнить текст как скрипт это eval(), таким образом, если результат того что находится в аргументах этой функции дать не функции eval(что-то) а другому элементу или функции, к примеру alert(что-то) елемент.value=что-то то скрипт будет не выполнен а показан, как текст. Таким образом, нет необходимости в анализе метода кодировки скрытого скрипта и его составляющих, он сам себя дешифрует. Другой метод представления текста - это хранение его в виде кодов символов, String.fromCharCode(набор таких символов), или шеснадцатеричного представления, или урлкодирования, или еще чего. Другим методом, позволяющим превратить строку в скрипт, это динамическое создание объекта скрипт Code var s=document.createElement('script'); и добавление его в нужное место объектной модели документа Code document.body.appendChild(s); , в данном случае в его тело, это еквивалентно функции eval(что-то) но не в теле текущего блока скриптов, а в отдельном, вновь созданом блоке. Усвоив, нужные представления, возвращаемся к нашему скрипту. Переменные x,y,z хранят данные для генерации нужного скрипта, но они пока есть просто текстом. Динамически создается новый объект, и внедряется в объектную модельCode document.body.appendChild(s); , текст становится скриптом, то есть cчитай что убираются внешние кавычки '', и что же мы там видим, бывшая строка превратилась в скрипт, в котором определены x,y,z и определяется ранее объявленный объект как скрипт, определяется его текст, состоящий из переменных и некой модификации Code s.text='var a=\u0027' + x + '\u0027,b=\u0027' + y + '\u0027,f=' + z + '; После модификации, скрипт выполняется[code]eval(f(a,62,100,b.split(\u0027|\u0027)))code] Все выше описанное можно назвать загрузщиком скрипта, аргумент функции eval содержит автоматически распаковываемый код, вне зависимости от сложностей и хитростей в нем заложенных. Но это справедливо лиш для интерпритатора явы! В данном случае мы имеем дело со структурой сокрытия кода типа матрешки, ибо сам код имеет вложенные инструкции eval и String.fromCharCode с закодированным текстом. Выделив их и произведя нужную операцию мы получим исходный код, eval(что-то)-alert(что-то) rez=String.fromCharCode(что-то), затем когда все раскодировано, мы собираем эти куски и в итоге имеем открытый исходник. Уровень вложенности таких вещей определяется злобностью програмера писавшего этот скрипт
|
|
| |
DEMBEL | Дата: Воскресенье, 21 Марта 2010, 12:59 | Сообщение # 110 |
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
| ну что, респект тебе
Win7x64 SP1 Neobook v5.70 (Trial) WinXP SP3 Neobook v5.62
|
|
| |
Alex3A | Дата: Воскресенье, 21 Марта 2010, 13:47 | Сообщение # 111 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| Да там еще что то наворочано с регулярными выражениями, что то как то переделывает или добавляет или убирает, я не стал рабиратся, ибо оно само себя и раскодирует, так что во все эти хитрости даже вникать нет необходимости, ну если только в спортивных интересах
|
|
| |
DEMBEL | Дата: Пятница, 27 Августа 2010, 00:24 | Сообщение # 112 |
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
| эм... значит продолжаю тут ковырять какашки... напомни пожалуйста как правильно раскодировать подобный скрипт, чтото мне eval и alert мусор показывает: надо проверить наличие в раскодированном материале строк: s05 12374701 2d4fab923c2c3ea46053ccbe9d7286dc либо полного пути /media/?d=12374701&t=2d4fab923c2c3ea46053ccbe9d7286dc если не найдутся, буду выяснять их формирование сам (удалено)
Win7x64 SP1 Neobook v5.70 (Trial) WinXP SP3 Neobook v5.62
|
|
| |
Alex3A | Дата: Пятница, 27 Августа 2010, 01:38 | Сообщение # 113 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| Так, значится, разбираеш все дерьмо что стоит в кавычках это текст, что бы там ни было написано, что текстом не является, это код входа, с него и запускается вся шарманка. Ты впоминаеш, что там могут быть многократные вложения, все они саморасшифровуемые, при запуске головного шрифта. Ведзде, где шаг за шагом, возникает eval, меняем его на алерт. А текст вроде был в спойлере, праснулся а он в файле
|
|
| |
Alex3A | Дата: Пятница, 27 Августа 2010, 03:27 | Сообщение # 114 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| Ну че ? ну на, ысши Добавлено (27 Август 2010, 03:27) --------------------------------------------- s05 нет 12374701 есть 2d4fab923c2c3ea46053ccbe9d7286dc нет либо полного пути /media/?d=12374701&t=2d4fab923c2c3ea46053ccbe9d7286dc нет
|
|
| |
DEMBEL | Дата: Пятница, 27 Августа 2010, 09:14 | Сообщение # 115 |
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
| как это нет, все там есть, спасибо. теперь обьясни как расковырять это, var x='...', с помощью eval? и потом мне придется сделать эту процедуру автоматически, так что без ручной работы надо... и что вообще означают эти аргументы 1O.1P, символы через запятую, что это, всё переменные? а var y='...|...|...' это что за... с var z=String.fromCharCode понятно. Потом в конце эти штуки собираются вместе в s, из которой формируется расшифрованный контент яваскрипта, добавляется на страницу и выполняется. теперь зачем пишется var a=\u0027' ... а потом split(\u0027|\u0027), что это за u0027. А понятно это апостроф для итогового скрипта, тут его по другому не запишешь. идет split по палке, видимо у, а в нем снова String.fromcharcode и переменная y раскодируется в итоговом скрипте, тут вложенность. понятно.Добавлено (27 Август 2010, 09:14) --------------------------------------------- вывел в textarea, вижу снова этот function(f,u,c,k)... че дальше-то... опиши процесс по пунктам, я разберусь... блин потерял твои исходники из предыдущих сообщений, тогда вроде понел а щас забыл уже в чем соль, долблюсь апстену.
Win7x64 SP1 Neobook v5.70 (Trial) WinXP SP3 Neobook v5.62
|
|
| |
Alex3A | Дата: Пятница, 27 Августа 2010, 19:57 | Сообщение # 116 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| А ты думаеш, я помню Когда в прошлый раз то типа знал, вчера типа вспомнил, а сегодня нада опять войти в струю Падажди.Добавлено (27 Август 2010, 19:57) ---------------------------------------------
Quote (DEMBEL) var a=\u0027' ... а потом split(\u0027|\u0027), что это за u0027. Я вообще не вникаю во все эти примочки Code s.text='var a=\u0027' + x + '\u0027,b=\u0027' + y + '\u0027,f=' + z + ';mm=(f(a,62,120,b.split(\u0027|\u0027)));'; Вот ключевая строка, s.text= текст скрипта, не интересна даже первая часть-'var a=\u0027' ... eval=(f(a,62,120,b.split(\u0027|\u0027)));'; меняем на mm=(f(a,62,120,b.split(\u0027|\u0027)));'; в переменной мм находится первая матрешка, начинается eval(String.fromCharCode... делаем ему String.fromCharCode, получаем следующую, если там опять есть вложения, делаем аналогично. Я раскодировал из двух страниц, чето с одной не получилось, ява эта бяка
|
|
| |
DEMBEL | Дата: Пятница, 27 Августа 2010, 21:28 | Сообщение # 117 |
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
| получилось, теперь понел. как сделать теперь чтоб не руками все делать, ну это уж я подумаю...
Win7x64 SP1 Neobook v5.70 (Trial) WinXP SP3 Neobook v5.62
|
|
| |