# 264/tcp - Pentesting Check Point Firewall

Tip

Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Aprenda e pratique Hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Supporte o HackTricks

É possível interagir com firewalls CheckPoint Firewall-1 para descobrir informações valiosas, como o nome do firewall e o nome da estação de gerenciamento. Isso pode ser feito enviando uma consulta para a porta 264/TCP.

Obtendo os nomes do firewall e da estação de gerenciamento

Usando uma requisição pré-autenticação, você pode executar um módulo que tem como alvo o CheckPoint Firewall-1. Os comandos necessários para essa operação estão listados abaixo:

use auxiliary/gather/checkpoint_hostname
set RHOST 10.10.10.10

Ao ser executado, o módulo tenta contatar o serviço SecuRemote Topology do firewall. Se for bem-sucedido, confirma a presença de um CheckPoint Firewall e recupera os nomes tanto do firewall quanto do host de gerenciamento SmartCenter. Abaixo está um exemplo de como a saída pode ser:

[*] Attempting to contact Checkpoint FW1 SecuRemote Topology service...
[+] Appears to be a CheckPoint Firewall...
[+] Firewall Host: FIREFIGHTER-SEC
[+] SmartCenter Host: FIREFIGHTER-MGMT.example.com
[*] Auxiliary module execution completed

Método Alternativo para Descoberta do Hostname e do Nome ICA

Outra técnica envolve um comando direto que envia uma query específica para o firewall e analisa a resposta para extrair o hostname do firewall e o nome ICA. O comando e sua estrutura são os seguintes:

printf '\x51\x00\x00\x00\x00\x00\x00\x21\x00\x00\x00\x0bsecuremote\x00' | nc -q 1 10.10.10.10 264 | grep -a CN | cut -c 2-

A saída deste comando fornece informações detalhadas sobre o nome do certificado (CN) e a organização (O) do firewall, conforme mostrado abaixo:

CN=Panama,O=MGMTT.srv.rxfrmi

HTTP Security Server Format String Bug (CAN-2004-0039)

Builds afetados: NG FCS, NG FP1, NG FP2, NG FP3 HF2, and NG with Application Intelligence R54/R55.
Requisito: O HTTP Security Server ou o AI HTTP proxy devem estar habilitados e inspecionando de forma transparente a porta alvo; se a inspeção HTTP estiver desativada o caminho de código vulnerável nunca é alcançado.

Acionando o manipulador de erros

O proxy rejeita mensagens HTTP malformadas e constrói sua própria página de erro com sprintf(errbuf, attacker_string);, permitindo que bytes controlados pelo atacante atuem como a string de formato. Envie uma requisição inválida através do firewall e procure por um erro gerado pelo proxy que reflita seu payload:

printf 'BOGUS%%08x%%08x%%08x%%n HTTP/1.0\r\nHost: internal.local\r\n\r\n' | nc -nv [FIREWALL_IP] 80

If HTTP inspection is active, the firewall (not the backend server) answers immediately, proving the middlebox parsed and replayed the request line.

Exploração

Format string primitive

  • Forçar o parser a entrar na rotina de erro (invalid method, URI, or headers).
  • Coloque dwords controlados pelo atacante no início para que %x, %s, e %n directives os tratem como argumentos de pilha.
  • Use %x/%s para leak pointers, então %n/%hn para escrever a contagem de bytes formatada em endereços escolhidos, sobrescrevendo return pointers, vtables ou heap metadata antes de hijacking da execução com shellcode injetado ou ROP.

Heap overflow primitive

O mesmo unsafe sprintf() escreve em um buffer de heap de tamanho fixo. Misture um corpo de requisição longo com diretivas oversized (por exemplo, %99999x) para que a saída formatada ultrapasse a alocação e corrompa estruturas de heap adjacentes, permitindo forjar freelist pointers ou function tables que serão posteriormente desreferenciadas.

Impacto

O comprometimento do proxy concede execução de código dentro do processo do firewall (SYSTEM on Windows appliances, root on UNIX), permitindo manipulação de regras, interceptação de tráfego e pivoting mais profundo na rede de gerenciamento.

Referências

Tip

Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Aprenda e pratique Hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Supporte o HackTricks