summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Esser2014-02-18 14:52:12 +0100
committerStefan Esser2014-02-18 14:52:12 +0100
commit6fef70730793eccc4943bca48c47439cd19b213e (patch)
tree832e88b95420d99253cf61480df810c548992215
parent80e2f83cff1750937ba02916d2326ce75e09ef4c (diff)
Some tests for the cookie encryption feature from Ben
-rw-r--r--tests/cookie/crypt.checkraddr_4.phpt28
-rw-r--r--tests/cookie/crypt.checkraddr_4_incorrect.phpt26
-rw-r--r--tests/cookie/crypt.cryptlist.phpt29
-rw-r--r--tests/cookie/crypt.docroot.phpt27
-rw-r--r--tests/cookie/crypt.invalid.phpt26
-rw-r--r--tests/cookie/crypt.key_default.phpt23
-rw-r--r--tests/cookie/crypt.key_empty.phpt23
-rw-r--r--tests/cookie/crypt.key_empty_remote_addr.phpt27
-rw-r--r--tests/cookie/crypt.no_encryption.phpt16
-rw-r--r--tests/cookie/crypt.plainlist.phpt29
-rw-r--r--tests/cookie/crypt.raddr_1.phpt27
-rw-r--r--tests/cookie/crypt.raddr_2.phpt27
-rw-r--r--tests/cookie/crypt.raddr_3.phpt27
-rw-r--r--tests/cookie/crypt.raddr_4.phpt27
-rw-r--r--tests/cookie/crypt.ua.phpt27
15 files changed, 389 insertions, 0 deletions
diff --git a/tests/cookie/crypt.checkraddr_4.phpt b/tests/cookie/crypt.checkraddr_4.phpt
new file mode 100644
index 0000000..35c3495
--- /dev/null
+++ b/tests/cookie/crypt.checkraddr_4.phpt
@@ -0,0 +1,28 @@
1--TEST--
2cookie encryption with checkraddr=4
3--SKIPIF--
4<?php include "../skipif.inc"; ?>
5--INI--
6suhosin.cookie.encrypt=1
7suhosin.cookie.cryptkey=
8suhosin.cookie.cryptua=Off
9suhosin.cookie.cryptdocroot=Off
10suhosin.cookie.cryptraddr=0
11suhosin.cookie.checkraddr=4
12;suhosin.cookie.cryptlist=
13;suhosin.cookie.plainlist=
14--ENV--
15return <<<END
16REMOTE_ADDR=127.0.0.1
17END;
18--COOKIE--
19foo=EgJxlQxzPwoAcVFj395vssv3hy1rAem1lH9qZYUvRi8.
20--FILE--
21<?php
22var_dump($_COOKIE);
23?>
24--EXPECTF--
25array(1) {
26 ["foo"]=>
27 string(3) "bar"
28} \ No newline at end of file
diff --git a/tests/cookie/crypt.checkraddr_4_incorrect.phpt b/tests/cookie/crypt.checkraddr_4_incorrect.phpt
new file mode 100644
index 0000000..00c2e23
--- /dev/null
+++ b/tests/cookie/crypt.checkraddr_4_incorrect.phpt
@@ -0,0 +1,26 @@
1--TEST--
2cookie encryption with checkraddr=4
3--SKIPIF--
4<?php include "../skipif.inc"; ?>
5--INI--
6suhosin.cookie.encrypt=1
7suhosin.cookie.cryptkey=
8suhosin.cookie.cryptua=Off
9suhosin.cookie.cryptdocroot=Off
10suhosin.cookie.cryptraddr=0
11suhosin.cookie.checkraddr=4
12;suhosin.cookie.cryptlist=
13;suhosin.cookie.plainlist=
14--ENV--
15return <<<END
16REMOTE_ADDR=127.0.0.2
17END;
18--COOKIE--
19foo=EgJxlQxzPwoAcVFj395vssv3hy1rAem1lH9qZYUvRi8.
20--FILE--
21<?php
22var_dump($_COOKIE);
23?>
24--EXPECTF--
25array(0) {
26} \ No newline at end of file
diff --git a/tests/cookie/crypt.cryptlist.phpt b/tests/cookie/crypt.cryptlist.phpt
new file mode 100644
index 0000000..e56ac24
--- /dev/null
+++ b/tests/cookie/crypt.cryptlist.phpt
@@ -0,0 +1,29 @@
1--TEST--
2cookie encryption with cryptlist set
3--SKIPIF--
4<?php include "../skipif.inc"; ?>
5--INI--
6suhosin.cookie.encrypt=1
7suhosin.cookie.cryptkey=
8suhosin.cookie.cryptua=0
9suhosin.cookie.cryptdocroot=0
10suhosin.cookie.cryptraddr=0
11suhosin.cookie.checkraddr=0
12suhosin.cookie.cryptlist=a,b,foo,c
13;suhosin.cookie.plainlist=
14--ENV--
15return <<<END
16REMOTE_ADDR=127.0.0.1
17END;
18--COOKIE--
19a=b
20--FILE--
21<?php
22setcookie('foo', 'bar');
23setcookie('foo2', 'bar2');
24$ch = preg_grep("/^Set-Cookie:/", headers_list());
25echo join("\n", array_values($ch));
26?>
27--EXPECTF--
28Set-Cookie: foo=EgJxlQxzPwoAcVFj395vssv3hy1rAem1lH9qZYUvRi8.
29Set-Cookie: foo2=bar2 \ No newline at end of file
diff --git a/tests/cookie/crypt.docroot.phpt b/tests/cookie/crypt.docroot.phpt
new file mode 100644
index 0000000..9eeb24b
--- /dev/null
+++ b/tests/cookie/crypt.docroot.phpt
@@ -0,0 +1,27 @@
1--TEST--
2cookie encryption using document root
3--SKIPIF--
4<?php include "../skipif.inc"; ?>
5--INI--
6suhosin.cookie.encrypt=1
7suhosin.cookie.cryptkey=
8suhosin.cookie.cryptua=Off
9suhosin.cookie.cryptdocroot=On
10suhosin.cookie.cryptraddr=0
11suhosin.cookie.checkraddr=0
12;suhosin.cookie.cryptlist=
13;suhosin.cookie.plainlist=
14--ENV--
15return <<<END
16DOCUMENT_ROOT=/var/www
17END;
18--COOKIE--
19a=b
20--FILE--
21<?php
22setcookie('foo', 'bar');
23$ch = preg_grep("/^Set-Cookie:/", headers_list());
24echo join("\n", array_values($ch));
25?>
26--EXPECTF--
27Set-Cookie: foo=CY8CspcGmDQPsap1NqJO1uAjB6fobur1Os5ZCqFGhU8. \ No newline at end of file
diff --git a/tests/cookie/crypt.invalid.phpt b/tests/cookie/crypt.invalid.phpt
new file mode 100644
index 0000000..b1d11dd
--- /dev/null
+++ b/tests/cookie/crypt.invalid.phpt
@@ -0,0 +1,26 @@
1--TEST--
2cookie encryption with invalid cookie
3--SKIPIF--
4<?php include "../skipif.inc"; ?>
5--INI--
6suhosin.cookie.encrypt=1
7suhosin.cookie.cryptkey=
8suhosin.cookie.cryptua=Off
9suhosin.cookie.cryptdocroot=Off
10suhosin.cookie.cryptraddr=0
11suhosin.cookie.checkraddr=0
12;suhosin.cookie.cryptlist=
13;suhosin.cookie.plainlist=
14--ENV--
15return <<<END
16REMOTE_ADDR=127.0.0.1
17END;
18--COOKIE--
19foo=test
20--FILE--
21<?php
22var_dump($_COOKIE);
23?>
24--EXPECTF--
25array(0) {
26} \ No newline at end of file
diff --git a/tests/cookie/crypt.key_default.phpt b/tests/cookie/crypt.key_default.phpt
new file mode 100644
index 0000000..91b1fcf
--- /dev/null
+++ b/tests/cookie/crypt.key_default.phpt
@@ -0,0 +1,23 @@
1--TEST--
2cookie encryption with default key
3--SKIPIF--
4<?php include "../skipif.inc"; ?>
5--INI--
6suhosin.cookie.encrypt=1
7suhosin.cookie.cryptkey=D3F4UL7
8suhosin.cookie.cryptua=0
9suhosin.cookie.cryptdocroot=0
10suhosin.cookie.cryptraddr=0
11suhosin.cookie.checkraddr=0
12;suhosin.cookie.cryptlist=
13;suhosin.cookie.plainlist=
14--COOKIE--
15a=b
16--FILE--
17<?php
18setcookie('foo', 'bar');
19$ch = preg_grep("/^Set-Cookie:/", headers_list());
20echo join("\n", array_values($ch));
21?>
22--EXPECTF--
23Set-Cookie: foo=Jq5FsTmo4aEWrLMKdoEeUuFxZ4IujCzrQjg-8Y-xphg. \ No newline at end of file
diff --git a/tests/cookie/crypt.key_empty.phpt b/tests/cookie/crypt.key_empty.phpt
new file mode 100644
index 0000000..1736575
--- /dev/null
+++ b/tests/cookie/crypt.key_empty.phpt
@@ -0,0 +1,23 @@
1--TEST--
2cookie encryption with empty key
3--SKIPIF--
4<?php include "../skipif.inc"; ?>
5--INI--
6suhosin.cookie.encrypt=1
7suhosin.cookie.cryptkey=
8suhosin.cookie.cryptua=0
9suhosin.cookie.cryptdocroot=0
10suhosin.cookie.cryptraddr=0
11suhosin.cookie.checkraddr=0
12;suhosin.cookie.cryptlist=
13;suhosin.cookie.plainlist=
14--COOKIE--
15a=b
16--FILE--
17<?php
18setcookie('foo', 'bar');
19$ch = preg_grep("/^Set-Cookie:/", headers_list());
20echo join("\n", array_values($ch));
21?>
22--EXPECTF--
23Set-Cookie: foo=Jq5FsTmo4aEWrLMKdoEeUuFxZ4IujCzrQjg-8Y-xphg. \ No newline at end of file
diff --git a/tests/cookie/crypt.key_empty_remote_addr.phpt b/tests/cookie/crypt.key_empty_remote_addr.phpt
new file mode 100644
index 0000000..fb00766
--- /dev/null
+++ b/tests/cookie/crypt.key_empty_remote_addr.phpt
@@ -0,0 +1,27 @@
1--TEST--
2cookie encryption with empty key and REMOTE_ADDR set
3--SKIPIF--
4<?php include "../skipif.inc"; ?>
5--INI--
6suhosin.cookie.encrypt=1
7suhosin.cookie.cryptkey=
8suhosin.cookie.cryptua=0
9suhosin.cookie.cryptdocroot=0
10suhosin.cookie.cryptraddr=0
11suhosin.cookie.checkraddr=0
12;suhosin.cookie.cryptlist=
13;suhosin.cookie.plainlist=
14--ENV--
15return <<<END
16REMOTE_ADDR=127.0.0.1
17END;
18--COOKIE--
19a=b
20--FILE--
21<?php
22setcookie('foo', 'bar');
23$ch = preg_grep("/^Set-Cookie:/", headers_list());
24echo join("\n", array_values($ch));
25?>
26--EXPECTF--
27Set-Cookie: foo=EgJxlQxzPwoAcVFj395vssv3hy1rAem1lH9qZYUvRi8. \ No newline at end of file
diff --git a/tests/cookie/crypt.no_encryption.phpt b/tests/cookie/crypt.no_encryption.phpt
new file mode 100644
index 0000000..095ce5f
--- /dev/null
+++ b/tests/cookie/crypt.no_encryption.phpt
@@ -0,0 +1,16 @@
1--TEST--
2cookie without encryption
3--SKIPIF--
4<?php include "../skipif.inc"; ?>
5--INI--
6suhosin.cookie.encrypt=0
7--COOKIE--
8a=b
9--FILE--
10<?php
11setcookie('foo', 'bar');
12$ch = preg_grep("/^Set-Cookie:/", headers_list());
13echo join("\n", array_values($ch));
14?>
15--EXPECTF--
16Set-Cookie: foo=bar \ No newline at end of file
diff --git a/tests/cookie/crypt.plainlist.phpt b/tests/cookie/crypt.plainlist.phpt
new file mode 100644
index 0000000..8a29bb0
--- /dev/null
+++ b/tests/cookie/crypt.plainlist.phpt
@@ -0,0 +1,29 @@
1--TEST--
2cookie encryption with plainlist set
3--SKIPIF--
4<?php include "../skipif.inc"; ?>
5--INI--
6suhosin.cookie.encrypt=1
7suhosin.cookie.cryptkey=
8suhosin.cookie.cryptua=0
9suhosin.cookie.cryptdocroot=0
10suhosin.cookie.cryptraddr=0
11suhosin.cookie.checkraddr=0
12;suhosin.cookie.cryptlist=
13suhosin.cookie.plainlist=a,b,foo2,c
14--ENV--
15return <<<END
16REMOTE_ADDR=127.0.0.1
17END;
18--COOKIE--
19a=b
20--FILE--
21<?php
22setcookie('foo', 'bar');
23setcookie('foo2', 'bar2');
24$ch = preg_grep("/^Set-Cookie:/", headers_list());
25echo join("\n", array_values($ch));
26?>
27--EXPECTF--
28Set-Cookie: foo=EgJxlQxzPwoAcVFj395vssv3hy1rAem1lH9qZYUvRi8.
29Set-Cookie: foo2=bar2 \ No newline at end of file
diff --git a/tests/cookie/crypt.raddr_1.phpt b/tests/cookie/crypt.raddr_1.phpt
new file mode 100644
index 0000000..54400b5
--- /dev/null
+++ b/tests/cookie/crypt.raddr_1.phpt
@@ -0,0 +1,27 @@
1--TEST--
2cookie encryption using REMOTE_ADDR (cryptraddr=1)
3--SKIPIF--
4<?php include "../skipif.inc"; ?>
5--INI--
6suhosin.cookie.encrypt=1
7suhosin.cookie.cryptkey=
8suhosin.cookie.cryptua=Off
9suhosin.cookie.cryptdocroot=Off
10suhosin.cookie.cryptraddr=1
11suhosin.cookie.checkraddr=0
12;suhosin.cookie.cryptlist=
13;suhosin.cookie.plainlist=
14--ENV--
15return <<<END
16REMOTE_ADDR=127.0.0.1
17END;
18--COOKIE--
19a=b
20--FILE--
21<?php
22setcookie('foo', 'bar');
23$ch = preg_grep("/^Set-Cookie:/", headers_list());
24echo join("\n", array_values($ch));
25?>
26--EXPECTF--
27Set-Cookie: foo=lwB1g2gEIQbzRLsbKEyLcKlmu6kpBNRd6sft46-la-4. \ No newline at end of file
diff --git a/tests/cookie/crypt.raddr_2.phpt b/tests/cookie/crypt.raddr_2.phpt
new file mode 100644
index 0000000..e87b5e7
--- /dev/null
+++ b/tests/cookie/crypt.raddr_2.phpt
@@ -0,0 +1,27 @@
1--TEST--
2cookie encryption using REMOTE_ADDR (cryptraddr=2)
3--SKIPIF--
4<?php include "../skipif.inc"; ?>
5--INI--
6suhosin.cookie.encrypt=1
7suhosin.cookie.cryptkey=
8suhosin.cookie.cryptua=Off
9suhosin.cookie.cryptdocroot=Off
10suhosin.cookie.cryptraddr=2
11suhosin.cookie.checkraddr=0
12;suhosin.cookie.cryptlist=
13;suhosin.cookie.plainlist=
14--ENV--
15return <<<END
16REMOTE_ADDR=127.0.0.1
17END;
18--COOKIE--
19a=b
20--FILE--
21<?php
22setcookie('foo', 'bar');
23$ch = preg_grep("/^Set-Cookie:/", headers_list());
24echo join("\n", array_values($ch));
25?>
26--EXPECTF--
27Set-Cookie: foo=iTnKmpON_PFkZ2Sv8omXt_myOw0LIxwZTmj5OZYQ5c8. \ No newline at end of file
diff --git a/tests/cookie/crypt.raddr_3.phpt b/tests/cookie/crypt.raddr_3.phpt
new file mode 100644
index 0000000..a1394a5
--- /dev/null
+++ b/tests/cookie/crypt.raddr_3.phpt
@@ -0,0 +1,27 @@
1--TEST--
2cookie encryption using REMOTE_ADDR (cryptraddr=3)
3--SKIPIF--
4<?php include "../skipif.inc"; ?>
5--INI--
6suhosin.cookie.encrypt=1
7suhosin.cookie.cryptkey=
8suhosin.cookie.cryptua=Off
9suhosin.cookie.cryptdocroot=Off
10suhosin.cookie.cryptraddr=3
11suhosin.cookie.checkraddr=0
12;suhosin.cookie.cryptlist=
13;suhosin.cookie.plainlist=
14--ENV--
15return <<<END
16REMOTE_ADDR=127.0.0.1
17END;
18--COOKIE--
19a=b
20--FILE--
21<?php
22setcookie('foo', 'bar');
23$ch = preg_grep("/^Set-Cookie:/", headers_list());
24echo join("\n", array_values($ch));
25?>
26--EXPECTF--
27Set-Cookie: foo=q2LriHN5UE2RN8YKu8N-k2hE5ShtXbk8vZooBU0idWg. \ No newline at end of file
diff --git a/tests/cookie/crypt.raddr_4.phpt b/tests/cookie/crypt.raddr_4.phpt
new file mode 100644
index 0000000..2862f9f
--- /dev/null
+++ b/tests/cookie/crypt.raddr_4.phpt
@@ -0,0 +1,27 @@
1--TEST--
2cookie encryption using REMOTE_ADDR (cryptraddr=4)
3--SKIPIF--
4<?php include "../skipif.inc"; ?>
5--INI--
6suhosin.cookie.encrypt=1
7suhosin.cookie.cryptkey=
8suhosin.cookie.cryptua=Off
9suhosin.cookie.cryptdocroot=Off
10suhosin.cookie.cryptraddr=4
11suhosin.cookie.checkraddr=0
12;suhosin.cookie.cryptlist=
13;suhosin.cookie.plainlist=
14--ENV--
15return <<<END
16REMOTE_ADDR=127.0.0.1
17END;
18--COOKIE--
19a=b
20--FILE--
21<?php
22setcookie('foo', 'bar');
23$ch = preg_grep("/^Set-Cookie:/", headers_list());
24echo join("\n", array_values($ch));
25?>
26--EXPECTF--
27Set-Cookie: foo=KYNdxYn5b1vujSEplr6YyON2A04YRH0YY4pCZWQDxG8. \ No newline at end of file
diff --git a/tests/cookie/crypt.ua.phpt b/tests/cookie/crypt.ua.phpt
new file mode 100644
index 0000000..48a98b3
--- /dev/null
+++ b/tests/cookie/crypt.ua.phpt
@@ -0,0 +1,27 @@
1--TEST--
2cookie with encryption using HTTP_USER_AGENT
3--SKIPIF--
4<?php include "../skipif.inc"; ?>
5--INI--
6suhosin.cookie.encrypt=1
7suhosin.cookie.cryptkey=
8suhosin.cookie.cryptua=On
9suhosin.cookie.cryptdocroot=0
10suhosin.cookie.cryptraddr=0
11suhosin.cookie.checkraddr=0
12;suhosin.cookie.cryptlist=
13;suhosin.cookie.plainlist=
14--ENV--
15return <<<END
16HTTP_USER_AGENT=test
17END;
18--COOKIE--
19a=b
20--FILE--
21<?php
22setcookie('foo', 'bar');
23$ch = preg_grep("/^Set-Cookie:/", headers_list());
24echo join("\n", array_values($ch));
25?>
26--EXPECTF--
27Set-Cookie: foo=ZWvJsNdplAsT5Uz57vuUq7-_pbjyXTGeMrUfSrgre5w. \ No newline at end of file