# 264/tcp - Pentesting Check Point Firewall

Tip

Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Μάθετε & εξασκηθείτε στο Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Υποστηρίξτε το HackTricks

Είναι δυνατή η αλληλεπίδραση με τα CheckPoint Firewall-1 firewalls για την ανακάλυψη πολύτιμων πληροφοριών, όπως το όνομα του firewall και το όνομα του management station. Αυτό μπορεί να γίνει στέλνοντας ένα query στην θύρα 264/TCP.

Απόκτηση ονομάτων Firewall και Management Station

Χρησιμοποιώντας ένα pre-authentication request, μπορείτε να εκτελέσετε ένα module που στοχεύει το CheckPoint Firewall-1. Οι απαραίτητες εντολές για αυτήν τη λειτουργία παρατίθενται παρακάτω:

use auxiliary/gather/checkpoint_hostname
set RHOST 10.10.10.10

Κατά την εκτέλεση, το module προσπαθεί να επικοινωνήσει με την υπηρεσία SecuRemote Topology του firewall. Εάν η επικοινωνία είναι επιτυχής, επιβεβαιώνει την παρουσία ενός CheckPoint Firewall και ανακτά τα ονόματα τόσο του firewall όσο και του SmartCenter management host. Ακολουθεί ένα παράδειγμα του πώς μπορεί να μοιάζει η έξοδος:

[*] 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

Εναλλακτική μέθοδος για Hostname and ICA Name Discovery

Μια άλλη τεχνική περιλαμβάνει μια απευθείας command που στέλνει ένα συγκεκριμένο query στο firewall και αναλύει την response για να εξαγάγει το hostname και το ICA name του firewall. Η εντολή και η δομή της είναι ως εξής:

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-

Η έξοδος από αυτήν την εντολή παρέχει λεπτομερείς πληροφορίες σχετικά με το όνομα πιστοποιητικού (CN) και την οργάνωση (O) του firewall, όπως φαίνεται παρακάτω:

CN=Panama,O=MGMTT.srv.rxfrmi

HTTP Security Server Σφάλμα Format String (CAN-2004-0039)

Επηρεασμένες εκδόσεις: NG FCS, NG FP1, NG FP2, NG FP3 HF2, και NG με Application Intelligence R54/R55.
Απαίτηση: Ο HTTP Security Server ή ο AI HTTP proxy πρέπει να είναι ενεργοποιημένος και να πραγματοποιεί διαφανή επιθεώρηση της στοχευόμενης θύρας· αν η επιθεώρηση HTTP είναι απενεργοποιημένη, το ευάλωτο μονοπάτι κώδικα δεν φτάνεται ποτέ.

Προκαλώντας τον χειριστή σφαλμάτων

Ο proxy απορρίπτει κακώς διαμορφωμένα HTTP μηνύματα και κατασκευάζει τη δική του σελίδα σφάλματος με sprintf(errbuf, attacker_string);, επιτρέποντας bytes που ελέγχονται από attacker να λειτουργήσουν ως format string. Στείλτε ένα μη έγκυρο request μέσω του firewall και αναζητήστε ένα σφάλμα που δημιουργήθηκε από τον proxy και αντικατοπτρίζει το 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

  • Αναγκάστε τον parser να εισέλθει στη ρουτίνα σφάλματος (invalid method, URI, or headers).
  • Τοποθετήστε attacker-controlled dwords στην αρχή, ώστε οι %x, %s, και %n directives να τα αντιμετωπίζουν ως stack arguments.
  • Χρησιμοποιήστε %x/%s για να leak pointers, στη συνέχεια %n/%hn για να γράψετε το formatted byte count σε επιλεγμένες διευθύνσεις, υπερεγγράφοντας return pointers, vtables, ή heap metadata πριν hijack την εκτέλεση με injected shellcode ή ROP.

Heap overflow primitive

Το ίδιο unsafe sprintf() γράφει σε έναν heap buffer σταθερού μεγέθους. Συνδυάστε ένα μεγάλο request body με υπερμεγέθεις directives (π.χ. %99999x) ώστε το formatted output να υπερβαίνει την allocation και να καταστρέφει γειτονικές heap structures, επιτρέποντάς σας να κατασκευάσετε freelist pointers ή function tables που θα dereferenced αργότερα.

Impact

Ο συμβιβασμός του proxy δίνει code execution μέσα στη διαδικασία του firewall (SYSTEM on Windows appliances, root on UNIX), επιτρέποντας rule manipulation, traffic interception και pivoting βαθύτερα στο management network.

References

Tip

Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Μάθετε & εξασκηθείτε στο Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Υποστηρίξτε το HackTricks