go backarticles

Articles of SQLschool.gr Team

How to find SQL Logins with blank password

Antonios Chatzipavlis

Παρόλο που κανένας σώφρων επαγγελματίας δεν αφήνει sql logins με blank password δυστυχώς υπάρχουν κάποιοι που κάνουν κάτι τέτοιο.

Όταν με φωνάζουν να κοιτάξω έναν SQL Server τρέχω διάφορα queries για να μπορέσω να καταλάβω σε τι θα μπλέξω και τι ανακόντα θα βρω μπροστά μου.

Ένα από αυτά που τρέχω είναι το παρακάτω το οποίο μου δείχνει αν κάποιο sql login έχει blank password και αν είναι ενεργοποιημένο ή όχι.

Σε αυτό κάνω χρήση μιας όσο και τόσο γνωστής (δυστυχώς) function της PWDCOMPARE

Απλά τρέξετε το και κάντε κάτι για αυτό γιατί είναι αμαρτία να είστε βορά σε κάθε κακόβουλο. Επίσης αυτό είναι κάτι που αποτρέπεται by default με το enforce password policy και δεν μπορώ να καταλάβω γιατί κάποιος το βγάζει σε παραγωγικό περιβάλλον.


select    name
    ,    is_disabled
    ,    case PWDCOMPARE('',password_hash)
        when 0 then 'No'
        when 1 then 'Yes'
        end as has_blank_password
from sys.sql_logins

name                                     is_disabled has_blank_password
---------------------------------------- ----------- ------------------
sa                                       0           No
##MS_PolicyTsqlExecutionLogin##          1           No
u1                                       0           No
##MS_PolicyEventProcessingLogin##        1           No
mitsos                                   0           Yes

Relative Articles

Leave your comment

Login with your SQLschool.gr account if you want to comment on this article.