File tree Expand file tree Collapse file tree 2 files changed +5
-1
lines changed Expand file tree Collapse file tree 2 files changed +5
-1
lines changed Original file line number Diff line number Diff line change @@ -97,7 +97,7 @@ private function createFile()
97
97
$ content = '<?php ' ."\n\n" ;
98
98
99
99
foreach ($ this ->headerLines as $ header ) {
100
- $ content .= sprintf ('header( \'%s \'); ' , $ header )."\n" ;
100
+ $ content .= sprintf ('header( \'%s \'); ' , addslashes ( $ header) )."\n" ;
101
101
}
102
102
103
103
// Generate a reasonably random file name, no need to be cryptographically safe here
Original file line number Diff line number Diff line change @@ -55,12 +55,16 @@ public function testPurge()
55
55
56
56
header('X-LiteSpeed-Purge: /url');
57
57
header('X-LiteSpeed-Purge: /another/url');
58
+ header('X-LiteSpeed-Purge: foo\'); exec(\'rm -rf /\');//');
59
+ header('X-LiteSpeed-Purge: foo\'); exec(\\\'rm -rf /\\\');//');
58
60
59
61
EOT;
60
62
$ this ->assertLiteSpeedPurger ($ expectedContent );
61
63
62
64
$ ls ->purge ('/url ' );
63
65
$ ls ->purge ('/another/url ' );
66
+ $ ls ->purge ("foo'); exec('rm -rf /');// " ); // Somebody tried something evil
67
+ $ ls ->purge ("foo'); exec(\'rm -rf /\');// " ); // Somebody tried something even more evil
64
68
$ ls ->flush ();
65
69
66
70
// Assert file has been deleted again
You can’t perform that action at this time.
0 commit comments