我使用shell脚本与MySQL数据库通信。MySQL支持将查询指定为外壳参数,如下所示:但是,如果我有一个参数,我想在查询中使用它,我如何保护自己免受注入攻击呢一种天真的方法是将变量值粘贴到请求中,但这不是很安全:
mysql my_db -B -N -e "select id from Table where name='$PARAM
基本上,我们拥有一个托管在这个驱动程序上的服务器,并且它正在运行MYSQL。我们正在使用coldfusion作为我们选择的语言。我们有一个GET参数?lang=,并将字符'\‘注入其中,提示错误:You have an error in your SQL syntax; check the manual that corresponds to yourMySQL server version for the right syntax to use near和任何其他字符都不会导致此错误。有人能告诉我攻击者如何接近这个参数的sql<
,如果我超过了年龄,只需为年龄筛选,如果我为两个参数传递名称和城市过滤器SELECT * into #tmp From Users WHERE active = 1 SELECT * into #tmp From #tmp WHEREname = @name SELECT * into #tmp From #tmp WHERE age = @age
if(@cit
我知道以前可能有人问过这个问题,但我正试图保护我的搜索域和下拉列表不受MySQL注入的影响,并且在将mysql_real_escape_string集成到我的PHP中时遇到了麻烦。我目前正在通过2个下拉列表中的关键字或用户键入引用的自由形式输入来过滤我的搜索结果。我在下面注释了我试图添加转义字符串的地方,但它破坏了我的搜索功能。有人能给我一些建议吗?谢谢你的帮助 // SEARCH FROM TEXT INPUT
mysql</em