{"id":7003,"date":"2018-12-31T12:28:56","date_gmt":"2018-12-31T12:28:56","guid":{"rendered":"https:\/\/dbtut.com\/?p=7003"},"modified":"2018-12-31T12:28:56","modified_gmt":"2018-12-31T12:28:56","slug":"how-secure-is-the-passwords-of-your-sql-logins","status":"publish","type":"post","link":"https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/","title":{"rendered":"How secure is the passwords of your SQL logins"},"content":{"rendered":"<p>&nbsp;<\/p>\n<p>I was doing some security work to make a SQL Server production environment safer and ready for inspections. I had more than 900 SQL Login in the environment.<\/p>\n<p>First of all, with the help of the following query, I looked at how much of these SQL Logins were checked with Password Policy:<\/p>\n<pre class=\"lang:default decode:true \">SELECT is_policy_checked, count(*) [count] FROM sys.sql_logins GROUP BY is_policy_checked<\/pre>\n<p>First of all, let me tell you how I did the test. On SQL Server, there is a Function named &#8220;<strong>PWDCOMPARE<\/strong>&#8220;. This function basically takes 2 parameters, the first one is the password you will try, the second one is the encryption has.<\/p>\n<p><strong>I ran queries similar to the following:<\/strong><\/p>\n<pre class=\"lang:default decode:true \">SELECT name FROM sys.sql_logins WHERE PWDCOMPARE('1234', password_hash) = 1\u00a0\r\nSELECT name FROM sys.sql_logins WHERE PWDCOMPARE('12345', password_hash) = 1\u00a0\r\nSELECT name FROM sys.sql_logins WHERE PWDCOMPARE('123456', password_hash) = 1\u00a0\r\nSELECT name FROM sys.sql_logins WHERE PWDCOMPARE('12345678', password_hash) = 1\u00a0\r\nSELECT name FROM sys.sql_logins WHERE PWDCOMPARE('1', password_hash) = 1\u00a0\r\nSELECT name FROM sys.sql_logins WHERE PWDCOMPARE('111111', password_hash) = 1\u00a0\r\nSELECT name FROM sys.sql_logins WHERE PWDCOMPARE('qwerty', password_hash) = 1\u00a0\r\nSELECT name FROM sys.sql_logins WHERE PWDCOMPARE('abc123', password_hash) = 1<\/pre>\n<p><strong>The following query returns the logins whose password is null:<\/strong><\/p>\n<pre class=\"lang:default decode:true \">SELECT name FROM sys.sql_logins WHERE PWDCOMPARE('', password_hash) = 1<\/pre>\n<p><strong>The following query returns the login whose password is the user name:<\/strong><\/p>\n<pre class=\"lang:default decode:true \">SELECT name FROM sys.sql_logins WHERE PWDCOMPARE(name, password_hash) = 1<\/pre>\n<p>I strongly recommend that you do similar security work in SQL Server Instance that you take over. In every possible SQL Instance, you must try to enable Password Policy for Logins so that you can implement a specific security policy.<\/p>\n<p>According to the Verizon Business 2012 data leakage survey report, 96% of the leaked data in 2011 were taken from database servers.<\/p>\n<p>In %55 of this, predictable passwords were used.<\/p>\n<p>In 40% of this, stolen account information was used.<\/p>\n<p>According to Application Security Inc.research, the top 10 threats to their databases are users with weak passwords or blank passwords. So obviously two studies complement each other. With my test, three studies confirm each other. If you test your SQL logins in your own environment and share your findings with us, I would appreciate it!<\/p>\n\n<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_7003\" class=\"pvc_stats all  \" data-element-id=\"7003\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/dbtut.com\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>&nbsp; I was doing some security work to make a SQL Server production environment safer and ready for inspections. I had more than 900 SQL Login in the environment. First of all, with the help of the following query, I looked at how much of these SQL Logins were checked with Password Policy: SELECT is_policy_checked, &hellip;<\/p>\n<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_7003\" class=\"pvc_stats all  \" data-element-id=\"7003\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/dbtut.com\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n","protected":false},"author":423,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[3],"tags":[1595,1594],"class_list":["post-7003","post","type-post","status-publish","format-standard","","category-mssql","tag-find-blank-passwords","tag-pwdcompare"],"aioseo_notices":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.9 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How secure is the passwords of your SQL logins - Database Tutorials<\/title>\n<meta name=\"description\" content=\"How secure is the passwords of your SQL logins?\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How secure is the passwords of your SQL logins - Database Tutorials\" \/>\n<meta property=\"og:description\" content=\"How secure is the passwords of your SQL logins?\" \/>\n<meta property=\"og:url\" content=\"https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/\" \/>\n<meta property=\"og:site_name\" content=\"Database Tutorials\" \/>\n<meta property=\"article:published_time\" content=\"2018-12-31T12:28:56+00:00\" \/>\n<meta name=\"author\" content=\"Ekrem \u00d6nsoy\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Ekrem \u00d6nsoy\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/\"},\"author\":{\"name\":\"Ekrem \u00d6nsoy\",\"@id\":\"https:\/\/dbtut.com\/#\/schema\/person\/42a3e874ed0bf8053fa123a3a1f6ee46\"},\"headline\":\"How secure is the passwords of your SQL logins\",\"datePublished\":\"2018-12-31T12:28:56+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/\"},\"wordCount\":264,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/dbtut.com\/#organization\"},\"keywords\":[\"Find blank passwords\",\"PWDCOMPARE\"],\"articleSection\":[\"MSSQL\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/\",\"url\":\"https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/\",\"name\":\"How secure is the passwords of your SQL logins - Database Tutorials\",\"isPartOf\":{\"@id\":\"https:\/\/dbtut.com\/#website\"},\"datePublished\":\"2018-12-31T12:28:56+00:00\",\"description\":\"How secure is the passwords of your SQL logins?\",\"breadcrumb\":{\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/dbtut.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How secure is the passwords of your SQL logins\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/dbtut.com\/#website\",\"url\":\"https:\/\/dbtut.com\/\",\"name\":\"Database Tutorials\",\"description\":\"MSSQL, Oracle, PostgreSQL, MySQL, MariaDB, DB2, Sybase, Teradata, Big Data, NOSQL, MongoDB, Couchbase, Cassandra, Windows, Linux\",\"publisher\":{\"@id\":\"https:\/\/dbtut.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/dbtut.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/dbtut.com\/#organization\",\"name\":\"dbtut\",\"url\":\"https:\/\/dbtut.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/dbtut.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/dbtut.com\/wp-content\/uploads\/2021\/02\/dbtutlogo.jpg\",\"contentUrl\":\"https:\/\/dbtut.com\/wp-content\/uploads\/2021\/02\/dbtutlogo.jpg\",\"width\":223,\"height\":36,\"caption\":\"dbtut\"},\"image\":{\"@id\":\"https:\/\/dbtut.com\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/dbtut.com\/#\/schema\/person\/42a3e874ed0bf8053fa123a3a1f6ee46\",\"name\":\"Ekrem \u00d6nsoy\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/dbtut.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/478b3dc5048390d7312367b30eee5be99c346dbd83706e82e0dd4e9678b77c94?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/478b3dc5048390d7312367b30eee5be99c346dbd83706e82e0dd4e9678b77c94?s=96&d=mm&r=g\",\"caption\":\"Ekrem \u00d6nsoy\"},\"description\":\"The original article was written in Turkish by Ekrem \u00d6nsoy and translated to English by dbtut with the consent of the author. The copyright of the article belongs to the author. The author shall not be liable in any way for any defect caused by translation.\",\"url\":\"https:\/\/dbtut.com\/index.php\/author\/ekremonsoy\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How secure is the passwords of your SQL logins - Database Tutorials","description":"How secure is the passwords of your SQL logins?","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/","og_locale":"en_US","og_type":"article","og_title":"How secure is the passwords of your SQL logins - Database Tutorials","og_description":"How secure is the passwords of your SQL logins?","og_url":"https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/","og_site_name":"Database Tutorials","article_published_time":"2018-12-31T12:28:56+00:00","author":"Ekrem \u00d6nsoy","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Ekrem \u00d6nsoy","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/#article","isPartOf":{"@id":"https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/"},"author":{"name":"Ekrem \u00d6nsoy","@id":"https:\/\/dbtut.com\/#\/schema\/person\/42a3e874ed0bf8053fa123a3a1f6ee46"},"headline":"How secure is the passwords of your SQL logins","datePublished":"2018-12-31T12:28:56+00:00","mainEntityOfPage":{"@id":"https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/"},"wordCount":264,"commentCount":0,"publisher":{"@id":"https:\/\/dbtut.com\/#organization"},"keywords":["Find blank passwords","PWDCOMPARE"],"articleSection":["MSSQL"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/","url":"https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/","name":"How secure is the passwords of your SQL logins - Database Tutorials","isPartOf":{"@id":"https:\/\/dbtut.com\/#website"},"datePublished":"2018-12-31T12:28:56+00:00","description":"How secure is the passwords of your SQL logins?","breadcrumb":{"@id":"https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/dbtut.com\/index.php\/2018\/12\/31\/how-secure-is-the-passwords-of-your-sql-logins\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/dbtut.com\/"},{"@type":"ListItem","position":2,"name":"How secure is the passwords of your SQL logins"}]},{"@type":"WebSite","@id":"https:\/\/dbtut.com\/#website","url":"https:\/\/dbtut.com\/","name":"Database Tutorials","description":"MSSQL, Oracle, PostgreSQL, MySQL, MariaDB, DB2, Sybase, Teradata, Big Data, NOSQL, MongoDB, Couchbase, Cassandra, Windows, Linux","publisher":{"@id":"https:\/\/dbtut.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/dbtut.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/dbtut.com\/#organization","name":"dbtut","url":"https:\/\/dbtut.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/dbtut.com\/#\/schema\/logo\/image\/","url":"https:\/\/dbtut.com\/wp-content\/uploads\/2021\/02\/dbtutlogo.jpg","contentUrl":"https:\/\/dbtut.com\/wp-content\/uploads\/2021\/02\/dbtutlogo.jpg","width":223,"height":36,"caption":"dbtut"},"image":{"@id":"https:\/\/dbtut.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/dbtut.com\/#\/schema\/person\/42a3e874ed0bf8053fa123a3a1f6ee46","name":"Ekrem \u00d6nsoy","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/dbtut.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/478b3dc5048390d7312367b30eee5be99c346dbd83706e82e0dd4e9678b77c94?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/478b3dc5048390d7312367b30eee5be99c346dbd83706e82e0dd4e9678b77c94?s=96&d=mm&r=g","caption":"Ekrem \u00d6nsoy"},"description":"The original article was written in Turkish by Ekrem \u00d6nsoy and translated to English by dbtut with the consent of the author. The copyright of the article belongs to the author. The author shall not be liable in any way for any defect caused by translation.","url":"https:\/\/dbtut.com\/index.php\/author\/ekremonsoy\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/posts\/7003","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/users\/423"}],"replies":[{"embeddable":true,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/comments?post=7003"}],"version-history":[{"count":0,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/posts\/7003\/revisions"}],"wp:attachment":[{"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/media?parent=7003"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/categories?post=7003"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/tags?post=7003"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}