Mật khẩu * * ------------ Có nghĩa là gì trong một báo cáo bế tắc hồ sơ?


10

Trong SQL Server 2008 R2, tôi đã nhận được một số báo cáo khóa chết có "* mật khẩu ------------" trong bộ đệm đầu vào. Trông giống như một cuộc tấn công nhưng trong trường hợp đó tôi không biết lý do hoặc loại tấn công.

(nhật ký được tạo bởi một chuyên gia DBA có bao nhiêu kinh nghiệm và nói với tôi rằng, không phải tôi)

Có ai biết nó là gì? Cảm ơn!

Thí dụ:

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

Câu trả lời:


12

Điều đó chỉ có nghĩa là văn bản của câu lệnh chứa chuỗi "mật khẩu" và SQL Server "một cách hữu ích" đã che dấu nó như một tính năng bảo mật để ngăn bạn nhìn thấy mật khẩu của người khác.

Tôi đã có thể tái tạo điều này như sau

CREATE TABLE T(X varchar(1000))

Kết nối 1

BEGIN TRAN

INSERT INTO T VALUES('password1') 

WAITFOR DELAY '00:01:00'

SELECT * FROM T WHERE X = 'password2'

ROLLBACK

Kết nối 2

BEGIN TRAN

INSERT INTO T VALUES('password2') 

WAITFOR DELAY '00:01:00'

SELECT * FROM T WHERE X = 'password1'

ROLLBACK

Sau đó lấy biểu đồ từ dấu vết sự kiện mở rộng


2
@DiegoJancic - Còn về việc đây có phải là một cuộc tấn công hay không thì tùy thuộc vào việc bạn có mong đợi các truy vấn hợp pháp có chứa chuỗi này hay không. Nếu bạn không có bất kỳ tên đối tượng nào chứa chuỗi này thì có lẽ nó có thể chỉ ra một nỗ lực tiêm SQL.
Martin Smith

Cảm ơn @MartinSmith, trong trường hợp của tôi, nó không tấn công, tôi có một bảng người dùng với trường mật khẩu. Cảm ơn một lần nữa! =)
Diego Jancic

Có cách nào để vô hiệu hóa tính năng này?
jlb

1
@jlb - Không phải tôi biết. Bạn có thể đưa ra một yêu cầu ở đây connect.microsoft.com/QueryServer/Feedback và có thể bạn sẽ tìm ra cách nào đó.
Martin Smith

@MartinSmith Đã hỏi trong diễn đàn MSDN và tất cả các câu trả lời chỉ ra rằng không có cách nào để vô hiệu hóa chức năng này.
jlb
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.