exploit the possibilities
Home Files News &[SERVICES_TAB]About Contact Add New

ElasticSearch Cloud-Azure Insecure Transit

ElasticSearch Cloud-Azure Insecure Transit
Posted Sep 19, 2015
Authored by Pedro Andujar

The connection string for ELK cloud-azure plugin contains hardcoded http url with the lack of encryption and certificate validation, therefore it is prone to sniffing and MiTM attacks. A potential attacker with the required access to the network traffic would be able to intercept the content of the indexes snapshots.

tags | advisory, web, info disclosure
SHA-256 | b9cb4d374481587d608107ba93bf30d52ff5610e4e98d41e70599fe1f0ceeca7

ElasticSearch Cloud-Azure Insecure Transit

Change Mirror Download
          ===============================
- Advisory -
===============================

Tittle: ElasticSearch cloud-azure plugin - Indexes content transmitted in cleartext
Risk: Medium/Low
Date: 16.Sept.2015
Author: Pedro Andujar
Twitter: @pandujar


.: [ INTRO ] :.

Elasticsearch is a search server based on Lucene. It provides a distributed, multitenant-capable full-text
search engine with a RESTful web interface and schema-free JSON documents. Elasticsearch is developed in
Java and is released as open source under the terms of the Apache License.

ElasticSearch comes with Snapshot and Restore capabilities to use as backup. Cloud-azure plugin enables ELK
to store the indexes snapshots into Azure blobs. Affected versions: ElasticSearch 1.7.2 and prior.


.: [ TECHNICAL DESCRIPTION ] :.

Azure recommendation:
"The Microsoft Azure storage services support both HTTP and HTTPS; however, using HTTPS is highly recommended."

Insecure Client Implementation:
The connection string for ELK cloud-azure plugin contains hardcoded http url with the lack of encryption and
certificate validation, therefore its prone to sniffing and MiTM attacks. A potential attacker with the required
access to the network traffic would be able to intercept the content of the indexes snapshots.

It's a good thing that Azure uses SharedKey authentication, so the account key is not sent directly through
http traffic, instead it sends hmac-sha256 signature of the http headers (using the account key) for each
request.

Affected Src:
elasticsearch/plugins/cloud-azure/src/main/java/org/elasticsearch/cloud/azure/storage/AzureStorageServiceImpl.java

@Inject
public AzureStorageServiceImpl(Settings settings) {
super(settings);
// We try to load storage API settings from `cloud.azure.`
account = settings.get(ACCOUNT);
key = settings.get(KEY);
blob = "http://" + account + ".blob.core.windows.net/";

try {
if (account != null) {
logger.trace("creating new Azure storage client using account [{}], key [{}], blob [{}]", account, key, blob);

String storageConnectionString =
"DefaultEndpointsProtocol=http;"
+ "AccountName="+ account +";"
+ "AccountKey=" + key;

// Retrieve storage account from connection-string.
CloudStorageAccount storageAccount = CloudStorageAccount.parse(storageConnectionString);




.: [ CHANGELOG ] :.

* 10/Sept/2015: - Security at Elastic contacted.
* 10/Sept/2015: - Security at Elastic ack.
* 12/Sept/2015: - Elastic replies confirming they plan to fix. But is under their risk threshold
to be considered a vulnerability.
* 15/Sept/2015: - Quick workarround: https://github.com/elastic/elasticsearch/pull/13573
* 16/Sept/2015: - Authorized to disclose.


.: [ SOLUTIONS ] :.

Apply the following quickfix:
https://github.com/elastic/elasticsearch/pull/13573

Consider changing your account name and key.
Evaluate possible indirect impact due to stored information.


.: [ REFERENCES ] :.

[+] CWE-319: Cleartext Transmission of Sensitive Information
https://cwe.mitre.org/data/definitions/319.html

[+] OWASP 2010-A9-Insufficient Transport Layer Protection
https://www.owasp.org/index.php/Top_10_2010-A9-Insufficient_Transport_Layer_Protection

[+] ELK Security
https://www.elastic.co/community/security

[+] Azure SharedKey Auth
https://msdn.microsoft.com/en-us/library/azure/dd179428.aspx

[+] !dSR - Digital Security Research
http://www.digitalsec.net/




-=EOF=-


Login or Register to add favorites

File Archive:

April 2024

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Apr 1st
    10 Files
  • 2
    Apr 2nd
    26 Files
  • 3
    Apr 3rd
    40 Files
  • 4
    Apr 4th
    6 Files
  • 5
    Apr 5th
    26 Files
  • 6
    Apr 6th
    0 Files
  • 7
    Apr 7th
    0 Files
  • 8
    Apr 8th
    22 Files
  • 9
    Apr 9th
    14 Files
  • 10
    Apr 10th
    10 Files
  • 11
    Apr 11th
    13 Files
  • 12
    Apr 12th
    14 Files
  • 13
    Apr 13th
    0 Files
  • 14
    Apr 14th
    0 Files
  • 15
    Apr 15th
    30 Files
  • 16
    Apr 16th
    10 Files
  • 17
    Apr 17th
    22 Files
  • 18
    Apr 18th
    45 Files
  • 19
    Apr 19th
    8 Files
  • 20
    Apr 20th
    0 Files
  • 21
    Apr 21st
    0 Files
  • 22
    Apr 22nd
    11 Files
  • 23
    Apr 23rd
    68 Files
  • 24
    Apr 24th
    23 Files
  • 25
    Apr 25th
    0 Files
  • 26
    Apr 26th
    0 Files
  • 27
    Apr 27th
    0 Files
  • 28
    Apr 28th
    0 Files
  • 29
    Apr 29th
    0 Files
  • 30
    Apr 30th
    0 Files

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2022 Packet Storm. All rights reserved.

Services
Security Services
Hosting By
Rokasec
close