ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

[c++] [firefox] скрытый переход по линку
  #1  
Старый 04.01.2010, 20:18
Аватар для qsd
qsd
Новичок
Регистрация: 04.01.2010
Сообщений: 14
Провел на форуме:
8446

Репутация: 0
По умолчанию [c++] [firefox] скрытый переход по линку

Добрый день,

К примеру есть следующая хтмл страница, открытая в лисе (допустим ее адрес, находящийся в панели адреса - http://www.CURRENT.com/another.php):

<html>
<body>
<form action=http://www.ORIGINAL.com/main.php>
....... // контент формы
</form>
</body>
</html>

нужно чтобы после сабмита юзером формы, в браузере остался адрес http://www.CURRENT.com/another.php, а ответ был отображен от сервера http://www.ORIGINAL.com/main.php

Желательно сделать это хуком какойнить функции фф или winsock. Посдкажите каким образом можно реализовать подобный скрытый серфинг?

Я вообще хотел делать так:
1. в PR_Write (оболочка для send) изменить заголовки так, чтобы они соответствовали http://www.CURRENT.com/main.php
2. в send поменять заголовки обратно))

таким образом фф занесет нужный адрес урла (http://www.ORIGINAL.com/main.php) в нужный буффер и в нужный момент времени, а именно как только получит первые данные от recv, в поле урла должен отобразиться нужный урл))) во всяком случае это в теории

Последний раз редактировалось qsd; 04.01.2010 в 20:23..
 
Ответить с цитированием

  #2  
Старый 04.01.2010, 21:44
Аватар для qsd
qsd
Новичок
Регистрация: 04.01.2010
Сообщений: 14
Провел на форуме:
8446

Репутация: 0
По умолчанию

еще вопрос, как быть с хттпс? весь запрос включая хедеры и тело шифруется и подменить нужный текст запроса не получится(
 
Ответить с цитированием

  #3  
Старый 04.01.2010, 22:18
Аватар для Gar|k
Gar|k
Постоянный
Регистрация: 20.03.2009
Сообщений: 564
Провел на форуме:
991929

Репутация: 395


По умолчанию

эм если пишешь под windows что мешает тебе напрямую работать с окном fireFox через winAPI функции?

FindWindow, GetWindowText, SetWindowText

чтобы быстро найти нужный элемент используй стандартную утилиту VS - Spy++
чтоб писать легче было прогу

алгоритм такой:
нашли окно
нашли нужный элемент

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

  #4  
Старый 05.01.2010, 00:35
Аватар для qsd
qsd
Новичок
Регистрация: 04.01.2010
Сообщений: 14
Провел на форуме:
8446

Репутация: 0
По умолчанию

это работает с ИЕ (причем некрасиво), но не работает с фф, т.к. там механизм окон реализован подругому. я не нашел окна, ответственного за прием сообщений об изменении поля с урл.

я вообще хз че с этим фф делать(
 
Ответить с цитированием

  #5  
Старый 05.01.2010, 00:56
Аватар для qsd
qsd
Новичок
Регистрация: 04.01.2010
Сообщений: 14
Провел на форуме:
8446

Репутация: 0
По умолчанию

только что промониторил все окна мозиллы, ничего с http туда не приходит, нужен другой подход. хук send тоже неподходит. остается хук PR_Write, но подменяя хедеры GET / на GET /adad.php в строке урла получаем:
http://ya,ru/adad.php
!!!

то же самое с хуком send, значит получение урла, откуда получен ответ, происходит какимто другим образом
 
Ответить с цитированием

  #6  
Старый 05.01.2010, 01:07
Аватар для qsd
qsd
Новичок
Регистрация: 04.01.2010
Сообщений: 14
Провел на форуме:
8446

Репутация: 0
По умолчанию

вопрос: откуда можно достать инфу с какого урла качается в данный момент инфа (функцией PR_Read или recv)? насколько мне известно в ответе от сервера нет информации откуда пришел ответ!
 
Ответить с цитированием

  #7  
Старый 05.01.2010, 01:26
Аватар для Gar|k
Gar|k
Постоянный
Регистрация: 20.03.2009
Сообщений: 564
Провел на форуме:
991929

Репутация: 395


По умолчанию

ага... нету есть только запрос
GET path HTTP
POST path HTTP

ну а вообще вроде поле HOST является обязательным параметром.
+ ко всему есть такая штука как индификатор сокета - а его можно узнать
так же можно узнать какие сокеты открыл процесс с какими индификаторами...
http://forum.antichat.ru/showpost.php?p=1302363&postcount=28

в общем трындец )
 
Ответить с цитированием

  #8  
Старый 05.01.2010, 01:34
Аватар для qsd
qsd
Новичок
Регистрация: 04.01.2010
Сообщений: 14
Провел на форуме:
8446

Репутация: 0
По умолчанию

ну допустим я знаю идентификатор сокета(они передаются как параметры функциям PR_Read/PR_Write, а они обе у меня захучены) че дальше?))

это имеешь ввиду?
Код:
							ress = sizeof(sockaddr_in);//--- commenting this line would cause an 10014 error.
							getpeername((SOCKET)ObjHandle, (sockaddr *)&sockname, &ress);

							//--- определяем локальный IP и порт
							ress = sizeof(sockaddr_in);//--- commenting this line would cause an 10014 error.
							getsockname((SOCKET)ObjHandle, (sockaddr *)&locname, &ress);
				

							//--- коевертируем в понятные для глаза данные )
							remaddr = inet_ntoa(sockname.sin_addr);
							rem_port = ntohs(sockname.sin_port);

							locaddr = inet_ntoa(locname.sin_addr);
							loc_port = ntohs(locname.sin_port);
я просто не силен в сокетах) самое главное подменить URL-Path, т.е. с хостом то можно разобраться хуком connect'a, а вот с URL-Path, который идет после слеша, я вообще хз как быть( че только не пробовал, эта сцука все равно отображает полный путь!

может ff список какойнить создает, где хранится этот path?

Последний раз редактировалось qsd; 05.01.2010 в 01:45..
 
Ответить с цитированием

  #9  
Старый 05.01.2010, 05:37
Аватар для qsd
qsd
Новичок
Регистрация: 04.01.2010
Сообщений: 14
Провел на форуме:
8446

Репутация: 0
По умолчанию

чет не понял что ты хотел сказать своим постом) за коды ответа спасибо, но мне нужно всего-лишь одно:
чтобы я перешел на yandex.ru/yandsearch?text=any а в строке браузера было: http://yandex.ru/
!

ща перелопатил исходники фф вместе с документацией пришел к выводу, что докопаться до поля урла можно 2мя способами:
1. xpcom
2. чезез shell-функции мозиллы (LoadURI()/OnLinkClick())
https://developer.mozilla.org/en/Document_Loading_-_From_Load_Start_to_Finding_a_Handler

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

в общем какойто пестец
 
Ответить с цитированием

  #10  
Старый 05.01.2010, 20:26
Аватар для Gar|k
Gar|k
Постоянный
Регистрация: 20.03.2009
Сообщений: 564
Провел на форуме:
991929

Репутация: 395


По умолчанию

ну а че тут не понятного? ) тебе надо хреначить расширение для мозилы-тормозилы )
читай как это делается https://developer.mozilla.org/En/Firefox_addons_developer_guide
я в принципе допер ) все пишется на языке javascript используя DOM мозилы и ее внутренние всякие функции...
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
переход по заданному адресу [PHP] Lionis PHP, PERL, MySQL, JavaScript 50 03.08.2009 13:33
как увидеть скрытый текст на форумах? smOleg Болталка 14 06.02.2009 11:54
Proxy FAQ foreva Чужие Статьи 12 04.01.2008 12:15



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ