From cd062219251e274f5d2f6e51bd1a44d7a5977d14 Mon Sep 17 00:00:00 2001 From: chrisr3d Date: Mon, 24 Jun 2019 10:22:30 +0200 Subject: [PATCH] add: [documentation] Added documentation for Joe Sandbox & URLhaus --- doc/README.md | 84 +++++++++++++++++++++++++++ doc/expansion/joesandbox_query.json | 9 +++ doc/expansion/joesandbox_submit.json | 9 +++ doc/expansion/urlhaus.json | 9 +++ doc/import_mod/joeimport.json | 9 +++ doc/logos/joesandbox.png | Bin 0 -> 9780 bytes doc/logos/urlhaus.png | Bin 0 -> 62446 bytes 7 files changed, 120 insertions(+) create mode 100644 doc/expansion/joesandbox_query.json create mode 100644 doc/expansion/joesandbox_submit.json create mode 100644 doc/expansion/urlhaus.json create mode 100644 doc/import_mod/joeimport.json create mode 100644 doc/logos/joesandbox.png create mode 100644 doc/logos/urlhaus.png diff --git a/doc/README.md b/doc/README.md index 02506ab..0ca9b3e 100644 --- a/doc/README.md +++ b/doc/README.md @@ -414,6 +414,52 @@ Module to query IPRep data for IP addresses. ----- +#### [joesandbox_query](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/joesandbox_query.py) + + + +Query Joe Sandbox API with a submission url to get the json report and extract its data that is parsed and converted into MISP attributes and objects. + +This url can by the way come from the result of the [joesandbox_submit expansion module](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/joesandbox_submit.py). +- **features**: +>Module using the new format of modules able to return attributes and objects. +> +>The module returns the same results as the import module [joe_import](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/import_mod/joe_import.py) taking directly the json report as input. +> +>Even if the introspection will allow all kinds of links to call this module, obviously only the ones presenting a sample or url submission in the Joe Sandbox API will return results. +> +>To make it work you will need to fill the 'apikey' configuration with your Joe Sandbox API key and provide a valid link as input. +- **input**: +>Link of a Joe Sandbox sample or url submission. +- **output**: +>MISP attributes & objects parsed from the analysis report. +- **references**: +>https://www.joesecurity.org, https://www.joesandbox.com/ +- **requirements**: +>jbxapi: Joe Sandbox API python3 library + +----- + +#### [joesandbox_submit](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/joesandbox_submit.py) + + + +A module to submit files or URLs to Joe Sandbox for an advanced analysis, and return the link of the submission. +- **features**: +>The module requires a Joe Sandbox API key to submit files or URL, and returns the link of the submitted analysis. +> +>It is then possible, when the analysis is completed, to query the Joe Sandbox API to get the data related to the analysis, using the [joesandbox_query module](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/joesandbox_query.py) directly on this submission link. +- **input**: +>Sample, url (or domain) to submit to Joe Sandbox for an advanced analysis. +- **output**: +>Link of the data in input submitted to Joe Sandbox. +- **references**: +>https://www.joesecurity.org, https://www.joesandbox.com/ +- **requirements**: +>jbxapi: Joe Sandbox API python3 library + +----- + #### [macaddress_io](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/macaddress_io.py) @@ -798,6 +844,24 @@ Module to get information from ThreatMiner. ----- +#### [urlhaus](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/urlhaus.py) + + + +Query of the URLhaus API to get additional information about the input attribute. +- **features**: +>Module using the new format of modules able to return attributes and objects. +> +>The module takes one of the attribute type specified as input, and query the URLhaus API with it. If any result is returned by the API, attributes and objects are created accordingly. +- **input**: +>A domain, hostname, url, ip, md5 or sha256 attribute. +- **output**: +>MISP attributes & objects fetched from the result of the URLhaus API query. +- **references**: +>https://urlhaus.abuse.ch/ + +----- + #### [urlscan](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/urlscan.py) @@ -1231,6 +1295,26 @@ Module to import MISP objects about financial transactions from GoAML files. ----- +#### [joeimport](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/import_mod/joeimport.py) + + + +A module to import data from a Joe Sandbox analysis json report. +- **features**: +>Module using the new format of modules able to return attributes and objects. +> +>The module returns the same results as the expansion module [joesandbox_query](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/joesandbox_query.py) using the submission link of the analysis to get the json report. +> +> +- **input**: +>Json report of a Joe Sandbox analysis. +- **output**: +>MISP attributes & objects parsed from the analysis report. +- **references**: +>https://www.joesecurity.org, https://www.joesandbox.com/ + +----- + #### [mispjson](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/import_mod/mispjson.py) Module to import MISP JSON format for merging MISP events. diff --git a/doc/expansion/joesandbox_query.json b/doc/expansion/joesandbox_query.json new file mode 100644 index 0000000..1a94edb --- /dev/null +++ b/doc/expansion/joesandbox_query.json @@ -0,0 +1,9 @@ +{ + "description": "Query Joe Sandbox API with a submission url to get the json report and extract its data that is parsed and converted into MISP attributes and objects.\n\nThis url can by the way come from the result of the [joesandbox_submit expansion module](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/joesandbox_submit.py).", + "logo": "logos/joesandbox.png", + "requirements": ["jbxapi: Joe Sandbox API python3 library"], + "input": "Link of a Joe Sandbox sample or url submission.", + "output": "MISP attributes & objects parsed from the analysis report.", + "references": ["https://www.joesecurity.org", "https://www.joesandbox.com/"], + "features": "Module using the new format of modules able to return attributes and objects.\n\nThe module returns the same results as the import module [joe_import](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/import_mod/joe_import.py) taking directly the json report as input.\n\nEven if the introspection will allow all kinds of links to call this module, obviously only the ones presenting a sample or url submission in the Joe Sandbox API will return results.\n\nTo make it work you will need to fill the 'apikey' configuration with your Joe Sandbox API key and provide a valid link as input." +} diff --git a/doc/expansion/joesandbox_submit.json b/doc/expansion/joesandbox_submit.json new file mode 100644 index 0000000..ce0cb1f --- /dev/null +++ b/doc/expansion/joesandbox_submit.json @@ -0,0 +1,9 @@ +{ + "description": "A module to submit files or URLs to Joe Sandbox for an advanced analysis, and return the link of the submission.", + "logo": "logos/joesandbox.png", + "requirements": ["jbxapi: Joe Sandbox API python3 library"], + "input": "Sample, url (or domain) to submit to Joe Sandbox for an advanced analysis.", + "output": "Link of the data in input submitted to Joe Sandbox.", + "references": ["https://www.joesecurity.org", "https://www.joesandbox.com/"], + "features": "The module requires a Joe Sandbox API key to submit files or URL, and returns the link of the submitted analysis.\n\nIt is then possible, when the analysis is completed, to query the Joe Sandbox API to get the data related to the analysis, using the [joesandbox_query module](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/joesandbox_query.py) directly on this submission link." +} diff --git a/doc/expansion/urlhaus.json b/doc/expansion/urlhaus.json new file mode 100644 index 0000000..8e5cef3 --- /dev/null +++ b/doc/expansion/urlhaus.json @@ -0,0 +1,9 @@ +{ + "description": "Query of the URLhaus API to get additional information about the input attribute.", + "logo": "logos/urlhaus.png", + "requirements": [], + "input": "A domain, hostname, url, ip, md5 or sha256 attribute.", + "output": "MISP attributes & objects fetched from the result of the URLhaus API query.", + "references": ["https://urlhaus.abuse.ch/"], + "features": "Module using the new format of modules able to return attributes and objects.\n\nThe module takes one of the attribute type specified as input, and query the URLhaus API with it. If any result is returned by the API, attributes and objects are created accordingly." +} diff --git a/doc/import_mod/joeimport.json b/doc/import_mod/joeimport.json new file mode 100644 index 0000000..ceba4ab --- /dev/null +++ b/doc/import_mod/joeimport.json @@ -0,0 +1,9 @@ +{ + "description": "A module to import data from a Joe Sandbox analysis json report.", + "logo": "logos/joesandbox.png", + "requirements": [], + "input": "Json report of a Joe Sandbox analysis.", + "output": "MISP attributes & objects parsed from the analysis report.", + "references": ["https://www.joesecurity.org", "https://www.joesandbox.com/"], + "features": "Module using the new format of modules able to return attributes and objects.\n\nThe module returns the same results as the expansion module [joesandbox_query](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/joesandbox_query.py) using the submission link of the analysis to get the json report.\n\n" +} diff --git a/doc/logos/joesandbox.png b/doc/logos/joesandbox.png new file mode 100644 index 0000000000000000000000000000000000000000..8072f6ea18c6817d029e3615546b5b2cc1e96e0f GIT binary patch literal 9780 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 literal 0 HcmV?d00001 diff --git a/doc/logos/urlhaus.png b/doc/logos/urlhaus.png new file mode 100644 index 0000000000000000000000000000000000000000..b2913502e9025f71becde3e24cbd927890cbea18 GIT binary patch literal 62446 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 S!8hpLh0!uV7yN;}`Tqdf2gQj1 literal 0 HcmV?d00001