Que signifie «* mot de passe ------------» dans un rapport de blocage de profil?

10

Dans SQL Server 2008 R2, j'ai reçu plusieurs rapports de blocage qui ont "* mot de passe ------------" dans le tampon d'entrée. Cela ressemble à une attaque, mais dans ce cas, je ne connais pas la raison ni le type d'attaque.

(le journal a été généré par un expert DBA qui a beaucoup d'expérience et m'a dit cela, pas moi)

Est-ce que quelqu'un sait ce que c'est? Merci!

Exemple:

<?xml version="1.0"?>
<blocked-process>
  <process id="process879948" taskpriority="0" logused="0" waitresource="KEY: 5:72057602473263104 (1d69201d0ba6)" waittime="5185" ownerId="88389135" transactionname="SELECT" lasttranstarted="2012-09-25T18:11:02.507" XDES="0x1f7d2a590" lockMode="S" schedulerid="2" kpid="4552" status="suspended" spid="86" sbid="2" ecid="0" priority="0" trancount="0" lastbatchstarted="2012-09-25T18:11:02.507" lastbatchcompleted="2012-09-25T18:11:02.507" lastattention="2012-09-25T18:07:35.740" clientapp=".Net SqlClient Data Provider" hostname="IP-xxxxxxxx" hostpid="4868" loginname="sa" isolationlevel="read committed (2)" xactid="88389135" currentdb="1" lockTimeout="4294967295" clientoption1="671088672" clientoption2="128056">
    <executionStack>
      <frame line="14" stmtstart="374" stmtend="764" sqlhandle="0x03000500dac2967f208e4000a19d00000000000000000000"/>
      <frame line="1" stmtstart="44" sqlhandle="0x02000000632f7e131f79ec7312284505961e537a61b81be7"/>
      <frame line="1" sqlhandle="0x000000000000000000000000000000000000000000000000"/>
    </executionStack>
    <inputbuf>

*password---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------   </inputbuf>
  </process>
</blocked-process>
Diego Jancic
la source

Réponses:

12

Cela signifie simplement que le texte de l'instruction contenait la chaîne "mot de passe" et que SQL Server l'a "masquée" comme une fonction de sécurité pour vous empêcher de voir le mot de passe de quelqu'un d'autre.

J'ai pu reproduire ceci comme suit

CREATE TABLE T(X varchar(1000))

Connexion 1

BEGIN TRAN

INSERT INTO T VALUES('password1') 

WAITFOR DELAY '00:01:00'

SELECT * FROM T WHERE X = 'password2'

ROLLBACK

Connexion 2

BEGIN TRAN

INSERT INTO T VALUES('password2') 

WAITFOR DELAY '00:01:00'

SELECT * FROM T WHERE X = 'password1'

ROLLBACK

Récupération du graphique à partir de la trace d'événements étendue

Martin Smith
la source
2
@DiegoJancic - Quant à savoir s'il s'agit d'une attaque ou non, cela dépend si vous vous attendez à ce que les requêtes légitimes contiennent ou non cette chaîne. Si vous n'avez aucun nom d'objet contenant cette chaîne, cela pourrait peut-être indiquer une tentative d'injection SQL.
Martin Smith
Merci @MartinSmith, dans mon cas ce n'est pas une attaque, j'ai une table d'utilisateurs avec un champ de mot de passe. Merci encore! =)
Diego Jancic
Existe-t-il un moyen de désactiver cette fonctionnalité?
jlb
1
@jlb - Pas que je sache. Vous pouvez faire une demande ici connect.microsoft.com/SQLServer/Feedback et vous découvrirez peut-être qu'il existe un moyen.
Martin Smith
@MartinSmith ont demandé dans les forums MSDN et toutes les réponses indiquent qu'il n'y a aucun moyen de désactiver cette fonctionnalité.
jlb