SQL注入

2022-10-08 18:30:12 字數 1049 閱讀 2508

昨天開始接觸到ctf、網路安全等知識,對網路安全方面有了初步的了解。

今天試一下攻擊之前自己做的winform測試程式。

登入介面:

登入的主要**:

private

void button1_click(object

sender, eventargs e)

sqlconnection conn =conndb.dbconnection();

conn.open();

string sql = @"

select * from dnuser where account = '' and password = ''";

sql = string

.format(sql, textbox1.text, textbox2.text);

sqlcommand cmd = new

sqlcommand(sql, conn);

string account = (string

)cmd.executescalar();

if (textbox1.text ==account)

else

}

sql語句是動態拼接的,沒有識別輸入字元的格式,也沒有過濾單引號、括號等特殊字元,這就帶來了安全隱患。

開始攻擊:

在賬號欄輸入以下語句,點選登入,就可以往資料庫插入一條資料。

查詢資料庫,發現多了一條記錄。

接下來就可以用賬號為3,密碼為3的賬戶登入系統了。

SQL注入(三) sql注入 bugku

原理 mysql 在使用 gbk 編碼的時候,會認為兩個字元為乙個漢字,例如 aa 5c 就是乙個 漢字 前乙個 ascii碼大於 128 才能到漢字的範圍 我們在過濾 的時候,往往利用的思 路是將 轉換為 換的函式或者思路會在每一關遇到的時候介紹 因此我們在此想辦法將 前面新增的 除掉,一般有兩種...

SQL注入 報錯注入

乙個帶get引數的 並且不從資料庫返回資料,但存在報錯資訊 檢視字段情況 報錯注入語句格式 and 1 2 union select1,2,3 from select count concat floor rand 0 2 sql語句 a from information schema.tables...

SQL注入 報錯注入

sql注入基礎 盲注 用於注入結果無回顯但錯誤資訊有輸出的情況 floor函式 返回小於等於某值的整數,例如floor 1 則返回1,floor 1.9 也返回1 rand函式 生成隨機數.可指定seed,指定後每次生成的數都一樣即偽隨機,不指定seed則每次生成的隨機數都不一樣.通過floor和r...