1. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
Les nouvelles APIs Checkpoint
2. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
Définition
Application Programming Interface
3. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
Une API est une interface d’interaction avec une application logicielle.
Les principales caractéristiques d’une API :
Un langage de programmation
Un protocole de communication
Une structure de données
Un ensemble de fonctions
Les API permettent l’automatisation de processus technique (Scripting)
et/ou l’adaptation ergonomique à des besoins spécifiques (Frontend).
Application Programming Interface : Définition
4. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
Web API : RESTFUL vs SOAP
Bien qu’il ne fait pas de sens de directement comparer SOAP et
REST, on peut tout de même noter quelques distinctions :
REST offre par design une plus grande scalabilité ainsi que de
meilleures performances grâce notamment au caching et à
l’utilisation de formats plus efficace qu’XML (e.g. JSON).
Le développement d’une application Web en JavaScript est
beaucoup plus simple et léger avec REST qu’avec SOAP.
SOAP est standardisé et fournit un grand nombre d’extensions
qui le sont elles aussi.
SOAP permet de facilement générer des clients pour une API
grace à WSDL.
Extrait de l’article
«Architecture d’une API Web»
publié sur le Blog E-xpert
Solutions par le pôle R&D
5. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
Qu’est ce qu’une API RESTFUL
Les Services WEB construits sur une API RESTFul délivrent un
mécanisme permettant l’accès, l’ajout et la suppression d’objets au
sein d’une application donnée.
Les APIs RESTFul s’appuyant sur le protocole HTTP :
Héritent des méthodes HTTP standard (OPTIONS, GET, PUT, POST, et DELETE)
Sont accessibles via une URL type (https://server/web_api/)
6. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
L’ancienne approche OPSEC SDK est désormais remplacée par le
standard RestFul (REpresentational State Transfer)
L’implementation des WEB APIs Checkpoint
Utilise exclusivement la méthode HTTP POST
S’appuie sur les objets JSON (Javascript Objects Notation) pour le formatage du contenu
JSON est un format de données textuelles
Simple à manipuler autant pour les ressources humaines que pour les machines
Les APIs Checkpoint R80.xx , de l’OPSEC au RestFul
7. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
Le format JSON
Les données JSON sont présentées sous 2
formats :
Un ensemble de couples «nom/valeur» appelés «objects»
Le nom est une chaîne de caractères
Les valeurs peuvents être de type string, number,
object, boolean ou null
Des listes ordonnées de valeurs, appelées «arrays»
8. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
Le format JSON : syntaxe détaillée
Les objets JSON (objects)
Un objet JSON est délimité par un couple d’accolades “{}” englobant des paires
nom/valeur.
Le caractère “:” permet la séparation nom / valeur
Les couples nom/valeur sont séparés par des “,”
Les tableaux JSON (arrays)
Un tableau JSON est délimité par une paire de crochets “[]”.
Les valeurs sont séparées par des virgules “,”
9. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
JSON : les objets, exemple
HTTP POST https://<mgmt>/web_api/add-host
Headers: Content-Type: application/json
x-chkp-sid: XXX333_YYYZZZÅÅÅÄÄÄÖÖÖ
Body {
"name" : "host1",
"ip-address" : "1.1.1.1",
"tags" : ["First", "Second", "Third"]
"nat-settings" : {
"auto-rule" : true,
"ip-address" : "192.0.0.1",
}
}
10. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
Les APIs Checkpoint
11. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
L’API de Management
L’API Threat Prevention
L’API Identity Awareness
Les APIs actuellement à disposition
12. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
L’API de Management : Fonction
Permet de manipuler les objets
presents dans la DB du
Security Management Server
Commandes
• LOGIN
• ADD
• SET
• SHOW
• DELETE
• PUBLISH
• DISCARD
• LOGOUT
… and more ;-)
Exemples d’arguments
• Network Objects
• Host
• Network
• Group
• Services and Applications
• Service-tcp
• Service-udp
• Policy
• Install policy
• package
• Access Control and NAT
• Access Rule
• NAT Rule
• Threat Prevention
• IPS Update
• Threat-Exception
Commutateurs
• User
• Password
• Session ID
• Management IP
13. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
L’API de Management : Architecture
RESTful API
CLI based
Web Services
API web-server
https://<mgmt>/web_api/
SmartConsole
Postgres SQL
CPM
Multi-Portal
HTTPS / 443
mgmt_cli tool
GAIA CLI
SmartConsole CLI
14. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
API de Management : Configuration SmartConsole
• Using CLI:
• In expert mode: mgmt_cli set
api-settings automatic-
start true
• Using GUI:
• Manage & Settings Blades
Management API Advanced Settings
Check automaox OK
15. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
L’API démarre automatiquement après le premier reboot
Pour les serveurs de Management disposant de 4 Go de RAM ou plus
Pour les installations StandAlone disposant de 8 Go de RAM ou plus
Vérification de l’état des services, en contexte expert sur le Management Server
Status : api status
Démarrage : api start
Arrêt : api stop
Recharger la configuration : api reconf
API de management : Gestion de l’état de l’API de Management
16. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
L’API de Management est accessible via trois interfaces
Web Services (Automatisation)
Utilisation des méthodes HTTP Post et du format de données JSON
Mgmt_cli , utilitaire standalone soumis auxACLs “GUI Clients” (Scripting)
Executable portable
Exemple : # mgmt_cli add host1 ip-address 1.1.1.1 –r true
SmartConsole Command Lines (Rapidité versus GUI)
Exemple :
API de management : Interfaces d’accès
17. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
L’API de Management : Documentation
La documentation de l’API de Management est accessible depuis le Management Server …
https://mgmt_srv_ip/api_docs
…ou sur le site Check Point
https://sc1.checkpoint.com/documents/latest/APIs/index.html
18. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
L’API Threat Prevention
Permet d’interagir avec les Blades de SécuritéThreat Prevention
Antivirus
AntiBot
Threat Emulation
Threat Extraction
Disponible On Premise
APIs hébergées sur les appliancesTEX
Disponible via le Cloud Check Point
Licence mettant à disposition un quota d’analyse.
19. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
L’API Threat Prevention : Fonction
Query API Upload API Download API Quota API
Permet d’accéder au
rapport d’analyse
concernant un fichier
Permet d’obtenir le
statut d’un fichier
Uploadé au préalable
Permet de soumettre
un fichier à l’analyse
Threat Prevention
Permet l’accès aux
différents types de
fichiers généré par les
Blades Threat
Extraction.
Permet d’accéder à
statut du Quota
autorisé par la licence
en cours d’utilisation
20. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
APIs Threat Prevention : Modalités d’accès
Query API :
HTTP POST: https://<service_address>/tecloud/api/<version>/file/query
Upload API :
HTTP POST: https://<service_address>/tecloud/api/<version>/file/upload
Download API:
HTTP POST: https://<service_address>/tecloud/api/<version>/file/download?id=id
Quota API :
HTTP POST: https://<service_address>/tecloud/api/<version>/file/quota
21. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
L’API Threat Prevention : Documentation
La documentation de l’APIThreat Prevention est accessible depuis
https://sc1.checkpoint.com/documents/TPAPI/CP_1.0_R80xx_ThreatPreventionAPI_APIRefGuide
22. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
L’API Identity Awareness : Fonction
Permet d’interagir avec la Blade Identity Awereness
API hébergée sur les gateways
Constitue l’une des sources d’identités possible de la blade Identity
Awareness
Offre des possibilités d’interconnexion de systèmes hétérogènes.
Use Case : IdentitésVPN F5 propagées aux Gateways Checkpoint
23. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
L’API Identity Awareness : Configuration
24. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
APIs Threat Prevention : Commandes disponibles
Add identity : Ajoute d’une identité
HTTP POST https://<Gateway_IP_or_FQDN>/_IA_API/v1.0/add-identity
Delete identity : Suppression d’une identité
HTTP POST https://<Gateway_IP_or_FQDN>/_IA_API/v1.0/delete-identity
Query identity : Affiche les identités connues pour une adresse IP
donnée
HTTP POST https://<Gateway_IP_or_FQDN>/_IA_API/v1.0/show-identity
25. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
L’API Identity Awareness : Documentation
La documentation de l’API Identity Awareness est accessible depuis
https://sc1.checkpoint.com/documents/R80.10/WebAdminGuides/EN/CP_R80.10_IdentityAwareness_AdminGuide
26. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
Résumé
27. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
API Management
API Threat
Prevention
API Identity
Awareness
Manipulation de la
base d’objets et des
policy
GUI clients ACLs
Interaction avec les
Blades AV, AB, TE, TEX
Preshared key /
Autorisation Key
Manipulation des
identités USERIP
Restriction par
interface, preshared
key
Fonctions et Sécurité d’accès
28. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
API Management
API Threat
Prevention
API Identity
Awareness
Bulk Import
Révision de
nomenclature
Migrations plan
adressage
Réponse automatique
suite à incident
…
“ICAP like” pour la
soumission de fichier
Reporting
Récupération
d’indentités externes
Peuplement de logs
Use Cases
29. V O T R E G U I D E E N S É C U R I T É I N F O R M A T I Q U E
Questions ?