summaryrefslogtreecommitdiffstats
path: root/server/app/index.php
blob: 9c9f99937fd77db3b9400d52d3da2157295bddcd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<?php

session_start();

function main() {
	if ($_SERVER["REQUEST_METHOD"] == "POST"
			&& $_SERVER["REQUEST_URI"] == "/submit") {
		if (!isset($_SESSION["expiry"])) {
			echo "Invalid session!";
			return;
		}

		if (time() > $_SESSION["expiry"]) {
			echo "You're too slow!";
			return;
		}

		if (intval($_POST["next"]) != $_SESSION["next"]) {
			echo "Wrong prediction!";
			return;
		}

		echo "FLAG " . getenv("FLAG");
	} else {
		srand(random_int(0, 4294967295));

		$t = time();
		echo strval($t) . "\n";

		echo strval(rand()) . "\n";
		for ($i = 0; $i < 300; $i++) {
			if (($i % 60) == ($t % 60)) {
				echo strval(rand()) . "\n";
			} else {
				rand();
			}
		}

		$_SESSION["next"] = rand();
		$_SESSION["expiry"] = time() + 60;

		echo "Good luck :P";
	}
}

main();

?>