PHP Парсер: подставить в отправку формы сохраненные Куки

Discussion in 'PHP' started by altRUist, 1 Dec 2012.

  1. altRUist

    altRUist New Member

    Joined:
    13 Feb 2011
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    Скажите возможно ли такое:

    пользователь обращается к скрипту на моем сервере (назовем его X) скрипт обращается к странице на другом сервере (назовем этот сервер Y) получает данные (сохраняет куки) и выводит содержимое пользователю, пользователь заполняет все что надо и submit-ит форму она отправляет запрос на сервер Y можно ли мне в сабмит формы подставить куки которые были сохранены? (просто их обычно отпрвляет браузер...)

    да, тут такой момент: форма громоздкая, в ней есть кое какие скрипты js которые выполняются в момент загрузки пользователем (в браузере) например загружается какой-нить js с переданным параметром-хэшем (как генерится этот хэш-хз) раскодировать - слишком трудоемко, иначе бы я мог отправить с того (X) сервера нужные POST поля от пользователя Curl-ом и подставил COOKIE которые были сохранены.

    т.е. форма - это как черный ящик к полям формы который нужно отобразить в браузере. а при отправке формы поставить в нее куки.

    з.ы. если поняли что я понаписал, респект вам, если нет, попробую как-то по другому объяснить
     
  2. altRUist

    altRUist New Member

    Joined:
    13 Feb 2011
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    впринципе можно сделать так:
    submit формы направить на сервер X а там скрипт будет принимать и перенаправлять на сервер Y подставляя куки (но это будет еще одно звено - еще один прокси, как бы).

    но мне интересно можно ли вставить куки в процессе отправки формы из браузера (может как-то закешировать отправку или сформировать но не отправлять а потом добавив в него сохраненные куки и отправить), ведь физически эта форма отправляется с того же сервера где и сохранены куки (т.е. как бы безопасность со стороны браузера не нарушена)
     
  3. Gar|k

    Gar|k Moderator

    Joined:
    20 Mar 2009
    Messages:
    1,166
    Likes Received:
    266
    Reputations:
    82
    Не осилил весь текст. У кук есть 2 поля domain и path - тобишь куки не кроссдоменные их нельзя передавать туда сюда в формах (можно конечно. но только если не ты сам формируешь HTTP запрос к серверу. например через CURL).

    В твоем случае можно просто вставить input type=hidden поле в форму в котором передавать cериализованные данные (serialize, json_encode). А если тебе нужна защита используй простой криптоалгоритм - например просто к ASCII коду байта данных прибавь какое либо число (например ASCII код третей буквы первого отправляемого поля)... $data[$i]=ord($data[$i])+$offset;

    Так а теперь я перечитал тему :) Мысля с прокси сервером не плохая хехе. Так же ты можешь подменить через JS (например через XSS уязвисмость) action формы - тем самым оправить все данные и куки себе на сниффер (простой PHP скрипт) с которого уже формировать CURL ом или руками нужный запрос.
     
    _________________________
  4. cardons

    cardons Elder - Старейшина

    Joined:
    19 Jul 2005
    Messages:
    779
    Likes Received:
    324
    Reputations:
    83
    Раскодировать JS можно в 2 пинка с помощью malzilla. Кидаете зашифрованный код. Выполняете. Получаете без защиты.