Esto se debe a las "magic quotes"; no tiene nada que ver con el register globals. Puedes buscar información al respecto en el manual de PHP.
Yo personalmente, y precisamente para evitar estos problemas entre distintas configuraciones de php, uso esta sencilla función:
Código PHP:
Ver originalfunction clear_gpc_slashes($string) {
}
De tal forma que tu código quedaría así:
$buscarCat = "select NombreCategoria from categorias where idCat=".clear_gpc_slashes($_GET["cat"]);
Así te funcionará tanto en local como en el servidor.
Sin embargo te recomiendo encarecidamente que leas al respecto de las magic quotes en el manual, ya que implica temas de seguridad importantes y que estás pasando por alto.(Inyección SQL para más referencias)
Saludos.