1. 怎麼判斷一個網站是否有sql注入
許多網站程序在編寫時,沒有對用戶輸入數據的合法性進行判斷,使應用程序存在安全隱患。用戶可以提交一段資料庫查詢代碼,根據程序返回的結果,獲得某些想得知的數據,這就是所謂的SQL Injection,即SQL注入。如何判斷網站是否存在POST注入呢!請看以下步驟操作做。
POST注入操作介紹:
1.POST注入一般發生在表單數據傳輸時、抓取POST提交的數據進行SQL語句測試
POST注入操作流程:
比如抓取的POST數據為:userName=admin&password=admin
測試諸如語句填寫:userName=admin&password='admin 1=1--
像這樣userName 參數後面加一些SQL語句(注入測試語句)進行POST數據注入測試即可。
2. 如何測試一個網站是不是可以被SQL注入
SQL注入通過網頁對網站資料庫進行修改。它能夠直接在資料庫中添加具有管理員許可權的用戶,從而最終獲得系統管理員許可權。黑客可以利用獲得的管理員許可權任意獲得網站上的文件或者在網頁上加掛木馬和各種惡意程序,對網站和訪問該網站的網友都帶來巨大危害。
防禦SQL注入有妙法
第一步:很多新手從網上下載SQL通用防注入系統的程序,在需要防範注入的頁面頭部用來防止別人進行手動注入測試。
可是如果通過SQL注入分析器就可輕松跳過防注入系統並自動分析其注入點。然後只需要幾分鍾,你的管理員賬號及密碼就會被分析出來。
第二步:對於注入分析器的防範,通過實驗,發現了一種簡單有效的防範方法。首先我們要知道SQL注入分析器是如何工作的。在操作過程中,發現軟體並不是沖著「admin」管理員賬號去的,而是沖著許可權(如flag=1)去的。這樣一來,無論你的管理員賬號怎麼變都無法逃過檢測。
第三步:既然無法逃過檢測,那我們就做兩個賬號,一個是普通的管理員賬號,一個是防止注入的賬號,如果找一個許可權最大的賬號製造假象,吸引軟體的檢測,而這個賬號里的內容是大於千字以上的中文字元,就會迫使軟體對這個賬號進行分析的時候進入全負荷狀態甚至資源耗盡而死機。下面我們就來修改資料庫吧。
1.對表結構進行修改。將管理員的賬號欄位的數據類型進行修改,文本型改成最大欄位255(其實也夠了,如果還想做得再大點,可以選擇備注型),密碼的欄位也進行相同設置。
2.對表進行修改。設置管理員許可權的賬號放在ID1,並輸入大量中文字元(最好大於100個字)。
3.把真正的管理員密碼放在ID2後的任何一個位置(如放在ID549上)。
我們通過上面的三步完成了對資料庫的修改。
另外要明白您做的ID1賬號其實也是真正有許可權的賬號,現在計算機處理速度那麼快,要是遇上個一定要將它算出來的軟體,這也是不安全的。只要在管理員登錄的頁面文件中寫入字元限制就行了,就算對方使用這個有上千字元的賬號密碼也會被擋住的,而真正的密碼則可以不受限制。
3. 如何找一個可以sql注入的網站
...不是所有網站都有注入漏洞的,現在很多同學都學會了使用SQL注入
各位站長們也都學會了堵漏洞,所以現在並不容易找到漏洞網站,並不是那些工具不好,而是真的沒漏洞,這也是沒辦法的事,再好的工具也找不到
你可以用那個Google搜索「inurl:asp?」,搜索結果里會有很多動態的asp網站,但是前幾頁的網站都被無數人利用無數回了,應該早就沒有漏洞了,所以你可以搜索「北京烤鴨inurl:asp?」,其中「北京烤鴨」可以換成很多東西,你就可以搜到很多沒被黑過的網站
這樣你就可以拿啊D練練手了
不過別搞破壞哦 那是不對地~~
4. 如何判斷資料庫被SQL注入漏洞
SQL注入一般會在http://xxx.xxx.xxx/abc.asp?id=XX這樣等帶有參數的ASP動態網頁中,有些動態網頁中可能只有一個參數,有些可能有n個參數;有些參數是整型,有些參數是字元串型。只要是帶有參數的動態網頁訪問了資料庫就有可能存在SQL注入。
我們首選要修改瀏覽器的設置,以便更好的了解動態網頁參數里包含的信息。以IE瀏覽器為例,把IE菜單-工具-Internet選項-高級-顯示友好HTTP錯誤信息前面的勾去掉。
下面以http://xxx.xxx.xxx/abc.asp?p=YY為例進行分析,「YY」可能是整型,也有可能是字元串。
1、整型參數的判斷
當輸入的參數YY為整型時,通常abc.asp中SQL語句原貌大致如下:
select * from 表名 where 欄位=YY,所以可以用以下步驟測試SQL注入是否存在。
(1)http://xxx.xxx.xxx/abc.asp?p=YY and 1=2, abc.asp運行異常;
(2)http://xxx.xxx.xxx/abc.asp?p=YY』(附加一個單引號),此時abc.ASP中的SQL語句變成了select * from 表名 where 欄位=YY』,abc.asp運行異常;
(3)http://xxx.xxx.xxx/abc.asp?p=YY and 1=1, abc.asp運行正常,而且與http://xxx.xxx.xxx/abc.asp?p=YY運行結果相同;
如果這三個方面全部滿足,abc.asp中一定存在SQL注入漏洞!
2、字元串型參數的判斷
當輸入的參數YY為字元串時,通常abc.asp中SQL語句原貌大致如下:
select * from 表名 where 欄位=』YY』,所以可以用以下步驟測試SQL注入是否存在。
(1)http://xxx.xxx.xxx/abc.asp?p=YY&nb … 39;1』=』2′, abc.asp運行異常;
(2)http://xxx.xxx.xxx/abc.asp?p=YY&nb … 39;1』=』1′, abc.asp運行正常,而且與http://xxx.xxx.xxx/abc.asp?p=YY運行結果相同;
(3)http://xxx.xxx.xxx/abc.asp?p=YY』(附加一個單引號),此時abc.ASP中的SQL語句變成了select * from 表名 where 欄位=YY』,abc.asp運行異常;
如果這三個方面全部滿足,abc.asp中一定存在SQL注入漏洞!
3、字元被過濾的判斷
有安全意識的ASP程序員會過濾掉單引號等字元,以防止SQL注入。這種情況可以用下面幾種方法嘗試。
(1)ASCII方法:所有的輸入部分或全部字元的ASCII代碼,如U = CRH(85),一個= CRH(97),等等。
(2)UNICODE方法:在IIS UNICODE字元集實現國際化,我們可以在輸入字元串即輸入UNICODE字元串。如+ = % 2 b,空格= % 20,等;
(1)混合設置方法:大小是大小寫不敏感的,因為根據當時和過濾器的程序員通常要麼過濾所有大寫字母的字元串,或過濾所有小寫的字元串,大小寫混合往往會被忽略。如用SelecT代替select,SELECT等。
5. SQL注入一般適用於哪種網站
SQL注入適用於任何有SQL漏洞的網站,而SQL漏洞的發現需要用掃描工具掃描出來。
SQL注入是利用現有應用程序,將(惡意)的SQL命令注入到後台資料庫引擎執行的能力,它可以通過在Web表單中輸入(惡意)SQL語句得到一個存在安全漏洞的網站上的資料庫,而不是按照設計者意圖去執行SQL語句。
SQL注入一般在網站中可以輸入的文本框中進行。
比如:很多網站主頁都有搜索文本框,而我們就可以利用這個文本框進行與資料庫的交互。
(5)如何查看網站可以sql注入擴展閱讀:
SQL可以獨立完成資料庫生命周期中的全部活動,包括定義關系模式、錄入數據、建立資料庫、査詢、更新、維護、資料庫重構、資料庫安全性控制等一系列操作,這就為資料庫應用系統開發提供了良好的環境,在資料庫投入運行後,還可根據需要隨時逐步修改模式,且不影響資料庫的運行,從而使系統具有良好的可擴充性。
SQL功能極強,但由於設計巧妙,語言十分簡潔,完成數據定義、數據操縱、數據控制的核心功能只用了9個動詞: CREATE、 ALTER、DROP、 SELECT、 INSERT、 UPDATE、 DELETE、GRANT、 REVOKE。且SQL語言語法簡單,接近英語口語,因此容易學習,也容易使用。
參考資料來源:網路-sql
6. 怎麼才知道一個網站是否有SQL注入點啊!(不用工具阿)
我遇到的SQL注入會在很多的內容裡面加上一句引用js的話
通過軟體或者查看SQL數據,看看是不是變了。
或者頁面的樣式會變化。