diff --git a/SECURITY.md b/SECURITY.md new file mode 100644 index 0000000..e138ec5 --- /dev/null +++ b/SECURITY.md @@ -0,0 +1,41 @@ + + +## Security + +Microsoft takes the security of our software products and services seriously, which includes all source code repositories managed through our GitHub organizations, which include [Microsoft](https://github.com/microsoft), [Azure](https://github.com/Azure), [DotNet](https://github.com/dotnet), [AspNet](https://github.com/aspnet), [Xamarin](https://github.com/xamarin), and [our GitHub organizations](https://opensource.microsoft.com/). + +If you believe you have found a security vulnerability in any Microsoft-owned repository that meets [Microsoft's definition of a security vulnerability](https://aka.ms/opensource/security/definition), please report it to us as described below. + +## Reporting Security Issues + +**Please do not report security vulnerabilities through public GitHub issues.** + +Instead, please report them to the Microsoft Security Response Center (MSRC) at [https://msrc.microsoft.com/create-report](https://aka.ms/opensource/security/create-report). + +If you prefer to submit without logging in, send email to [secure@microsoft.com](mailto:secure@microsoft.com). If possible, encrypt your message with our PGP key; please download it from the [Microsoft Security Response Center PGP Key page](https://aka.ms/opensource/security/pgpkey). + +You should receive a response within 24 hours. If for some reason you do not, please follow up via email to ensure we received your original message. Additional information can be found at [microsoft.com/msrc](https://aka.ms/opensource/security/msrc). + +Please include the requested information listed below (as much as you can provide) to help us better understand the nature and scope of the possible issue: + + * Type of issue (e.g. buffer overflow, SQL injection, cross-site scripting, etc.) + * Full paths of source file(s) related to the manifestation of the issue + * The location of the affected source code (tag/branch/commit or direct URL) + * Any special configuration required to reproduce the issue + * Step-by-step instructions to reproduce the issue + * Proof-of-concept or exploit code (if possible) + * Impact of the issue, including how an attacker might exploit the issue + +This information will help us triage your report more quickly. + +If you are reporting for a bug bounty, more complete reports can contribute to a higher bounty award. Please visit our [Microsoft Bug Bounty Program](https://aka.ms/opensource/security/bounty) page for more details about our active programs. + +## Preferred Languages + +We prefer all communications to be in English. + +## Policy + +Microsoft follows the principle of [Coordinated Vulnerability Disclosure](https://aka.ms/opensource/security/cvd). + + diff --git a/blobxfer/util.py b/blobxfer/util.py index d589f03..a089aeb 100644 --- a/blobxfer/util.py +++ b/blobxfer/util.py @@ -340,8 +340,8 @@ def explode_azure_storage_url(url): tmp = url.split('/') host = tmp[2].split('.') sa = host[0] - mode = host[1].lower() - ep = '.'.join(host[2:]) + mode = host[len(host) - 4].lower() + ep = '.'.join(host[(len(host) - 3):]) tmp = '/'.join(tmp[3:]).split('?') rpath = tmp[0] if len(tmp) > 1: diff --git a/tests/test_blobxfer_util.py b/tests/test_blobxfer_util.py index a4cfbfc..5429588 100644 --- a/tests/test_blobxfer_util.py +++ b/tests/test_blobxfer_util.py @@ -236,3 +236,11 @@ def test_explode_azure_storage_url(): assert ep == 'core.usgovcloudapi.net' assert rpath == 'cont2/file2' assert sas == 'sas' + + url = 'https://managed-disk.z31.blob.storage.azure.net/randcont/abcd?sas' + sa, mode, ep, rpath, sas = blobxfer.util.explode_azure_storage_url(url) + assert sa == 'managed-disk' + assert mode == 'blob' + assert ep == 'storage.azure.net' + assert rpath == 'randcont/abcd' + assert sas == 'sas' diff --git a/tox.ini b/tox.ini index f76b9f0..8653870 100644 --- a/tox.ini +++ b/tox.ini @@ -3,7 +3,7 @@ envlist = py36, py37, py38, py39 [testenv] deps = -rtest_requirements.txt -passenv = CI TRAVIS TRAVIS_* +passenv = CI, TRAVIS, TRAVIS_* commands = pip list --format=columns --outdated flake8 --exit-zero {envsitepackagesdir}/blobxfer_cli/