Interaktioun mat Check Point SandBlast iwwer API

Interaktioun mat Check Point SandBlast iwwer API

Dësen Artikel wäert nëtzlech sinn fir déi, déi mat Technologie vertraut sinn Check Point duerch Dateiemuléierung (Bedrohung Emulatioun) a proaktiv Dateireinigung (Gefor Extraktioun) a wëll e Schrëtt maache fir dës Aufgaben ze automatiséieren. Check Point huet Bedrohung Präventioun API, déi souwuel an der Wollek an op lokalen Apparater leeft, an funktionell ass et identesch fir Dateien am Web/smtp/ftp/smb/nfs Traffic Streams ze kontrolléieren. Dësen Artikel ass deelweis d'Interpretatioun vum Auteur vun enger Rei vun Artikelen aus der offizieller Dokumentatioun, awer baséiert op meng eegen Operatiounserfarung a meng eegen Beispiller. Och am Artikel fannt Dir dem Auteur seng Postman Kollektiounen fir mat der Threat Prevention API ze schaffen.

Basis Ofkierzungen

D'Threat Prevention API funktionnéiert mat dräi Haaptkomponenten, déi an der API duerch déi folgend Textwäerter genannt ginn:

av - Anti-Virus Komponent, verantwortlech fir Ënnerschrëftanalyse vu bekannte Bedrohungen.

te - Threat Emulation Komponent, verantwortlech fir Dateien an der Sandkëscht z'iwwerpréiwen, an e béiswëlleg / benign Uerteel no der Emulatioun ze maachen.

Extraktioun - Bedrohungsextraktiounskomponent, verantwortlech fir séier Bürodokumenter an eng sécher Form ëmzewandelen (an där all potenziell béiswëlleg Inhalt geläscht gëtt), fir se séier un d'Benotzer / Systemer ze liwweren.

API Struktur an Haaptbeschränkungen

Threat Prevention API benotzt nëmme 4 Ufroen - eropluede, Ufro, download an Quote. Am Header fir all véier Ufroe musst Dir den API Schlëssel mat dem Parameter passéieren Autorisatioun. Op den éischte Bléck kann d'Struktur vill méi einfach schéngen wéi an Management API, awer d'Zuel vun de Felder an den Eroplued- an Ufro-Ufroen an d'Struktur vun dësen Ufroe sinn zimlech komplex. Dës kënne funktionell mat Threat Prevention Profiler an enger Paart / Sandbox Sécherheetspolitik verglach ginn.

Am Moment ass déi eenzeg Versioun vun der Bedrohungsverhënnerung API verëffentlecht ginn - 1.0 d'URL fir API Uriff soll enthalen; v1 am Deel wou Dir musst d'Versioun uginn. Am Géigesaz zu der Management API ass et néideg d'API Versioun an der URL unzeginn, soss gëtt d'Ufro net ausgefouert.

D'Anti-Virus Komponent, wann ouni aner Komponenten (te, Extraktioun) genannt gëtt, ënnerstëtzt de Moment nëmmen Ufro Ufroe mat md5 Hash Zommen. Threat Emulation an Threat Extraction ënnerstëtzen och sha1 an sha256 Hash Zommen.

Et ass ganz wichteg keng Feeler bei Ufroen ze maachen! D'Ufro kann ouni Feeler ausgefouert ginn, awer net komplett. Kucke mer e bëssen no vir, loosst eis kucken wat ka geschéien wann et Feeler / Tippfehler an Ufroe gëtt.

Ufro mat engem Tippfeeler mam Wuert Berichter (Reports)

{ "request":  [  

		{	
			"sha256": {{sha256}},
			"features": ["te"] , 
			"te": {
				"images": [
                    {
                        "id": "10b4a9c6-e414-425c-ae8b-fe4dd7b25244",
                        "revision": 1
                    }
                ],
                reportss: ["tar", "pdf", "xml"]
            }
		}
	] 
}

Et gëtt kee Feeler an der Äntwert, mee et gëtt guer keng Informatiounen iwwert d'Rapporte ginn

{
  "response": [
    {
      "status": {
        "code": 1001,
        "label": "FOUND",
        "message": "The request has been fully answered."
      },
      "sha256": "9cc488fa6209caeb201678f8360a6bb806bd2f85b59d108517ddbbf90baec33a",
      "file_type": "pdf",
      "file_name": "",
      "features": [
        "te"
      ],
      "te": {
        "trust": 10,
        "images": [
          {
            "report": {
              "verdict": "malicious"
            },
            "status": "found",
            "id": "10b4a9c6-e414-425c-ae8b-fe4dd7b25244",
            "revision": 1
          }
        ],
        "score": -2147483648,
        "combined_verdict": "malicious",
        "severity": 4,
        "confidence": 3,
        "status": {
          "code": 1001,
          "label": "FOUND",
          "message": "The request has been fully answered."
        }
      }
    }
  ]
}

Awer fir eng Ufro ouni Tippfeeler am Berichterschlëssel

{ "request":  [  

		{	
			"sha256": {{sha256}},
			"features": ["te"] , 
			"te": {
				"images": [
                    {
                        "id": "10b4a9c6-e414-425c-ae8b-fe4dd7b25244",
                        "revision": 1
                    }
                ],
                reports: ["tar", "pdf", "xml"]
            }
		}
	] 
}

Mir kréien eng Äntwert déi scho ID enthält fir Berichter erofzelueden

{
  "response": [
    {
      "status": {
        "code": 1001,
        "label": "FOUND",
        "message": "The request has been fully answered."
      },
      "sha256": "9cc488fa6209caeb201678f8360a6bb806bd2f85b59d108517ddbbf90baec33a",
      "file_type": "pdf",
      "file_name": "",
      "features": [
        "te"
      ],
      "te": {
        "trust": 10,
        "images": [
          {
            "report": {
              "verdict": "malicious",
              "full_report": "b684066e-e41c-481a-a5b4-be43c27d8b65",
              "pdf_report": "e48f14f1-bcc7-4776-b04b-1a0a09335115",
              "xml_report": "d416d4a9-4b7c-4d6d-84b9-62545c588963"
            },
            "status": "found",
            "id": "10b4a9c6-e414-425c-ae8b-fe4dd7b25244",
            "revision": 1
          }
        ],
        "score": -2147483648,
        "combined_verdict": "malicious",
        "severity": 4,
        "confidence": 3,
        "status": {
          "code": 1001,
          "label": "FOUND",
          "message": "The request has been fully answered."
        }
      }
    }
  ]
}

Wa mir e falschen / ofgelaafen API-Schlëssel schécken, kréie mir als Äntwert en 403 Feeler.

SandBlast API: an der Wollek an op lokalen Apparater

API-Ufroe kënnen op Check Point-Geräter geschéckt ginn, déi den Threat Emulation Komponent (Blade) aktivéiert hunn. Als Adress fir Ufroe musst Dir d'IP/URL vum Apparat an den Hafen 18194 benotzen (zum Beispill https://10.10.57.19:18194/tecloud/api/v1/file/query). Dir sollt och sécher sinn datt d'Sécherheetspolitik um Apparat dës Verbindung erlaabt. Autorisatioun iwwer API Schlëssel op lokalen Apparater par défaut aus an den Autorisatiounsschlëssel an Ufro Header kënnen guer net geschéckt ginn.

API-Ufroen un d'CheckPoint-Wollek solle geschéckt ginn te.checkpoint.com (zum Beispill - https://te.checkpoint.com/tecloud/api/v1/file/query). Den API Schlëssel kann als Testlizenz fir 60 Deeg kritt ginn andeems Dir Check Point Partner oder de lokale Büro vun der Firma kontaktéiert.

Op lokalen Apparater gëtt Threat Extraction nach net als Standard ënnerstëtzt. Bedrohung Präventioun API a soll benotzt ginn Threat Prevention API fir Sécherheetsgateway (mir schwätze méi am Detail um Enn vum Artikel).

Lokal Apparater ënnerstëtzen net d'Quote Ufro.

Soss ginn et keng Differenzen tëscht Ufroe fir lokal Apparater an op d'Wollek.

Eroplueden API Uruff

Method benotzt - POST

Uruff Adress - https:///tecloud/api/v1/file/upload

D'Ufro besteet aus zwee Deeler (Form-Daten): e Fichier geduecht fir Emulatioun / Botzen an engem Ufro Kierper mat Text.

D'Text Ufro kann net eidel sinn, awer et kann keng Konfiguratioun enthalen. Fir datt d'Ufro erfollegräich ass, musst Dir op d'mannst de folgenden Text an der Ufro schécken:

Minimum néideg fir eng eropluede Ufro

HTTP POST

https:///tecloud/api/v1/file/upload

Header:

Autorisatioun:

Body

{

"Ufro": {

}

}

Fichier

Fichier

An dësem Fall gëtt d'Datei am Aklang mat de Standardparameter veraarbecht: component - te, OS Biller - Win XP a Win 7, ouni Rapport ze generéieren.

Kommentaren zu den Haaptfelder an der Text Ufro:

Numm vum Dossier и Dateityp Dir kënnt se eidel loossen oder se guer net schécken, well dëst net besonnesch nëtzlech Informatioun ass wann Dir eng Datei eropluet. An der API Äntwert ginn dës Felder automatesch ausgefëllt op Basis vum Numm vun der erofgeluede Datei, an d'Informatioun am Cache muss nach ëmmer mat md5/sha1/sha256 Hashbetrag gesicht ginn.

Beispill Ufro mat eidelen file_name an file_type

{

"request": {

"file_name": "",

"file_type": "",

}

}

Eegeschaften - eng Lëscht déi déi néideg Funktionalitéit weist beim Veraarbechtung an der Sandkëscht - av (Anti-Virus), te (Threat Emulation), Extraktioun (Threat Extraction). Wann dëse Parameter guer net passéiert ass, da gëtt nëmmen de Standardkomponent benotzt - te (Threat Emulation).

Fir d'Kontrolléiere vun den dräi verfügbare Komponenten z'aktivéieren, musst Dir dës Komponenten an der API Ufro spezifizéieren.

Beispill vun enger Ufro mat Check an av, te an Extraktioun

{ "request":  [  

		{	
			"sha256": {{sha256}},
			"features": ["av", "te", "extraction"]  
		}
	] 
}

Schlësselen an der te Rubrik

Biller - eng Lëscht mat Dictionnairen mat ID a Versiounsnummer vun de Betribssystemer an deenen d'Kontroll duerchgefouert gëtt. IDen a Versiounsnummeren sinn d'selwecht fir all lokal Apparater an d'Wollek.

Lëscht vun Betribssystemer a Versiounen

Verfügbar OS Image ID

Versioun

Bild OS an Applikatioun

e50e99f3-5963-4573-af9e-e3f4750b55e2

1

Microsoft Windows: XP - 32bit SP3
Office: 2003, 2007
Adobe Acrobat Reader: 9.0
Flash Player 9r115 an Aktiv X 10.0
Java Runtime: 1.6.0u22

7e6fe36e-889e-4c25-8704-56378f0830df

1

Microsoft Windows: 7-32 Bit
Office: 2003, 2007
Adobe Acrobat Reader: 9.0
Flash Player: 10.2r152 (AstiechenAktiv X)
Java Runtime: 1.6.0u0

8d188031-1010-4466-828b-0cd13d4303ff

1

Microsoft Windows: 7-32 Bit
Office: 2010
Adobe Acrobat Reader: 9.4
Flash Player: 11.0.1.152 (Astiechen & Aktiv X)
Java Runtime: 1.7.0u0

5e5de275-a103-4f67-b55b-47532918fa59

1

Microsoft Windows: 7-32 Bit
Office: 2013
Adobe Acrobat Reader: 11.0
Flash Player: 15 (Astiechen & Aktiv X)
Java Runtime: 1.7.0u9

3ff3ddae-e7fd-4969-818c-d5f1a2be336d

1

Microsoft Windows: 7-64 Bit
Office: 2013 (32bit)
Adobe Acrobat Reader: 11.0.01
Flash Player: 13 (Astiechen & Aktiv X)
Java Runtime: 1.7.0u9

6c453c9b-20f7-471a-956c-3198a868dc92 

 

Microsoft Windows: 8.1-64 Bit
Office: 2013 (64bit)
Adobe Acrobat Reader: 11.0.10
Flash Player: 18.0.0.160 (Astiechen & Aktiv X)
Java Runtime: 1.7.0u9

10b4a9c6-e414-425c-ae8b-fe4dd7b25244 

 

1

Microsoft Windows: 10
Office: Professional Plus 2016 en-us  
Adobe Acrobat Reader: DC 2015 MUI
Flash Player: 20 (Astiechen & Aktiv X)
Java Runtime: 1.7.0u9

Wann d'Billerschlëssel guer net spezifizéiert ass, da gëtt d'Emulatioun a Biller empfohlen, déi vum Check Point recommandéiert sinn (aktuell Win XP a Win 7). Dës Biller sinn recommandéiert baséiert op Considératiounen vun de beschte Gläichgewiicht vun Leeschtung a Fang Taux.

Rapporten - eng Lëscht vu Berichter déi mir froen am Fall wou de Fichier béiswëlleg ass. Déi folgend Optiounen sinn verfügbar:

  1. Summary - .tar.gz Archiv mat engem Rapport iwwert Emulatioun vun un all ugefrote Biller (souwuel eng HTML Säit a Komponenten wéi e Video vum Emulator OS, en Netzverkéier Dump, e Bericht am json, an d'Probe selwer an engem Passwuert geschützt Archiv). Mir sichen no de Schlëssel an der Äntwert - summary_report fir de spéideren Download vum Bericht.

  2. pdf - Dokument iwwer Emulatioun an eent Bild, dat vill gewinnt sinn duerch d'Smart Console ze kréien. Mir sichen no de Schlëssel an der Äntwert - pdf_rapport fir de spéideren Download vum Bericht.

  3. ginnQXml - Dokument iwwer Emulatioun an eent Bild, praktesch fir spéider Parsing vu Parameteren am Bericht. Mir sichen no de Schlëssel an der Äntwert - xml_rapport fir de spéideren Download vum Bericht.

  4. tar - .tar.gz Archiv mat engem Bericht iwwer Emulatioun an eent ugefrote Biller (souwuel eng HTML Säit a Komponenten wéi e Video vum Emulator OS, en Netzverkéier Dump, e Bericht am json, an d'Probe selwer an engem Passwuert geschützt Archiv). Mir sichen no de Schlëssel an der Äntwert - voll_bericht fir de spéideren Download vum Bericht.

Wat ass am Resumé BerichtInteraktioun mat Check Point SandBlast iwwer API

D'Schlësselen full_report, pdf_report, xml_report sinn am Wierderbuch fir all OS

{
  "response": [
    {
      "status": {
        "code": 1001,
        "label": "FOUND",
        "message": "The request has been fully answered."
      },
      "sha256": "9e6f07d03b37db0d3902bde4e239687a9e3d650e8c368188c7095750e24ad2d5",
      "file_type": "html",
      "file_name": "",
      "features": [
        "te"
      ],
      "te": {
        "trust": 10,
        "images": [
          {
            "report": {
              "verdict": "malicious",
              "full_report": "8d18067e-b24d-4103-8469-0117cd25eea9",
              "pdf_report": "05848b2a-4cfd-494d-b949-6cfe15d0dc0b",
              "xml_report": "ecb17c9d-8607-4904-af49-0970722dd5c8"
            },
            "status": "found",
            "id": "10b4a9c6-e414-425c-ae8b-fe4dd7b25244",
            "revision": 1
          },
          {
            "report": {
              "verdict": "malicious",
              "full_report": "d7c27012-8e0c-4c7e-8472-46cc895d9185",
              "pdf_report": "488e850c-7c96-4da9-9bc9-7195506afe03",
              "xml_report": "e5a3a78d-c8f0-4044-84c2-39dc80ddaea2"
            },
            "status": "found",
            "id": "6c453c9b-20f7-471a-956c-3198a868dc92",
            "revision": 1
          }
        ],
        "score": -2147483648,
        "combined_verdict": "malicious",
        "severity": 4,
        "confidence": 3,
        "status": {
          "code": 1001,
          "label": "FOUND",
          "message": "The request has been fully answered."
        }
      }
    }
  ]
}

Awer de summary_report Schlëssel - et gëtt eng fir Emulatioun am Allgemengen

{
  "response": [
    {
      "status": {
        "code": 1001,
        "label": "FOUND",
        "message": "The request has been fully answered."
      },
      "sha256": "d57eadb7b2f91eea66ea77a9e098d049c4ecebd5a4c70fb984688df08d1fa833",
      "file_type": "exe",
      "file_name": "",
      "features": [
        "te"
      ],
      "te": {
        "trust": 10,
        "images": [
          {
            "report": {
              "verdict": "malicious",
              "full_report": "c9a1767b-741e-49da-996f-7d632296cf9f",
              "xml_report": "cc4dbea9-518c-4e59-b6a3-4ea463ca384b"
            },
            "status": "found",
            "id": "10b4a9c6-e414-425c-ae8b-fe4dd7b25244",
            "revision": 1
          },
          {
            "report": {
              "verdict": "malicious",
              "full_report": "ba520713-8c0b-4672-a12f-0b4a1575b913",
              "xml_report": "87bdb8ca-dc44-449d-a9ab-2d95e7fe2503"
            },
            "status": "found",
            "id": "6c453c9b-20f7-471a-956c-3198a868dc92",
            "revision": 1
          }
        ],
        "score": -2147483648,
        "combined_verdict": "malicious",
        "severity": 4,
        "confidence": 3,
        "summary_report": "7e7db12d-5df6-4e14-85f3-2c1e29cd3e34",
        "status": {
          "code": 1001,
          "label": "FOUND",
          "message": "The request has been fully answered."
        }
      }
    }
  ]
}

Dir kënnt Tar an XML an PDF Berichter zur selwechter Zäit ufroen, Dir kënnt Resumé an Tar an XML ufroen. Et wäert net méiglech sinn e Resumébericht an e PDF zur selwechter Zäit ze froen.

Schlësselen an der Extraktioun Sektioun

Fir Bedrohungsextraktioun ginn nëmmen zwee Schlësselen benotzt:

Method - pdf (konvertéieren op pdf, benotzt als Standard) oder propper (aktiven Inhalt botzen).

extrahéiert_parts_codes - Lëscht vu Coden fir aktiven Inhalt ze läschen, applicabel nëmme fir déi propper Method

Coden fir Inhalter aus Dateien ze läschen

Code

description

1025

Verknëppelt Objekter

1026

Makroen a Code

1034

Sensibel Hyperlinks

1137

PDF GoToR Aktiounen

1139

PDF Startaktiounen

1141

PDF URI Aktiounen

1142

PDF Sound Aktiounen

1143

PDF Film Aktiounen

1150

PDF JavaScript Aktiounen

1151

PDF Formulaire Aktiounen ofginn

1018

Datebank Ufroen

1019

Embedded Objekter

1021

Schnell späicheren Daten

1017

Benotzerdefinéiert Eegeschafte

1036

Statistesch Properties

1037

Resumé Eegeschafte

Fir eng gebotzt Kopie erofzelueden, musst Dir och no e puer Sekonnen eng Ufro Ufro maachen (déi hei drënner diskutéiert gëtt) an den Hashbetrag vun der Datei an der Extraktiounskomponent am Ufrotext uginn. Dir kënnt déi gebotzt Datei mat der ID vun der Äntwert op d'Ufro ophuelen - extracted_file_download_id. Nach eng Kéier, e bësse no vir kucken, ginn ech Beispiller vun enger Ufro an enger Ufro-Äntwert fir no enger ID ze sichen fir e geläscht Dokument erofzelueden.

Ufro Ufro fir den extracted_file_download_id Schlëssel ze sichen

{ "request":  [  

		{	
			"sha256": "9a346005ee8c9adb489072eb8b5b61699652962c17596de9c326ca68247a8876",
			"features": ["extraction"] , 
			"extraction": {
		        "method": "pdf"
            }
		}
	] 
}

Äntwert op Ufro (kuckt no extracted_file_download_id Schlëssel)

{
    "response": [
        {
            "status": {
                "code": 1001,
                "label": "FOUND",
                "message": "The request has been fully answered."
            },
            "sha256": "9a346005ee8c9adb489072eb8b5b61699652962c17596de9c326ca68247a8876",
            "file_type": "",
            "file_name": "",
            "features": [
                "extraction"
            ],
            "extraction": {
                "method": "pdf",
                "extract_result": "CP_EXTRACT_RESULT_SUCCESS",
                "extracted_file_download_id": "b5f2b34e-3603-4627-9e0e-54665a531ab2",
                "output_file_name": "kp-20-xls.cleaned.xls.pdf",
                "time": "0.013",
                "extract_content": "Macros and Code",
                "extraction_data": {
                    "input_extension": "xls",
                    "input_real_extension": "xls",
                    "message": "OK",
                    "output_file_name": "kp-20-xls.cleaned.xls.pdf",
                    "protection_name": "Potential malicious content extracted",
                    "protection_type": "Conversion to PDF",
                    "protocol_version": "1.0",
                    "risk": 5.0,
                    "scrub_activity": "Active content was found - XLS file was converted to PDF",
                    "scrub_method": "Convert to PDF",
                    "scrub_result": 0.0,
                    "scrub_time": "0.013",
                    "scrubbed_content": "Macros and Code"
                },
                "tex_product": false,
                "status": {
                    "code": 1001,
                    "label": "FOUND",
                    "message": "The request has been fully answered."
                }
            }
        }
    ]
}

Allgemeng Informatiounen

An engem API Uruff kënnt Dir nëmmen eng Datei fir d'Verifizéierung schécken.

D'av Komponent erfuerdert keng zousätzlech Sektioun mat Schlësselen, et ass genuch fir se am Wierderbuch ze spezifizéieren Eegeschaften.

Ufro API Uruff

Method benotzt - POST

Uruff Adress - https:///tecloud/api/v1/file/query

Ier Dir e Fichier fir den Download schéckt (Upload-Ufro), ass et unzeroden de Sandbox-Cache (Query-Ufro) ze kontrolléieren fir d'Laascht op den API-Server ze optimiséieren, well den API-Server kann schonn Informatioun an en Uerteel iwwer déi erofgeluede Datei hunn. Den Uruff besteet nëmmen aus engem Textdeel. Den erfuerderlechen Deel vun der Ufro ass sha1/sha256/md5 Hash Betrag vun der Datei. Iwwregens, kënnt Dir et an der Äntwert op d'Upload Ufro kréien.

Minimum néideg fir Ufro

HTTP POST

https:///tecloud/api/v1/file/query

Header:

Autorisatioun:

Body

{

"Ufro": {

"sha256":

}

}

E Beispill vun enger Äntwert op eng Eropluedsufro, wou sha1/md5/sha256 Hash Betrag sichtbar sinn

{
  "response": {
    "status": {
      "code": 1002,
      "label": "UPLOAD_SUCCESS",
      "message": "The file was uploaded successfully."
    },
    "sha1": "954b5a851993d49ef8b2412b44f213153bfbdb32",
    "md5": "ac29b7c26e7dcf6c6fdb13ac0efe98ec",
    "sha256": "313c0feb009356495b7f4a60e96737120beb30e1912c6d866218cee830aebd90",
    "file_type": "",
    "file_name": "kp-20-doc.doc",
    "features": [
      "te"
    ],
    "te": {
      "trust": 0,
      "images": [
        {
          "report": {
            "verdict": "unknown"
          },
          "status": "not_found",
          "id": "10b4a9c6-e414-425c-ae8b-fe4dd7b25244",
          "revision": 1
        }
      ],
      "score": -2147483648,
      "status": {
        "code": 1002,
        "label": "UPLOAD_SUCCESS",
        "message": "The file was uploaded successfully."
      }
    }
  }
}

D'Ufro Ufro, zousätzlech zum Hash Betrag, sollt am Idealfall d'selwecht sinn wéi d'Eropluedsufro war (oder geplangt ass), oder souguer "schon" (manner Felder an der Ufro Ufro enthalen wéi an der Eropluedsufro). Am Fall wou d'Ufro Ufro méi Felder enthält wéi an der Eropluedsufro, kritt Dir net all déi erfuerderlech Informatioun an der Äntwert.

Hei ass e Beispill vun enger Äntwert op eng Ufro wou net all erfuerderlech Donnéeën fonnt goufen

{
  "response": [
    {
      "status": {
        "code": 1006,
        "label": "PARTIALLY_FOUND",
        "message": "The request cannot be fully answered at this time."
      },
      "sha256": "313c0feb009356495b7f4a60e96737120beb30e1912c6d866218cee830aebd90",
      "file_type": "doc",
      "file_name": "",
      "features": [
        "te",
        "extraction"
      ],
      "te": {
        "trust": 10,
        "images": [
          {
            "report": {
              "verdict": "malicious",
              "pdf_report": "4e9cddaf-03a4-489f-aa03-3c18f8d57a52",
              "xml_report": "9c18018f-c761-4dea-9372-6a12fcb15170"
            },
            "status": "found",
            "id": "10b4a9c6-e414-425c-ae8b-fe4dd7b25244",
            "revision": 1
          }
        ],
        "score": -2147483648,
        "combined_verdict": "malicious",
        "severity": 4,
        "confidence": 1,
        "status": {
          "code": 1001,
          "label": "FOUND",
          "message": "The request has been fully answered."
        }
      },
      "extraction": {
        "method": "pdf",
        "tex_product": false,
        "status": {
          "code": 1004,
          "label": "NOT_FOUND",
          "message": "Could not find the requested file. Please upload it."
        }
      }
    }
  ]
}

Opgepasst op d'Felder Code и Label. Dës Felder schéngen dräimol an Status Wierderbuch. Als éischt gesi mir de globale Schlëssel "Code": 1006 an "Label": "PARTIALLY_FOUND". Als nächst ginn dës Schlësselen fir all eenzel Komponent fonnt, déi mir gefrot hunn - te an Extraktioun. A wann et kloer ass datt d'Donnéeën fonnt goufen, da gëtt et keng Informatioun fir Extraktioun.

Dëst ass wéi d'Ufro ausgesäit fir dat Beispill hei uewen

{ "request":  [  

		{	
			"sha256": {{sha256}},
			"features": ["te", "extraction"] , 
			"te": {
				"images": [
                    {
                        "id": "10b4a9c6-e414-425c-ae8b-fe4dd7b25244",
                        "revision": 1
                    }
                ],
                "reports": [
                    "xml", "pdf"
                ]
            }
		}
	] 
}

Wann Dir eng Ufro Ufro schéckt ouni den Extraktiounskomponent

{ "request":  [  

		{	
			"sha256": {{sha256}},
			"features": ["te"] , 
			"te": {
				"images": [
                    {
                        "id": "10b4a9c6-e414-425c-ae8b-fe4dd7b25244",
                        "revision": 1
                    }
                ],
                "reports": [
                    "xml", "pdf"
                ]
            }
		}
	] 
}

Dann enthält d'Äntwert komplett Informatioun ("Code": 1001, "Label": "FOUND")

{
  "response": [
    {
      "status": {
        "code": 1001,
        "label": "FOUND",
        "message": "The request has been fully answered."
      },
      "sha256": "313c0feb009356495b7f4a60e96737120beb30e1912c6d866218cee830aebd90",
      "file_type": "doc",
      "file_name": "",
      "features": [
        "te"
      ],
      "te": {
        "trust": 10,
        "images": [
          {
            "report": {
              "verdict": "malicious",
              "pdf_report": "4e9cddaf-03a4-489f-aa03-3c18f8d57a52",
              "xml_report": "9c18018f-c761-4dea-9372-6a12fcb15170"
            },
            "status": "found",
            "id": "10b4a9c6-e414-425c-ae8b-fe4dd7b25244",
            "revision": 1
          }
        ],
        "score": -2147483648,
        "combined_verdict": "malicious",
        "severity": 4,
        "confidence": 1,
        "status": {
          "code": 1001,
          "label": "FOUND",
          "message": "The request has been fully answered."
        }
      }
    }
  ]
}

Wann et guer keng Informatioun am Cache ass, da gëtt d'Äntwert "Label": "NOT_FOUND"

{
  "response": [
    {
      "status": {
        "code": 1004,
        "label": "NOT_FOUND",
        "message": "Could not find the requested file. Please upload it."
      },
      "sha256": "313c0feb009356495b7f4a60e96737120beb30e1912c6d866218cee830aebd91",
      "file_type": "",
      "file_name": "",
      "features": [
        "te"
      ],
      "te": {
        "trust": 0,
        "images": [
          {
            "report": {
              "verdict": "unknown"
            },
            "status": "not_found",
            "id": "10b4a9c6-e414-425c-ae8b-fe4dd7b25244",
            "revision": 1
          }
        ],
        "score": -2147483648,
        "status": {
          "code": 1004,
          "label": "NOT_FOUND",
          "message": "Could not find the requested file. Please upload it."
        }
      }
    }
  ]
}

An engem API Uruff kënnt Dir e puer Hashbetrag gläichzäiteg fir d'Verifizéierung schécken. D'Äntwert wäert Daten an der selwechter Uerdnung zréckginn wéi se an der Ufro geschéckt goufen.

Beispill Ufro Ufro mat e puer sha256 Betrag

{ "request":  [  

		{	
			"sha256": "b84531d3829bf6131655773a3863d6b16f6389b7f4036aef9b81c0cb60e7fd81"
        },
        		{	
			"sha256": "b84531d3829bf6131655773a3863d6b16f6389b7f4036aef9b81c0cb60e7fd82"
        }
	] 
}

Äntwert op eng Ufro mat multiple sha256 Betrag

{
  "response": [
    {
      "status": {
        "code": 1001,
        "label": "FOUND",
        "message": "The request has been fully answered."
      },
      "sha256": "b84531d3829bf6131655773a3863d6b16f6389b7f4036aef9b81c0cb60e7fd81",
      "file_type": "dll",
      "file_name": "",
      "features": [
        "te"
      ],
      "te": {
        "trust": 10,
        "images": [
          {
            "report": {
              "verdict": "malicious"
            },
            "status": "found",
            "id": "10b4a9c6-e414-425c-ae8b-fe4dd7b25244",
            "revision": 1
          }
        ],
        "score": -2147483648,
        "combined_verdict": "malicious",
        "severity": 4,
        "confidence": 3,
        "status": {
          "code": 1001,
          "label": "FOUND",
          "message": "The request has been fully answered."
        }
      }
    },
    {
      "status": {
        "code": 1004,
        "label": "NOT_FOUND",
        "message": "Could not find the requested file. Please upload it."
      },
      "sha256": "b84531d3829bf6131655773a3863d6b16f6389b7f4036aef9b81c0cb60e7fd82",
      "file_type": "",
      "file_name": "",
      "features": [
        "te"
      ],
      "te": {
        "trust": 0,
        "images": [
          {
            "report": {
              "verdict": "unknown"
            },
            "status": "not_found",
            "id": "10b4a9c6-e414-425c-ae8b-fe4dd7b25244",
            "revision": 1
          }
        ],
        "score": -2147483648,
        "status": {
          "code": 1004,
          "label": "NOT_FOUND",
          "message": "Could not find the requested file. Please upload it."
        }
      }
    }
  ]
}

E puer Hash Zommen op eemol an enger Ufro Ufro ze froen wäert och e positiven Effekt op d'Performance vum API Server hunn.

Download API Uruff

Method benotzt - POST (geméiss Dokumentatioun), GET funktionnéiert och (a ka méi logesch schéngen)

Uruff Adress - https:///tecloud/api/v1/file/download?id=

Den Header erfuerdert datt den API Schlëssel passéiert ass, de Kierper vun der Ufro ass eidel, d'Download ID gëtt an der URL Adress iwwerginn.

Als Äntwert op eng Ufro Ufro, wann d'Emulatioun fäerdeg ass a Berichter gefrot goufen beim Download vun der Datei, gëtt d'Id fir d'Rapporten erofzelueden. Wann eng gebotzt Kopie gefrot gëtt, sollt Dir no der ID kucken fir dat gebotzt Dokument erofzelueden.

Am Ganzen kënnen d'Schlësselen an der Äntwert op d'Ufro mat dem ID Wäert fir d'Luede sinn:

  • summary_report

  • voll_bericht

  • pdf_rapport

  • xml_rapport

  • extracted_file_download_id

Natierlech, fir dës Schlësselen als Äntwert op d'Ufro-Ufro ze kréien, musse se an der Ufro (fir Berichter) spezifizéiert ginn oder drun erënneren eng Ufro mat der Extraktiounsfunktioun ze maachen (fir gebotzt Dokumenter)

Quote API Opruff

Method benotzt - POST

Uruff Adress - https:///tecloud/api/v1/file/quota

Fir déi verbleiwen Quoten an der Wollek ze kontrolléieren, benotzt d'Quotequery. D'Ufro Kierper ass eidel.

Beispill Äntwert op eng Quote Ufro

{
  "response": [
    {
      "remain_quota_hour": 1250,
      "remain_quota_month": 10000000,
      "assigned_quota_hour": 1250,
      "assigned_quota_month": 10000000,
      "hourly_quota_next_reset": "1599141600",
      "monthly_quota_next_reset": "1601510400",
      "quota_id": "TEST",
      "cloud_monthly_quota_period_start": "1421712300",
      "cloud_monthly_quota_usage_for_this_gw": 0,
      "cloud_hourly_quota_usage_for_this_gw": 0,
      "cloud_monthly_quota_usage_for_quota_id": 0,
      "cloud_hourly_quota_usage_for_quota_id": 0,
      "monthly_exceeded_quota": 0,
      "hourly_exceeded_quota": 0,
      "cloud_quota_max_allow_to_exceed_percentage": 1000,
      "pod_time_gmt": "1599138715",
      "quota_expiration": "0",
      "action": "ALLOW"
    }
  ]
}

Threat Prevention API fir Sécherheetsgateway

Dës API gouf virun der Threat Prevention API entwéckelt an ass nëmme fir lokal Apparater geduecht. Fir de Moment kann et nëmme nëtzlech sinn wann Dir d'Threat Extraction API braucht. Fir Threat Emulation ass et besser déi regulär Threat Prevention API ze benotzen. Fir opzemaachen TP API fir SG a konfiguréieren den API Schlëssel Dir musst de Schrëtt verfollegen aus sk113599. Ech recommandéieren Opmierksamkeet op Schrëtt 6b ze bezuelen an d'Accessibilitéit vun der Säit ze kontrolléieren https://<IPAddressofSecurityGateway>/UserCheck/TPAPI well am Fall vun engem negativen Resultat, weider Configuratioun net Sënn maachen. All API Uriff ginn op dës URL geschéckt. Den Urufftyp (Eroplueden / Ufro) gëtt am Uruffkierperschlëssel geregelt - request_name. Och néideg Schlësselen sinn - api_key (Dir musst et während der Konfiguratiounsprozess erënneren) an protocol_version (aktuell aktuell Versioun ass 1.1). Dir kënnt déi offiziell Dokumentatioun fir dës API fannen op sk137032. Relativ Virdeeler enthalen d'Fäegkeet fir e puer Dateien gläichzäiteg fir Emulatioun ze schécken wann se se lueden, well d'Dateien als Base64 Textstring geschéckt ginn. Fir Dateien op/vun base64 ze codéieren/decodéieren, kënnt Dir en Online Konverter am Postman fir Demonstratiounszwecker benotzen, zum Beispill - https://base64.guru. Fir praktesch Zwecker sollt Dir déi agebaute Kodéierungs- an Dekodéierungsmethoden benotzen wann Dir Code schreift.

Loosst eis elo d'Funktioune méi genau kucken te и Extraktioun an dëser API.

Fir Komponente te Wierderbuch zur Verfügung gestallt te_optiounen an Eroplueden / Ufro Ufroen, an d'Schlësselen an dëser Demande komplett mat der te Schlësselen an Bedrohung Präventioun API.

Beispill Ufro fir Dateiemuléierung am Win10 mat Berichter

{
"request": [{
    "protocol_version": "1.1",
    "api_key": "<api_key>",
    "request_name": "UploadFile",
    "file_enc_data": "<base64_encoded_file>",
    "file_orig_name": "<filename>",
    "te_options": {
        "images": [
                {
                    "id": "10b4a9c6-e414-425c-ae8b-fe4dd7b25244",
                    "revision": 1
                }
            ],
        "reports": ["summary", "xml"]
    }
    }
    ]
}

Fir Komponente Extraktioun Wierderbuch zur Verfügung gestallt scrub_optiounen. Dës Ufro spezifizéiert d'Botzmethod: konvertéiert op PDF, läscht aktiven Inhalt oder wielt e Modus am Aklang mat dem Threat Prevention Profil (de Profilnumm gëtt uginn). Déi super Saach fir op eng Extraktioun API Ufro fir eng Datei ze reagéieren ass datt Dir eng gereinegt Kopie an der Äntwert op dës Ufro als base64 verschlësselte String kritt (Dir braucht keng Ufro Ufro ze maachen an d'ID opzemaachen fir de Dokument)

Beispill vun enger Ufro fir e Fichier ze läschen

    {
	"request": [{
		"protocol_version": "1.1",
		"api_key": "<API_KEY>",
		"request_name": "UploadFile",
		"file_enc_data": "<base64_encoded_file>",
		"file_orig_name": "hi.txt",
		"scrub_options": {
			"scrub_method": 2
		}
	}]
}

Äntwert op eng Ufro

{
	"response": [{
		"protocol_version": "1.1",
		"src_ip": "<IP_ADDRESS>",
		"scrub": {
			"file_enc_data": "<base64_encoded_converted_to_PDF_file>",
			"input_real_extension": "js",
			"message": "OK",
			"orig_file_url": "",
			"output_file_name": "hi.cleaned.pdf",
			"protection_name": "Extract potentially malicious content",
			"protection_type": "Conversion to PDF",
			"real_extension": "txt",
			"risk": 0,
			"scrub_activity": "TXT file was converted to PDF",
			"scrub_method": "Convert to PDF",
			"scrub_result": 0,
			"scrub_time": "0.011",
			"scrubbed_content": ""
		}
	}]
} 

Trotz der Tatsaach, datt manner API-Ufroe erfuerderlech sinn fir eng geläscht Kopie ze kréien, fannen ech dës Optioun manner léiwer a praktesch wéi d'Form-Daten-Ufro, déi an Bedrohung Präventioun API.

Bréifdréier Kollektiounen

Ech hunn Kollektiounen am Postman erstallt fir béid Threat Prevention API an Threat Prevention API fir Security Gateway, déi déi heefegst API Ufroe representéieren. Fir datt de Server IP/URL API an de Schlëssel automatesch an Ufroen ersat ginn, an de sha256 Hash Betrag erënnert gëtt nodeems d'Datei erofgeluede gouf, sinn dräi Variablen an de Sammlungen erstallt (Dir kënnt se fannen andeems Dir an d'Sammlungsastellunge gitt Edit -> Variablen): te_api (obligatoresch), api_key (erfuerderlech ausgefëllt ze ginn, ausser wann Dir TP API mat lokalen Apparater benotzt), sha256 (loosst eidel, net an TP API fir SG benotzt).

Luet d'Postman Sammlung fir Threat Prevention API erof

Luet d'Postman Sammlung fir Threat Prevention for Security Gateway API erof

Benotzungsbeispiller

An der Gemeng Kontrolléiert Frënn Skripte, déi am Python geschriwwe sinn, ginn presentéiert déi Dateien aus dem gewënschten Verzeichnis iwwerpréiwen TP APIan TP API fir SG. Duerch Interaktioun mat der Threat Prevention API gëtt Är Fäegkeet fir Dateien ze scannen wesentlech erweidert, well Dir elo Dateien op verschiddene Plattforme gläichzäiteg scannen kann (kuckt an VirusTotal API, an dann an der Check Point Sandkëscht), a kréien Fichieren net nëmmen aus Reseau Verkéier, mä huelen se och aus all Reseau fiert an, zum Beispill, CRM Systemer.

Source: will.com

Setzt e Commentaire