我見過只要在瀏覽器的地址欄中輸入某些sql行就可以進入網站的sql數據庫。這甚至有可能嗎?不應該地址欄只重定向我們的網站?那個地址欄怎麼可以接受sql語法?我對瀏覽器本身非常熟悉,但令我着迷的是地址欄提供了漏洞。「手動」SQL注入 - 它是如何工作的?
回答
你打算對這個問題的答案是好的還是邪惡的?
在任何情況下,假設你在表單
http://mysite.com/dosomething?email= $ EMAIL
有一個URL和你有一些代碼,執行查詢,看起來像這樣:
SELECT fieldlist
FROM table
WHERE field = '$EMAIL';
然後this page解釋了某人如何操作EMAIL的內容以執行基本上任意的查詢:
這怎麼可能?
應用程序正在執行從URL中讀取任意SQL。認爲http://example.com/search.php?query=SELECT%20...
。
不宜地址欄只有我們重定向到網站?
這正是它在做什麼。該漏洞位於該網站對該URL的處理中。
怎麼這麼地址欄可以接受的SQL語法?
SQL查詢是文本,這是一個URL的一部分。地址欄不知道(或關心)你的URL包含SQL。
我同意。如果SQL數據可以通過GET參數進行更改,則在這裏播放時會遇到更大的問題。大多數SQL注入攻擊甚至在應用程序級別都沒有發生,除非這些perps是業餘愛好者。 – FredTheWebGuy
有趣的答案,謝謝! –
SQL注入是代碼注入技術,用來攻擊驅動的應用程序的數據,其中惡意的SQL語句被插入到一個輸入字段以供執行(例如轉儲數據庫內容給攻擊者)。例如,假設您有一個textField接收一個值,然後將該值分配給變量username
,然後您有一個statement
接收該值,並將該值連接到代表您的查詢的字符串,如下所示:
statement = "SELECT * FROM users WHERE name = '" + userName + "';"
讓我們說,要傳遞它的價值的東西這樣' or '1'='1
這個例子可以用來強制有效的用戶名的選擇,因爲「1」 =「1」的評價總是正確的。這只是一個例子!查詢this網站以瞭解更多關於它的信息
- 1. SQL注入嘗試,它是如何工作的
- 2. Jersey - 注入的@Context註釋。它是如何工作的?
- 3. 如何SQL注入工作,我怎麼防止它
- 4. 依賴注入是如何工作的?
- 5. DVWA SQL注入不工作
- 6. Animate.css - 它是如何工作的?如何使其自動工作?
- 7. AngularJS手動注入
- 8. 如何在我的網站上手動嘗試SQL注入?
- 9. Codeigniter CSRF - 它是如何工作的
- 10. SQL更新語句不是從Java工作,但手動工作?
- 11. 。它是如何工作的?
- 12. 如何手動實現依賴注入?
- 13. Regasm and Heat - 它是如何工作的
- 14. 我的SQL注入似乎不工作?
- 15. Ignite - 它是如何工作的?
- 16. 什麼是SQL中的binary_checksum?它是如何工作的?
- 17. 它是如何工作的whatsapp
- 18. 依類型使用泛型的依賴注入 - 它是如何工作的?
- 19. SqlDependency,它是如何工作的?
- 20. Facebook註冊 - 如何使它工作?
- 21. fsockopen()它是如何工作的?
- 22. jQuery UI droppable - 它是如何工作的?
- 23. CSS - 它是如何工作
- 24. OpenWrap:test-wrap,它是如何工作的?
- 25. 關於注射方法:它是如何工作的?
- 26. Angular注射劑2.它是如何工作的?
- 27. Spring + hibernate和@Transactionl註解,它是如何工作的?
- 28. PingFederate單一註銷 - 它是如何工作的?
- 29. AWS :: CloudFormation :: Init它是如何工作的?
- 30. Spring + Hibernate + jpa它是如何工作的?
僅供教育之用,不用擔心。謝謝您的回答! –