<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>https://jackxiang.com/index.php</link> 
<description><![CDATA[赢在IT，Playin' with IT,Focus on Killer Application,Marketing Meets Technology.]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></copyright>
<item>
<link>https://jackxiang.com/post//</link>
<title><![CDATA[[转载文章]SQL Injection with MySQL]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[WEB2.0]]></category>
<pubDate>Wed, 02 Dec 2009 01:34:53 +0000</pubDate> 
<guid>https://jackxiang.com/post//</guid> 
<description>
<![CDATA[ 
	SQL Injection with MySQL，安全天使的一篇文章，写得很有深度，值得阅读和借鉴：<br/>http://www.4ngel.net/article/36.htm<br/><br/><br/>①SELECT * FROM article WHERE articleid=&#039;$id&#039;<br/>②SELECT * FROM article WHERE articleid=$id <br/><br/>　　两种写法在各种程序中都很普遍，但安全性是不同的，第一句由于把变量$id放在一对单引号中，这样使得我们所提交的变量都变成了字符串，即使包含了正确的SQL语句，也不会正常执行，而第二句不同，由于没有把变量放进单引号中，那我们所提交的一切，只要包含空格，那空格后的变量都会作为SQL语句执行，我们针对两个句子分别提交两个成功注入的畸形语句，来看看不同之处。<br/><br/>① 指定变量$id为：<br/>1&#039; and 1=2 union select * from user where userid=1/*<br/>此时整个SQL语句变为：<br/>SELECT * FROM article WHERE articleid=&#039;1&#039; and 1=2 union select * from user where userid=1/*&#039;<br/><br/>②指定变量$id为：<br/>1 and 1=2 union select * from user where userid=1<br/>此时整个SQL语句变为：<br/>SELECT * FROM article WHERE articleid=1 and 1=2 union select * from user where userid=1<br/> <br/><br/>　　看出来了吗？由于第一句有单引号，我们必须先闭合前面的单引号，这样才能使后面的语句作为SQL执行，并要注释掉后面原SQL语句中的后面的单引号，这样才可以成功注入，如果php.ini中magic_quotes_gpc设置为on或者变量前使用了addslashes()函数，我们的攻击就会化为乌有，但第二句没有用引号包含变量，那我们也不用考虑去闭合、注释，直接提交就OK了。<br/>　　大家看到一些文章给出的语句中没有包含单引号例如pinkeyes的《php注入实例》中给出的那句SQL语句，是没有包含引号的，大家不要认为真的可以不用引号注入，仔细看看PHPBB的代码，就可以发现，那个$forum_id所在的SQL语句是这样写的： <br/><br/>$sql = &quot;SELECT *<br/>FROM &quot; . FORUMS_TABLE . &quot;<br/>WHERE forum_id = $forum_id&quot;;<br/> <br/><br/>　　由于没有用单引号包含变量，才给pinkeyes这个家伙有机可乘，所以大家在写PHP程序的时候，记得用单引号把变量包含起来。当然，必要的安全措施是必不可少的。<br/>
]]>
</description>
</item><item>
<link>https://jackxiang.com/post//#blogcomment</link>
<title><![CDATA[[评论] [转载文章]SQL Injection with MySQL]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>https://jackxiang.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>