Создание куки с php и perl - PullRequest
       27

Создание куки с php и perl

0 голосов
/ 14 января 2010

Я пытаюсь установить cookie с помощью PHP, поэтому он совпадает с выводом кода Perl ниже:

my %auth;
$auth{'username'} = $username;
$auth{'password'} = $password;
my $wholesaleauth = $co->cookie
(
 -name=>'wholesaleauth',
 -value=>\%auth,
 -expires=>'+1h',
 -path=>'/'
);

Теперь я не знаю perl и все и не хочу менять код perl. Мне нужно в основном имитировать печенье. Когда я смотрю на файл cookie в моем управлении файлами cookie Chrome, он говорит: «1004 *»

password&PASSWORD&username&USERNAME

Я пытаюсь подражать этому, но в PHP.

Ответы [ 4 ]

3 голосов
/ 14 января 2010

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

Кроме этого:

#!/usr/bin/perl

use strict; use warnings;

use CGI::Cookie;

my %auth;
$auth{'username'} = 'not safe';
$auth{'password'} = 'get me outta here';

my $wholesaleauth = CGI::Cookie->new(
    -name=>'wholesaleauth',
    -value=>\%auth,
    -expires=>'+1h',
    -path=>'/'
);

print "Set-Cookie: $wholesaleauth\n";

Выходы:

Set-Cookie: wholesaleauth=password&get%20me%20outta%20here&username&not%20safe; path=/; expires=Thu, 14-Jan-2010 08:05:12 GMT

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

См. Также раздел под названием Недостатки файлов cookie .

2 голосов
/ 14 января 2010

не проверено и $ value составлено. Введите собственное значение $

$username="username";
$password="password";
$auth['password']=$password;
$auth['username']=$username;
$value = "password\&".$auth['password']."\&username\&".$auth['username'];
echo $value;
setcookie("wholesaleauth", $value, time()+3600,"/");

см. руководство по PHP для получения дополнительной информации

1 голос
/ 14 января 2010

Этот cookie выглядит не совсем правильно, какую библиотеку вы используете в perl (части $ co-> cookie)? Я бы предложил CGI :: Cookie в perl:

http://perldoc.perl.org/CGI/Cookie.html

Затем вы можете получить куки в PHP через переменную $ _COOKIE ['cookiename'] и установить их через setcookie:

http://php.net/manual/en/function.setcookie.php

0 голосов
/ 14 января 2010

Я смог заставить его работать должным образом, но вместо этого использовал setrawcookie.Это не будет использовать процентное кодирование и может быть идентичным cookie-файлам Perl.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...