2011-06-29 28 views
3

我目前使用c語言來處理http事件,並且我需要用mysql做SQL操作,然後如何防止SQL注入,是否有任何c庫,謝謝?如何防止c語言中的SQL注入?

+4

歡迎來到堆棧溢出!請務必通過點擊旁邊的綠色複選標記來「接受」對您發現的問題的正確答案;否則,人們將不願意繼續爲您提供答案。 –

+0

8問題:0選定的答案:1浪費時間---是爲什麼你在'thank you'後面有問號? – vol7ron

+1

你現在*連接MySQL的方式*該庫*對參數化查詢*有任何支持嗎? (增加安全性的一種巨大方式是使用Scala,Ruby,Python,C#,Java等語言 - 您無需擔心緩衝區溢出漏洞[或事故] ;-) – 2011-06-29 02:48:59

回答

2

可以防止SQL注入的方式(或shell轉義注射液等)未通過未加引號的文字字符串到把一些字符作爲特殊的接口。在將字符串數據作爲更大的「命令字符串」的一部分進行包含之前,需要將字符串數據轉換爲安全的引用形式,該命令字符串將由SQL數據庫,shell,外部命令,接受URI字符串的API解釋等。

+0

更具體一些:不要編寫自己的SQL轉義例程。使用'mysql_real_escape_string()'。 http://stackoverflow.com/questions/7839734/efficiently-escaping-quotes-in-c-before-passing-to-mysql-query/7840304#7840304 – BraveNewCurrency

3
+1

有趣的閱讀。但是,考慮在回覆中添加更多內容,然後只是一個鏈接 - 簡短的除外,引用,摘要或經驗會使答案更好。現在,它可能只是一個評論。此外,任何事情的C特定的MySQL綁定? – 2011-06-29 02:47:22