Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Сеть > Перехват post data


Автор: deadlegolas 19.4.2008, 11:33
Здравствуйте,уважаемые юзеры.
Хотел бы проконсультироваться с вами, какими способами можно перехватить post datу от Flash приложения к пхп скрипту, изменить и послать "как ни в чем не бывало" туда же , на пхп скрипт, но уже с моими значениями.
Заранее Благодарен Вам!  smile 

Автор: Fortop 19.4.2008, 15:59
редирект и CURL

Добавлено через 2 минуты и 29 секунд
Уточняю, все данные должны поступать с флеша на твой скрипт, а уже там ты можешь делать посылку нужных данных в любое другое место используя CURL

Добавлено через 13 минут и 42 секунды
Да, забыл. Если это все на одном хосте, то CURL не нужен smile include и иже с ним

Автор: flashaa 19.4.2008, 18:48
Если на разных хостах, CURL тоже не обязателен

Автор: Fortop 19.4.2008, 18:58
flashaa, не проникся
а как ты будешь выдавать ответную информацию пользователю с "чужого" хоста?

Автор: flashaa 19.4.2008, 19:36
Fortop, а вот так например. http://forum.vingrad.ru/forum/topic-199497/anchor-entry1435956/0.html
Курл незаменим при работе с HTTPS в остальном он вполне заменяется сокетами. 

Автор: deadlegolas 19.4.2008, 22:40
Цитата

Уточняю, все данные должны поступать с флеша на твой скрипт

А как мне заставить эти  данные идти на мой скрипт, если доступа ни к флэшке , ни к сайту у меня нету?
как я понял,никак?

Автор: flashaa 19.4.2008, 22:44
Цитата(deadlegolas @  19.4.2008,  22:40 Найти цитируемый пост)
А как мне заставить эти  данные идти на мой скрипт, если доступа ни к флэшке , ни к сайту у меня нету?

это тебе в форум хакеров =)

Автор: deadlegolas 19.4.2008, 22:55
если б я еще знал оные... =)
значит без доступа к флэшке - никак не осуществить?

Автор: Fortop 20.4.2008, 00:27
Цитата(deadlegolas @  19.4.2008,  22:55 Найти цитируемый пост)
значит без доступа к флэшке - никак не осуществить? 

Если она не поддерживает настройку параметрами извне. - то никак.
Слишком странная у тебя задача - не находишь? smile

Цитата(flashaa @  19.4.2008,  19:36 Найти цитируемый пост)
Курл незаменим при работе с HTTPS в остальном он вполне заменяется сокетами. 

Не убедил. smile
Для нормальной работы ты все равно напишешь обертку над сокетами. Смысла изобретать велосипед - не вижу smile Только в качестве самообразования.

Автор: deadlegolas 20.4.2008, 00:34
а можно вообще обойтись без флешки и эмулировать такой запрос с помощью чего-то?
Код

POST /index.php HTTP/1.1
Accept: */*
Referer: https://**/test/gs3.swf
x-flash-version: 9,0,47,0
Content-Type: application/x-www-form-urlencoded
Content-Length: 35
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 1.1.4322)
Host: ****
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: PHPSESSID=782f95c257ce3c3f3756c24ebbd9bbd4

status=finish&test%5Fid=3&schore=5

Автор: Fortop 20.4.2008, 01:27
В PHP как минимум 2ва способа сделать это

Сокеты, CURL

Автор: flashaa 20.4.2008, 11:20
Цитата(Fortop @  20.4.2008,  00:27 Найти цитируемый пост)
Не убедил. smile
Для нормальной работы ты все равно напишешь обертку над сокетами. Смысла изобретать велосипед - не вижу smile Только в качестве самообразования. 

Обертку написать невозможно, т.к. сами сокеты - это обертка транспортного протокола, а не наоборот.
Работа c https отличается от http тем, что там протокол нижнего уровня ssl (вместо tcp), что сделать на основе сокетов невозможно. Отличается нижний протокол передачи, к которому PHP не имеет доступа.

Хотя все же PHP может менять протокол транспортного уровня, если в него встроен соотв. враппер.
Вроде есть только 2 враппера - tcp, udp

phpinfo :
Цитата


Registered Stream Socket Transports  tcp, udp

Хотя в мануале сказано, что можем работать с https, начиная с бородатого PHP 4.0.3, но на практике такого транспорта нет.

Добавлено @ 11:28
deadlegolas, вижу у тебя там https, значит дело твое с воровством и подделкой траффика безнадежно.

Автор: Fortop 20.4.2008, 14:51
Цитата(flashaa @  20.4.2008,  11:20 Найти цитируемый пост)
Обертку написать невозможно, т.к. сами сокеты - это обертка транспортного протокола, а не наоборот.

Ты не понял. 
Писать rawdata в сокеты не самое интересное занятие smile Вот для этого ты и напишешь обертку, рано или поздно.
Например для тех же Headers.

Автор: flashaa 20.4.2008, 16:47
Ну конечно самому писать запрос это немного трудоемко =)

Автор: Fortop 23.4.2008, 13:59
Цитата(flashaa @  20.4.2008,  11:20 Найти цитируемый пост)
Работа c https отличается от http тем, что там протокол нижнего уровня ssl (вместо tcp), что сделать на основе сокетов невозможно. Отличается нижний протокол передачи, к которому PHP не имеет доступа.

Ты не прав.

Вот phpinfo()  с моего хостинга. 
Цитата

[*]Registered PHP Streams  zip, php, file, data, tftp, ftp, telnet, dict, ldap, http, https, ftps, compress.bzip2, compress.zlib  
[*]Registered Stream Socket Transports  tcp, udp, unix, udg, ssl, sslv3, sslv2, tls  

Более того пользовался не далее, как позавчера, для тестирования работы SOAP.

Автор: flashaa 23.4.2008, 22:15
Цитата(Fortop @  23.4.2008,  13:59 Найти цитируемый пост)
Ты не прав.

Ты наверно ошибся и хотел зацитировать вот это:
Цитата(flashaa @  20.4.2008,  11:20 Найти цитируемый пост)
Хотя в мануале сказано, что можем работать с https, начиная с бородатого PHP 4.0.3, но на практике такого транспорта нет.

?
Я рад что там есть много полезных транспортных протоколов, вообще говоря впервые вижу такой набор. Наверно php особой сборки.

Автор: Fortop 24.4.2008, 04:33
Это не сильно важно, поскольку и там и там у тебя мысли схожие smile

А такой набор я имею на hostpro.ua
Впрочем и это не сильно важно smile
Важно, что это работает smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)