# 264/tcp - Pentesting Check Point Firewall
Tip
Apprenez et pratiquez le hacking AWS :
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP :HackTricks Training GCP Red Team Expert (GRTE)
Apprenez et pratiquez le hacking Azure :
HackTricks Training Azure Red Team Expert (AzRTE)
Soutenir HackTricks
- Vérifiez les plans d’abonnement !
- Rejoignez le 💬 groupe Discord ou le groupe telegram ou suivez-nous sur Twitter 🐦 @hacktricks_live.
- Partagez des astuces de hacking en soumettant des PR au HackTricks et HackTricks Cloud dépôts github.
Il est possible d’interagir avec les pare-feu CheckPoint Firewall-1 pour découvrir des informations utiles, comme le nom du pare-feu et le nom de la station de gestion. Cela peut être fait en envoyant une requête au port 264/TCP.
Obtention des noms du pare-feu et de la station de gestion
En utilisant une requête de pré-authentification, vous pouvez exécuter un module ciblant le CheckPoint Firewall-1. Les commandes nécessaires pour cette opération sont indiquées ci-dessous :
use auxiliary/gather/checkpoint_hostname
set RHOST 10.10.10.10
Lors de son exécution, le module tente de contacter le service SecuRemote Topology du firewall. S’il réussit, il confirme la présence d’un CheckPoint Firewall et récupère les noms du firewall et de l’hôte de gestion SmartCenter. Voici un exemple de ce à quoi la sortie pourrait ressembler :
[*] 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éthode alternative pour la découverte du Hostname et de l’ICA Name
Une autre technique consiste en une commande directe qui envoie une requête spécifique au firewall et qui analyse la réponse pour extraire le hostname et l’ICA Name du firewall. La commande et sa structure sont les suivantes :
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-
La sortie de cette commande fournit des informations détaillées concernant le nom du certificat (CN) et l’organisation (O) du pare-feu, comme illustré ci-dessous :
CN=Panama,O=MGMTT.srv.rxfrmi
HTTP Security Server Format String Bug (CAN-2004-0039)
Versions affectées : NG FCS, NG FP1, NG FP2, NG FP3 HF2, et NG avec Application Intelligence R54/R55. Prérequis : Le HTTP Security Server ou le AI HTTP proxy doivent être activés et inspecter de manière transparente le port ciblé; si l’inspection HTTP est désactivée le chemin de code vulnérable n’est jamais atteint.
Déclenchement du gestionnaire d’erreurs
Le proxy rejette les messages HTTP malformés et construit sa propre page d’erreur avec sprintf(errbuf, attacker_string);, permettant aux octets contrôlés par l’attaquant d’être utilisés comme chaîne de format. Envoyez une requête invalide à travers le firewall et cherchez une erreur générée par le proxy qui reflète votre 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.
Exploitation
Format string primitive
- Forcer le parser à entrer dans la routine d’erreur (invalid method, URI, or headers).
- Placer des attacker-controlled dwords en tête pour que les directives
%x,%s, et%nles traitent comme des arguments de la pile. - Utiliser
%x/%spour leak pointers, puis%n/%hnpour écrire le nombre d’octets formatés dans des adresses choisies, écrasant return pointers, vtables, ou heap metadata avant de hijacker l’exécution avec du shellcode injecté ou ROP.
Heap overflow primitive
Le même unsafe sprintf() écrit dans un buffer heap de taille fixe. Mélangez un long request body avec des directives surdimensionnées (p. ex. %99999x) pour que la sortie formatée dépasse l’allocation et corrompe les structures heap adjacentes, vous permettant de forger freelist pointers ou function tables qui seront ensuite déréférencées.
Impact
La compromission du proxy permet l’exécution de code dans le processus firewall (SYSTEM sur les appliances Windows, root sur UNIX), autorisant la manipulation des règles, l’interception du trafic et le pivoting plus en profondeur dans le management network.
Références
- https://supportcenter.checkpoint.com/supportcenter/portal?eventSubmit_doGoviewsolutiondetails=&solutionid=sk69360
- https://bitvijays.github.io/LFF-IPS-P2-VulnerabilityAnalysis.html#check-point-firewall-1-topology-port-264
- https://www.cisa.gov/news-events/alerts/2004/02/05/http-parsing-vulnerabilities-check-point-firewall-1
- http://xforce.iss.net/xforce/alerts/id/162
Tip
Apprenez et pratiquez le hacking AWS :
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP :HackTricks Training GCP Red Team Expert (GRTE)
Apprenez et pratiquez le hacking Azure :
HackTricks Training Azure Red Team Expert (AzRTE)
Soutenir HackTricks
- Vérifiez les plans d’abonnement !
- Rejoignez le 💬 groupe Discord ou le groupe telegram ou suivez-nous sur Twitter 🐦 @hacktricks_live.
- Partagez des astuces de hacking en soumettant des PR au HackTricks et HackTricks Cloud dépôts github.


