From f6f8a0c4f4fed8609f6b8075deebdc700c361739 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bartosz=20Bieli=C5=84ski?= Date: Tue, 5 Dec 2023 09:55:59 +0100 Subject: [PATCH 01/12] PAPP-32426: Removing hardcoded paths to phantom home --- LICENSE | 2 +- release_notes/unreleased.md | 1 + smtp.json | 6 ++---- smtp_connector.py | 10 +++------- wheels/py3/soupsieve-2.4.1-py3-none-any.whl | Bin 36379 -> 0 bytes wheels/py3/soupsieve-2.5-py3-none-any.whl | Bin 0 -> 36131 bytes 6 files changed, 7 insertions(+), 12 deletions(-) delete mode 100644 wheels/py3/soupsieve-2.4.1-py3-none-any.whl create mode 100644 wheels/py3/soupsieve-2.5-py3-none-any.whl diff --git a/LICENSE b/LICENSE index bc44b00..d587e15 100644 --- a/LICENSE +++ b/LICENSE @@ -198,4 +198,4 @@ distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and - limitations under the License. \ No newline at end of file + limitations under the License. diff --git a/release_notes/unreleased.md b/release_notes/unreleased.md index fbcb2fd..fbfc3be 100644 --- a/release_notes/unreleased.md +++ b/release_notes/unreleased.md @@ -1 +1,2 @@ **Unreleased** +* Removing hardcoded paths to phantom home [PAPP-32426] \ No newline at end of file diff --git a/smtp.json b/smtp.json index 030f4d9..1104dd4 100644 --- a/smtp.json +++ b/smtp.json @@ -699,9 +699,7 @@ } } ], - "pip_dependencies": { - "wheel": [] - }, + "pip_dependencies": {}, "pip39_dependencies": { "wheel": [ { @@ -722,7 +720,7 @@ }, { "module": "soupsieve", - "input_file": "wheels/py3/soupsieve-2.4.1-py3-none-any.whl" + "input_file": "wheels/py3/soupsieve-2.5-py3-none-any.whl" }, { "module": "tinycss2", diff --git a/smtp_connector.py b/smtp_connector.py index af91e02..9d65441 100644 --- a/smtp_connector.py +++ b/smtp_connector.py @@ -41,7 +41,6 @@ from bs4 import BeautifulSoup from phantom.action_result import ActionResult from phantom.base_connector import BaseConnector -from phantom.vault import Vault from request_handler import RequestStateHandler, _get_dir_name_from_app_name from smtp_consts import * @@ -693,12 +692,9 @@ def _add_attachments(self, outer, attachments, action_result, message_encoding): if '.pdf' not in attachment_vault_id: return action_result.set_status(phantom.APP_ERROR, SMTP_ERROR_SMTP_SEND_EMAIL) - if hasattr(Vault, "get_phantom_home"): - report_dir_pre_4_0 = '{0}/www/reports'.format(self.get_phantom_home()) - report_dir_post_4_0 = '{0}/vault/reports'.format(self.get_phantom_home()) - else: - report_dir_pre_4_0 = '/opt/phantom/www/reports' - report_dir_post_4_0 = '/opt/phantom/vault/reports' + phantom_home_path = self.get_phantom_home() + report_dir_pre_4_0 = f"{phantom_home_path}/www/reports" + report_dir_post_4_0 = f"{phantom_home_path}/vault/reports" filename = '' for report_dir in (report_dir_post_4_0, report_dir_pre_4_0): diff --git a/wheels/py3/soupsieve-2.4.1-py3-none-any.whl b/wheels/py3/soupsieve-2.4.1-py3-none-any.whl deleted file mode 100644 index 26a486cb50e317481f18b38a742b78eb8155d090..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36379 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˟D^{nf) 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 E00(_>=l}o! diff --git a/wheels/py3/soupsieve-2.5-py3-none-any.whl b/wheels/py3/soupsieve-2.5-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..e1be1281914864efacd06642fbf27970213ee2b2 GIT binary patch literal 36131 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 Date: Mon, 11 Dec 2023 10:52:33 +0100 Subject: [PATCH 02/12] Refactoring a bit --- smtp.json | 2 +- smtp_connector.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/smtp.json b/smtp.json index 1104dd4..70d064a 100644 --- a/smtp.json +++ b/smtp.json @@ -11,7 +11,7 @@ "product_vendor": "Generic", "product_name": "SMTP", "product_version_regex": ".*", - "min_phantom_version": "6.1.0", + "min_phantom_version": "6.1.1", "rest_handler": "request_handler.handle_request", "license": "Copyright (c) 2016-2023 Splunk Inc.", "logo": "logo_splunk.svg", diff --git a/smtp_connector.py b/smtp_connector.py index 9d65441..3f9ea67 100644 --- a/smtp_connector.py +++ b/smtp_connector.py @@ -693,8 +693,8 @@ def _add_attachments(self, outer, attachments, action_result, message_encoding): return action_result.set_status(phantom.APP_ERROR, SMTP_ERROR_SMTP_SEND_EMAIL) phantom_home_path = self.get_phantom_home() - report_dir_pre_4_0 = f"{phantom_home_path}/www/reports" - report_dir_post_4_0 = f"{phantom_home_path}/vault/reports" + report_dir_pre_4_0 = os.path.join(phantom_home_path, "www", "reports") + report_dir_post_4_0 = os.path.join(phantom_home_path, "vault", "reports") filename = '' for report_dir in (report_dir_post_4_0, report_dir_pre_4_0): From 9a1c9e844b1f5c99664111af64bb8c00b6e48fa1 Mon Sep 17 00:00:00 2001 From: splunk-soar-connectors-admin Date: Mon, 11 Dec 2023 10:16:34 +0000 Subject: [PATCH 03/12] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index fa19397..08b2357 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ Connector Version: 3.1.0 Product Vendor: Generic Product Name: SMTP Product Version Supported (regex): ".\*" -Minimum Product Version: 6.1.0 +Minimum Product Version: 6.1.1 This app provides the ability to send email using SMTP From 6cb03bd263524d58fbdd3521fed1c2deef31cf4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bartosz=20Bieli=C5=84ski?= Date: Mon, 11 Dec 2023 15:22:20 +0100 Subject: [PATCH 04/12] Applying suggestion from PR Review, refactoring. --- smtp.json | 1 - smtp_connector.py | 15 +++++---------- 2 files changed, 5 insertions(+), 11 deletions(-) diff --git a/smtp.json b/smtp.json index 70d064a..6168bb2 100644 --- a/smtp.json +++ b/smtp.json @@ -699,7 +699,6 @@ } } ], - "pip_dependencies": {}, "pip39_dependencies": { "wheel": [ { diff --git a/smtp_connector.py b/smtp_connector.py index 3f9ea67..4fc0928 100644 --- a/smtp_connector.py +++ b/smtp_connector.py @@ -693,19 +693,14 @@ def _add_attachments(self, outer, attachments, action_result, message_encoding): return action_result.set_status(phantom.APP_ERROR, SMTP_ERROR_SMTP_SEND_EMAIL) phantom_home_path = self.get_phantom_home() - report_dir_pre_4_0 = os.path.join(phantom_home_path, "www", "reports") - report_dir_post_4_0 = os.path.join(phantom_home_path, "vault", "reports") + report_dir = os.path.join(phantom_home_path, "vault", "reports") - filename = '' - for report_dir in (report_dir_post_4_0, report_dir_pre_4_0): - test_filename = os.path.join(report_dir, attachment_vault_id) - test_filename = os.path.abspath(test_filename) + test_filename = os.path.join(report_dir, attachment_vault_id) + test_filename = os.path.abspath(test_filename) - if os.path.isfile(test_filename): - filename = test_filename - break + filename = test_filename if os.path.isfile(test_filename) else "" - is_valid_path = filename.startswith(report_dir_pre_4_0) or filename.startswith(report_dir_post_4_0) + is_valid_path = filename.startswith(report_dir) if not filename or not is_valid_path: return action_result.set_status(phantom.APP_ERROR, SMTP_ERROR_SMTP_SEND_EMAIL) From 557a0b9908faf0182058392c00a1d29154b0784a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bartosz=20Bieli=C5=84ski?= Date: Wed, 13 Dec 2023 09:46:14 +0100 Subject: [PATCH 05/12] Updating release notes --- release_notes/unreleased.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/release_notes/unreleased.md b/release_notes/unreleased.md index fbfc3be..3ebbd5c 100644 --- a/release_notes/unreleased.md +++ b/release_notes/unreleased.md @@ -1,2 +1,2 @@ **Unreleased** -* Removing hardcoded paths to phantom home [PAPP-32426] \ No newline at end of file +* Bug fix for accessing vault temp directory path [PAPP-32426] \ No newline at end of file From 6732c398e8507406da9575a01e221e2718019cea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bartosz=20Bieli=C5=84ski?= Date: Thu, 4 Jan 2024 12:58:33 +0100 Subject: [PATCH 06/12] Kicking off pipeline From 4853cb67e8c7ac09a75b94f9ff3ba324835fe3ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bartosz=20Bieli=C5=84ski?= Date: Thu, 4 Jan 2024 13:43:53 +0100 Subject: [PATCH 07/12] Fixing year in license --- LICENSE | 2 +- smtp.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/LICENSE b/LICENSE index d587e15..12536c5 100644 --- a/LICENSE +++ b/LICENSE @@ -186,7 +186,7 @@ same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright (c) 2016-2023 Splunk Inc. + Copyright (c) 2016-2024 Splunk Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/smtp.json b/smtp.json index 6168bb2..0188111 100644 --- a/smtp.json +++ b/smtp.json @@ -13,7 +13,7 @@ "product_version_regex": ".*", "min_phantom_version": "6.1.1", "rest_handler": "request_handler.handle_request", - "license": "Copyright (c) 2016-2023 Splunk Inc.", + "license": "Copyright (c) 2016-2024 Splunk Inc.", "logo": "logo_splunk.svg", "logo_dark": "logo_splunk_dark.svg", "python_version": "3", From dc2d2f94a4586d002238c5ce01d901e942c39533 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 6 Mar 2024 05:04:19 -0800 Subject: [PATCH 08/12] Bumped up the version of smtp from 3.1.0 to 3.1.1 --- smtp.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/smtp.json b/smtp.json index 0188111..acda54a 100644 --- a/smtp.json +++ b/smtp.json @@ -5,8 +5,8 @@ "publisher": "Splunk", "type": "email", "main_module": "smtp_connector.py", - "app_version": "3.1.0", - "utctime_updated": "2023-01-23T18:26:04.000000Z", + "app_version": "3.1.1", + "utctime_updated": "2024-03-06T13:04:08.000000Z", "package_name": "phantom_smtp", "product_vendor": "Generic", "product_name": "SMTP", @@ -731,4 +731,4 @@ } ] } -} +} \ No newline at end of file From aaa2af4b1b550686d0178568141b310a8d50d877 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 6 Mar 2024 05:05:09 -0800 Subject: [PATCH 09/12] Release notes for version 3.1.1 --- LICENSE | 2 +- README.md | 2 +- __init__.py | 2 +- release_notes/3.1.1.md | 1 + release_notes/unreleased.md | 1 - request_handler.py | 2 +- smtp_connector.py | 2 +- smtp_consts.py | 2 +- 8 files changed, 7 insertions(+), 7 deletions(-) create mode 100644 release_notes/3.1.1.md diff --git a/LICENSE b/LICENSE index 12536c5..b7b3c69 100644 --- a/LICENSE +++ b/LICENSE @@ -198,4 +198,4 @@ distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and - limitations under the License. + limitations under the License. \ No newline at end of file diff --git a/README.md b/README.md index 08b2357..2ade802 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ # SMTP Publisher: Splunk -Connector Version: 3.1.0 +Connector Version: 3.1.1 Product Vendor: Generic Product Name: SMTP Product Version Supported (regex): ".\*" diff --git a/__init__.py b/__init__.py index bc35686..d7d82bb 100644 --- a/__init__.py +++ b/__init__.py @@ -1,6 +1,6 @@ # File: __init__.py # -# Copyright (c) 2016-2023 Splunk Inc. +# Copyright (c) 2016-2024 Splunk Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/release_notes/3.1.1.md b/release_notes/3.1.1.md new file mode 100644 index 0000000..c95e1d1 --- /dev/null +++ b/release_notes/3.1.1.md @@ -0,0 +1 @@ +* Bug fix for accessing vault temp directory path [PAPP-32426] \ No newline at end of file diff --git a/release_notes/unreleased.md b/release_notes/unreleased.md index 3ebbd5c..fbcb2fd 100644 --- a/release_notes/unreleased.md +++ b/release_notes/unreleased.md @@ -1,2 +1 @@ **Unreleased** -* Bug fix for accessing vault temp directory path [PAPP-32426] \ No newline at end of file diff --git a/request_handler.py b/request_handler.py index 3afcae7..68da0d7 100644 --- a/request_handler.py +++ b/request_handler.py @@ -1,6 +1,6 @@ # File: request_handler.py # -# Copyright (c) 2016-2023 Splunk Inc. +# Copyright (c) 2016-2024 Splunk Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/smtp_connector.py b/smtp_connector.py index 4fc0928..3b5ba87 100644 --- a/smtp_connector.py +++ b/smtp_connector.py @@ -1,6 +1,6 @@ # File: smtp_connector.py # -# Copyright (c) 2016-2023 Splunk Inc. +# Copyright (c) 2016-2024 Splunk Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/smtp_consts.py b/smtp_consts.py index c1e4c9f..58a8e8c 100644 --- a/smtp_consts.py +++ b/smtp_consts.py @@ -1,6 +1,6 @@ # File: smtp_consts.py # -# Copyright (c) 2016-2023 Splunk Inc. +# Copyright (c) 2016-2024 Splunk Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. From 4cca29651776a3ed31e5b168ca185a8b4ef2d020 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 6 Mar 2024 05:05:34 -0800 Subject: [PATCH 10/12] Release notes for version 3.1.1 From ef2f804411170bab33ba2e0038e971d676326c75 Mon Sep 17 00:00:00 2001 From: leobao-splunk <140460351+leobao-splunk@users.noreply.github.com> Date: Tue, 4 Jun 2024 00:22:43 -0700 Subject: [PATCH 11/12] [PAPP-33723] SMTP: Bugfix - Additional validation on sender email (#26) * PAPP-33723 - add additional validation on sender email to not include restricted terms in domain * Update README.md * PAPP-33723 - apply linter * PAPP-33723 - update 'contains' for output * Update README.md * updated validation logic * Update README.md * PAPP-33723 - update check to only run when from email inputted in action * updated logic for test connectivity while handling restricted domains * updated logic for handling domains in send email actions * updated logic for checing from parameter * updated logic for email validataion * removed single email restriction for from * updated failure mesaage * empty commit to trigger pipelines * empty commit to trigger pipelines * updated minimum phantom version * Update README.md * empty commit to trigger pipelines * empty commit * empty commit * empty commit --------- Co-authored-by: splunk-soar-connectors-admin Co-authored-by: hardik-crest --- .pre-commit-config.yaml | 2 +- LICENSE | 2 +- NOTICE | 7 +--- README.md | 10 +++--- manual_readme_content.md | 2 +- release_notes/unreleased.md | 1 + smtp.json | 24 ++++---------- smtp_connector.py | 30 ++++++++++++++++++ .../py3/beautifulsoup4-4.9.1-py3-none-any.whl | Bin 115057 -> 0 bytes wheels/py3/soupsieve-2.5-py3-none-any.whl | Bin 36131 -> 0 bytes wheels/shared/six-1.16.0-py2.py3-none-any.whl | Bin 11053 -> 0 bytes 11 files changed, 46 insertions(+), 32 deletions(-) delete mode 100644 wheels/py3/beautifulsoup4-4.9.1-py3-none-any.whl delete mode 100644 wheels/py3/soupsieve-2.5-py3-none-any.whl delete mode 100644 wheels/shared/six-1.16.0-py2.py3-none-any.whl diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 4bd889c..8b72db0 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,6 +1,6 @@ repos: - repo: https://github.com/phantomcyber/dev-cicd-tools - rev: v1.16 + rev: v1.18 hooks: - id: org-hook - id: package-app-dependencies diff --git a/LICENSE b/LICENSE index b7b3c69..12536c5 100644 --- a/LICENSE +++ b/LICENSE @@ -198,4 +198,4 @@ distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and - limitations under the License. \ No newline at end of file + limitations under the License. diff --git a/NOTICE b/NOTICE index a138933..99cca0a 100644 --- a/NOTICE +++ b/NOTICE @@ -1,5 +1,5 @@ Splunk SOAR SMTP -Copyright (c) 2016-2023 Splunk Inc. +Copyright (c) 2016-2024 Splunk Inc. Third-party Software Attributions: @@ -9,8 +9,3 @@ License: MIT Copyright 2004-2017 Leonard Richardson Copyright 2004-2019 Leonard Richardson Copyright 2018 Isaac Muse - -Library: requests -Version: 2.25.0 -License: Apache 2.0 -Kenneth Reitz diff --git a/README.md b/README.md index 2ade802..c949a46 100644 --- a/README.md +++ b/README.md @@ -2,16 +2,16 @@ # SMTP Publisher: Splunk -Connector Version: 3.1.1 +Connector Version: 3.2.0 Product Vendor: Generic Product Name: SMTP Product Version Supported (regex): ".\*" -Minimum Product Version: 6.1.1 +Minimum Product Version: 6.2.1 This app provides the ability to send email using SMTP [comment]: # " File: README.md" -[comment]: # " Copyright (c) 2016-2023 Splunk Inc." +[comment]: # " Copyright (c) 2016-2024 Splunk Inc." [comment]: # "" [comment]: # " Licensed under Apache 2.0 (https://www.apache.org/licenses/LICENSE-2.0.txt)" [comment]: # "" @@ -307,7 +307,7 @@ Some points to note: