Amazon Redshift

Redshift Cluster Default Master Username

Risk Level: Low

Description

This plugin ensures that Amazon Redshift clusters are not using 'awsuser' (default master username) for database access. For best security practices and minimizing brute-force attacks for your clusters, it is recommended to use a different master username.

About the Service

Amazon RedShift: Amazon RedShift is a data warehouse with fast and secure data analyzing features. It is a powerful and robust service powered by Amazon to run SQL queries and even deploy ML (Machine Learning) models on the data. For additional monitoring benefits, it also provides access to real time operational analytics.

Impact

Since ‘awsuser’ is the default username for the cluster, an attacker can brute-force the password to intrude into the cluster. To minimize the possibility of such attacks, it is recommended to change the default master username.

Steps to Reproduce

Using AWS Console-

  1. Log In to your AWS Console.
  2. Open the Amazon RedShift Console. You can use this link (https://console.aws.amazon.com/redshiftv2/) to navigate directly if already logged in. 
  3. From the left navigation pane, click on Clusters.
  4. A list of clusters will be displayed. Select the cluster you want to examine by clicking on it’s Cluster Name.
  5. Move to the Properties tab.
  6. In the Database Configurations check if the Master User Name is not set to “awsuser”. In such a case, the vulnerability exists.
  7. Repeat steps for all the clusters you wish to examine.

Steps for Remediation

Create a new cluster with different master username.

  1. Log In to your AWS Console.
  2. Open the Amazon RedShift Console. You can use this link (https://console.aws.amazon.com/redshiftv2/) to navigate directly if already logged in. 
  3. From the left navigation pane, click on Clusters.
  4. A list of clusters will be displayed. Select the vulnerable cluster by clicking on it’s Cluster Name.
  5. From the Actions menu, click on Create Snapshot to make a backup.
  6. Specify a new name and retention period. Click on Create Snapshot.
  7. After the snapshot is created, you can safely delete the vulnerable cluster. Click on Actions and choose Delete. Uncheck the create final snapshot option as we have already created a snapshot for the same.
  8. Now, create a new cluster with the snapshot saved. Move to the Snapshots section from the Left navigation pane.
  9. Select the snapshot created by clicking on its Name.
  10. Click on Restore from snapshot from the top right corner.
  11. Change the Node Type from the dropdown-list. Finally, click on Restore Cluster from snapshot to create the cluster.
  12. In the Database Configuration section, specify a new user name for the cluster.
  13. Repeat steps for all the vulnerable clusters.