CVE-2017-0380 - Insertion of Sensitive Information into Log File

Severity

43%

Complexity

86%

Confidentiality

48%

The rend_service_intro_established function in or/rendservice.c in Tor before 0.2.8.15, 0.2.9.x before 0.2.9.12, 0.3.0.x before 0.3.0.11, 0.3.1.x before 0.3.1.7, and 0.3.2.x before 0.3.2.1-alpha, when SafeLogging is disabled, allows attackers to obtain sensitive information by leveraging access to the log files of a hidden service, because uninitialized stack data is included in an error message about construction of an introduction point circuit.

The rend_service_intro_established function in or/rendservice.c in Tor before 0.2.8.15, 0.2.9.x before 0.2.9.12, 0.3.0.x before 0.3.0.11, 0.3.1.x before 0.3.1.7, and 0.3.2.x before 0.3.2.1-alpha, when SafeLogging is disabled, allows attackers to obtain sensitive information by leveraging access to the log files of a hidden service, because uninitialized stack data is included in an error message about construction of an introduction point circuit.

CVSS 3.0 Base Score 5.9. CVSS Attack Vector: network. CVSS Attack Complexity: high. CVSS Vector: (CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N).

CVSS 2.0 Base Score 4.3. CVSS Attack Vector: network. CVSS Attack Complexity: medium. CVSS Vector: (AV:N/AC:M/Au:N/C:P/I:N/A:N).

Demo Examples

Insertion of Sensitive Information into Log File

CWE-532

In the following code snippet, a user's full name and credit card number are written to a log file.


               
logger.info("Username: " + usernme + ", CCN: " + ccn);

Insertion of Sensitive Information into Log File

CWE-532

This code stores location information about the current user:


               
}...
Log.e("ExampleActivity", "Caught exception: " + e + " While on User:" + User.toString());

When the application encounters an exception it will write the user object to the log. Because the user object contains location information, the user's location is also written to the log.

Insertion of Sensitive Information into Log File

CWE-532

In the example below, the method getUserBankAccount retrieves a bank account object from a database using the supplied username and account number to query the database. If an SQLException is raised when querying the database, an error message is created and output to a log file.


               
}
return userAccount;
}
userAccount = (BankAccount)queryResult.getObject(accountNumber);
Logger.getLogger(BankManager.class.getName()).log(Level.SEVERE, logMessage, ex);

The error message that is created includes information about the database query that may contain sensitive information about the database or query logic. In this case, the error message will expose the table name and column names used in the database. This data could be used to simplify other attacks, such as SQL injection (CWE-89) to directly access the database.

Overview

First reported 7 years ago

2017-09-18 16:29:00

Last updated 7 years ago

2017-11-06 02:29:00

Affected Software

Torproject Tor

Torproject Tor 0.2.9.0

0.2.9.0

Torproject Tor 0.2.9.0 Alpha

0.2.9.0

Torproject Tor 0.2.9.1 Alpha

0.2.9.1

Torproject Tor 0.2.9.2 Alpha

0.2.9.2

Torproject Tor 0.2.9.3 Alpha

0.2.9.3

Torproject Tor 0.2.9.4 Alpha

0.2.9.4

Torproject Tor 0.2.9.5 Alpha

0.2.9.5

Torproject Tor 0.2.9.6

0.2.9.6

Torproject Tor 0.2.9.8

0.2.9.8

Torproject Tor 0.2.9.9

0.2.9.9

Torproject Tor 0.2.9.10

0.2.9.10

Torproject Tor 0.2.9.11

0.2.9.11

Torproject Tor 0.3.0.0

0.3.0.0

Torproject Tor 0.3.0.1 Alpha

0.3.0.1

Torproject Tor 0.3.0.2 Alpha

0.3.0.2

Torproject Tor 0.3.0.3 Alpha

0.3.0.3

Torproject Tor 0.3.0.4 Release Candidate

0.3.0.4

Torproject Tor 0.3.0.5 Release Candidate

0.3.0.5

Torproject Tor 0.3.0.6

0.3.0.6

Torproject Tor 0.3.0.7

0.3.0.7

Torproject Tor 0.3.0.8

0.3.0.8

Torproject Tor 0.3.0.9

0.3.0.9

Torproject Tor 0.3.0.10

0.3.0.10

Torproject Tor 0.3.1.1 Alpha

0.3.1.1

Torproject Tor 0.3.1.2 Alpha

0.3.1.2

Torproject Tor 0.3.1.3 Alpha

0.3.1.3

Torproject Tor 0.3.1.4 Alpha

0.3.1.4

Torproject Tor 0.3.1.5 Alpha

0.3.1.5

Torproject Tor 0.3.2

0.3.2

Stay updated

ExploitPedia is constantly evolving. Sign up to receive a notification when we release additional functionality.

Get in touch

If you'd like to report a bug or have any suggestions for improvements then please do get in touch with us using this form. We will get back to you as soon as we can.