Apa artinya "* kata sandi ------------" dalam laporan kebuntuan profil?

10

Di SQL Server 2008 R2, saya mendapat beberapa laporan kebuntuan yang memiliki "* kata sandi ------------" di buffer input. Itu terlihat seperti serangan tetapi dalam kasus itu saya tidak tahu alasan atau jenis serangannya.

(log dihasilkan oleh DBA ahli bagaimana memiliki banyak pengalaman dan mengatakan kepada saya bahwa, bukan saya)

Adakah yang tahu apa itu? Terima kasih!

Contoh:

<?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
sumber

Jawaban:

12

Ini hanya berarti bahwa teks pernyataan berisi string "kata sandi" dan SQL Server "sangat membantu" telah menutupinya sebagai fitur keamanan untuk mencegah Anda melihat kata sandi orang lain.

Saya dapat mereproduksi ini sebagai berikut

CREATE TABLE T(X varchar(1000))

Koneksi 1

BEGIN TRAN

INSERT INTO T VALUES('password1') 

WAITFOR DELAY '00:01:00'

SELECT * FROM T WHERE X = 'password2'

ROLLBACK

Koneksi 2

BEGIN TRAN

INSERT INTO T VALUES('password2') 

WAITFOR DELAY '00:01:00'

SELECT * FROM T WHERE X = 'password1'

ROLLBACK

Kemudian mengambil grafik dari jejak peristiwa yang diperluas

Martin Smith
sumber
2
@DiegoJancic - Mengenai apakah ini serangan atau tidak, itu tergantung apakah Anda mengharapkan kueri yang sah mengandung string ini atau tidak. Jika Anda tidak memiliki nama objek yang berisi string ini, maka mungkin itu dapat mengindikasikan upaya injeksi SQL.
Martin Smith
Terima kasih @MartinSmith, dalam kasus saya ini bukan serangan, saya memiliki tabel pengguna dengan bidang kata sandi. Terima kasih lagi! =)
Diego Jancic
Apakah ada cara untuk menonaktifkan fitur ini?
jlb
1
@ jlb - Bukannya aku sadar. Anda dapat mengajukan permintaan di sini connect.microsoft.com/SQLServer/Feedback dan mungkin Anda akan menemukan ada beberapa cara.
Martin Smith
@ MartinSmith Telah bertanya di forum MSDN dan semua balasan menunjukkan bahwa tidak ada cara untuk menonaktifkan fungsi ini.
jlb