Parcourir la source

Allow /reset/mail/ only from localhost

Block connection from outside, that could brute force password guessing
dpeca il y a 7 ans
Parent
commit
b7c19a8e63
1 fichiers modifiés avec 17 ajouts et 0 suppressions
  1. 17 0
      web/reset/mail/index.php

+ 17 - 0
web/reset/mail/index.php

@@ -5,6 +5,23 @@ error_reporting(NULL);
 
 include($_SERVER['DOCUMENT_ROOT']."/inc/main.php");
 
+// Checking IP of incoming connection, checking is it NAT address
+$ok=0;
+$ip=$_SERVER['REMOTE_ADDR'];
+exec (VESTA_CMD."v-list-sys-ips json", $output, $return_var);
+$output=implode('', $output);
+$arr=json_decode($output, true);
+foreach ($arr as $arr_key => $arr_val) {
+    // search for NAT IPs and allow them
+	if ($ip==$arr_key || $ip==$arr_val['NAT']) {
+		$ok=1;
+		break;
+	}
+}
+if ($ip == $_SERVER['SERVER_ADDR']) $ok=1;
+if ($ip == '127.0.0.1') $ok=1;
+if ($ok==0) exit;
+
 //
 // sourceforge.net/projects/postfixadmin/
 // md5crypt