estoy intentando que si un archivo de un dominio b es incluido desde un dominio a pero sin ninguna autorizacion se bloquee la ejecucion del script, ahora vien existen medidas para implementar como .htaccess , open base dir , y una constante de acceso .
ahora bien si estas medidas son vulneradas yo estoy intentando pensar como bloquear la ejecucion con otra medida
al principio de los archivos a proteger
Código PHP:
Ver original
if( ! defined('FileAccess') || FileAccess != hash('whirlpool',php_uname().php_sapi_name().phpversion(),false) ) { }
veran que existe la constante de acceso pero esta puede ser vulnerada ahora bien para que no suceda eso se crea la contante con los datos :
Código PHP:
Ver original
un hash con el sistema la api y la version de php , si un dominio a llama a un fichero de un dominiob sin autorizacion esta medida previene la ejecucion ya que es muy dificil que se de que ambos dominios tengan el mismo sistema ,api y version de php , si estos se dan no habria manera de bloquear el acceso
ahora se comparan y solo se dara acceso al codigo incluido si ambos hash son iguales
index.php / dominio a
Código PHP:
Ver original
include 'h t t p:// dominiob/core/benchmarck.php';
benchmarck.php dominio b
Código PHP:
Ver original
if( ! defined('FileAccess') || FileAccess != hash('whirlpool',php_uname().php_sapi_name().phpversion(),false) ) { }
para tener acceso se debe definir la contstante en el mismo dominio en los ficheros en los que es llamado y ademas que los datos sean iguales o para vulnerarlo se deberia de saber el nombre de la constante que si es un framework conocido es facil saberla pero ahora aunque se sepa con esta medida es dificil vulenerarla ya que se deberia de conocer la version de php de la api y el sistema .
Código PHP:
Ver original
ahora bien mi duda es la siguiente :
- si yo llamo al archivo del dominiob protegido desde el dominioa , las funciones php_uname,sapi_uname y phpversion que estan en el archivo protegido , obtendran los datos del dominio a o b (donde es llamado o donde esta alojado), ya que esto no lo puedo probar no tengo manera de comprobarlo , en local siempre son iguales ya que estan en el mismo servidor .
si al incluir el archivo en el dominoa este obtiene los resultados del dominioa mi idea no sirve para nada.
Si alguien que tenga 2 dominios pudiera ayudarme y hacerme un test rapido se lo agradeceria el test seria el siguiente
dominio 1 . archivo.php
contenido
Código PHP:
Ver original
<?php include 'dominio2/archivo.php'; ?>
dominio 2 . archivo.php
contenido
Código PHP:
Ver original
<?php if( ! defined('FileAccess') || FileAccess != hash('whirlpool',php_uname().php_sapi_name().phpversion(),false) ) { } else { } ?>
y me reportara el resultado obtenido y me especificara si estan en servidores diferentes o no , se lo agradeceria un monton .
haber si me pueden ayudar y dar su opinion sobre lo comentado .
saludos .. . .::