Index: wp-admin/includes/ms.php
===================================================================
--- wp-admin/includes/ms.php	(revision 15593)
+++ wp-admin/includes/ms.php	(working copy)
@@ -571,13 +571,17 @@
 
 /* Warn the admin if SECRET SALT information is missing from wp-config.php */
 function secret_salt_warning() {
+	global $wp_default_secret_key;
 	if ( !is_super_admin() )
 		return;
 	$secret_keys = array( 'AUTH_KEY', 'SECURE_AUTH_KEY', 'LOGGED_IN_KEY', 'NONCE_KEY', 'AUTH_SALT', 'SECURE_AUTH_SALT', 'LOGGED_IN_SALT', 'NONCE_SALT' );
 	$out = '';
+	$default = array();
 	foreach( $secret_keys as $key ) {
 		if ( ! defined( $key ) )
 			$out .= "define( '$key', '" . esc_html( wp_generate_password( 64, true, true ) ) . "' );<br />";
+		elseif ( $wp_default_secret_key == constant( $key ) || '' == constant( $key ) )
+			$default[] = $key;
 	}
 	if ( $out != '' ) {
 		$msg  = __( 'Warning! WordPress encrypts user cookies, but you must add the following lines to <strong>wp-config.php</strong> for it to be more secure.' );
@@ -586,6 +590,13 @@
 
 		echo "<div class='update-nag'>$msg</div>";
 	}
+	if ( !empty( $default ) ) {
+		$msg = __( 'Warning! WordPress encrypts user cookies, but in order to take advantage of that security you must supply custom values for the authentication keys and salts.' ) . '<br />';
+		$msg .= sprintf( __( 'You can generate secure values at the <a href="%s" title="WordPress.org secret key service">WordPress.org secret key service</a> site. ' ), 'https://api.wordpress.org/secret-key/1.1/salt/' ) . '<br />';
+		$msg .= sprintf( __( 'The following authentication keys/salts are using the default string or are blank in wp-config.php: %s' ), implode( ', ', $default ) );
+
+		echo "<div class='update-nag'>$msg</div>";
+	}
 }
 add_action( 'admin_notices', 'secret_salt_warning' );
 
