1

此 SQL 代码易受攻击,但我无法获得正确的代码。

这是 SQL 查询:

UPDATE phpbb_users SET user_email = 'bob@seed.com', user_icq = '', user_website = '',
user_occ = '', user_from = 'asdasd', user_interests = 'something', user_sig = '', 
user_sig_bbcode_uid = '', user_viewemail = 0, user_aim = '', user_yim = 'asdad', user_msnm = 
'', user_attachsig = 1, user_allowsmile = 1, user_allowhtml = 0, user_allowbbcode = 1, 
user_allow_viewonline = 1, user_notify = 0, user_notify_pm = 1, user_popup_pm = 1, 
user_timezone = 0, user_dateformat = 'D M d, Y g:i a', user_lang = 'english', user_style = 1, 
user_active = 1, user_actkey = '' WHERE user_id = 4

我可以把一些东西放在兴趣中,例如,可以用单引号转义(魔术引号等都在机器上关闭。这是一台用于学习的测试机器)。

因此,例如,如果我将这个值放入兴趣字段:

 tacos' , user_website = 'www.google.com

它将成功将兴趣更新为“tacos”,并将网站更新为“www.google.com”。不过,这根本不是很有趣……

这有点有趣:

 tacos', user_id = '100

并且 user_id 成功地为用户设置为 100,而不是 4。仍然不是很有趣......

我希望能够修改正在发生这种情况的 user_id - 任何可能的方式?我一直在尝试做一些事情,例如

 tacos' WHERE user_id = 2; --

但这些都行不通。

知道如何更改 user_id 字段吗?

编辑:我自己得到了答案。注释运算符是#。我只是浪费了一个小时。我希望这对某人有所帮助。

4

0 回答 0