您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關如何從代碼角度分析SQL注入,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
在新手入門web安全的時候,sql注入往往是最先上手的一個漏洞,它也是危害相當大的一個漏洞,存在此漏洞的話,將有被脫褲的風險。
漏洞講解
如圖是一個正常的登陸框
點擊登陸時,抓包
這時,直接將其丟入sqlmap中,進行注入檢測
可以看到直接爆出了系統環境、數據庫版本等信息
這里先補充一下前面所用到的代碼
login.php
logins.php
代碼中直接接收了傳來的參數,然后直接帶入查詢數據庫,沒有進行任何的過濾,所以就導致了sql注入的產生。
簡單修復
這里,只需要將傳入的參數進行過濾,就可以了,過濾的方法有很多,這里我使用addslashes()函數來進行過濾。
首先增加一個過濾的函數
然后,在傳入的時候,對變量進行過濾
此時再次sqlmap跑一下
已經無法注入了
拓展
這里需要注意一個問題,addslashes()函數也是有繞過的方法,所以一定要注意以下問題
1.一定不要使用gbk,會存在寬字節注入
2.在編碼解碼之后,一定要再次進行過濾
3.在使用這個函數之后,一定不要再使用stripslashes()函數
4.如果還要做字符串的替換的話,一定要注意其嚴謹性
上述就是小編為大家分享的如何從代碼角度分析SQL注入了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。