2010-04-26 57 views
2

可能重複:
Non-web SQL InjectionSQL注入

是否有人知道一個SQL注入漏洞,是不是在一個Web應用程序的一個很好的例子嗎?這次攻擊的用戶輸入是什麼?我正在尋找一個真正的漏洞,而不是投機。下面的圖片是推測攻擊的一個例子。

alt text http://leonardoanceschi.files.wordpress.com/2008/05/mini.jpg

+1

這款車會撞上運行應用程序的電腦嗎?我不知道這是否有保護。 /鴨 – 2010-04-26 16:39:39

+1

爲什麼你認爲網絡和非網絡應用程序之間存在差異? – 2010-04-26 16:39:47

+1

攻擊矢量是一樣的。你爲什麼要問? – 2010-04-26 16:45:52

回答

11

SQL注入是可用的只要SQL查詢從輸入產生不敏感字符的任何轉義(例如')。因此,如果您有一個桌面應用程序需要使用文本輸入字段並使用它生成sql查詢字符串,則可能會有注入攻擊矢量。

它與Web上下文無關。

+0

不幸的是,如果用戶有權訪問本地數據庫(如sqlite文件),則這不是一個漏洞。也許如果這是一個信息亭。 – rook 2010-04-26 16:44:08

+1

你能澄清一下嗎?如果用戶可以完全訪問數據庫,那麼他們可能不需要使用這種冗長的方法來「破解」數據庫,但這並不否定這樣的漏洞仍然存在的事實? – oedo 2010-04-26 16:46:37

+0

對於已經擁有數據庫管理訪問權限的用戶,什麼是sql注入漏洞?它是最薄弱環節的主要原因。我給你+1了。 – rook 2010-04-26 16:52:21

4

SQL注入在Web應用程序中更爲明顯,因爲它們是公開的,但它與它們沒有任何關係。任何時候你沒有參數化你的SQL查詢,你都面臨着注入攻擊的風險。

如果您的控制檯或WinForms應用程序需要一個用戶名並從數據庫中進行選擇以查看用戶是否存在,並且通過串聯字符串來完成SQL查詢,則具有相同的風險。始終參數化或正確地轉義您的SQL查詢!

4

嗯,我不知道這相當算作是真實的,但似乎合理的假設,一些不是完全不像這個可能比「名」其他AA場發生: