A resposta curta é que você precisa ter permissão de execução ou superior (5) em um diretório para listar o conteúdo desse diretório. Você pode acessar arquivos em um diretório se tiver permissão de leitura (4), mas você precisa saber o nome do arquivo porque não é possível listar o conteúdo do diretório.
Assim, o usuário que você está usando para acessar o diretório não é o usuário que possui o diretório (porque então a permissão '7' se aplicaria. Assim, para corrigir isso, use o modo 755 no diretório, ou faça com que o mesmo usuário possui o diretório e o acessa, ou, é claro, sempre sabe o nome exato que você está tentando acessar no diretório, então a permissão 4 é suficiente.